NOVO! VPS baseado em EPYC + NVMe

Entrar
+1 (855) 311-1555

Como fazer o balanceamento de carga de um site com NGINX e hospedagem VPS em vários locais

5 min de leitura - 15 de maio de 2025

hero image

Table of contents

  • Como fazer o balanceamento de carga de um site com o NGINX e VPS de várias localizações
  • Etapa 1: implantar servidores VPS em diferentes regiões
  • Passo 2: Configurar um VPS para atuar como um equilibrador de carga
  • Etapa 3: abordando o ponto único de falha
  • O problema
  • Soluções
  • Opção 1: Alta disponibilidade com um IP flutuante
  • Opção 2: balanceamento de carga no nível do DNS
  • Opção 3: IP Anycast (avançado)
  • Etapa 4: verificações de integridade e lógica de failover
  • Etapa 5: apontar seu domínio para o balanceador de carga
  • Opcional: Roteamento com reconhecimento de geolocalização
  • \+---------------------+
  • Considerações finais

Share

Distribua o tráfego do site entre servidores VPS em vários locais usando o NGINX. Saiba como configurar o balanceamento de carga, evitar pontos únicos de falha e melhorar o desempenho.

Como fazer o balanceamento de carga de um site com o NGINX e VPS de várias localizações

O balanceamento de carga do seu site em várias instâncias de VPS em diferentes localizações geográficas pode melhorar o desempenho, reduzir a latência e aumentar a redundância. Ao usar o NGINX como proxy reverso, é possível distribuir o tráfego entre servidores back-end, cada um hospedando uma cópia do seu site ou aplicativo.

Neste guia, vamos percorrer o processo de configuração, destacar as práticas recomendadas e abordar a armadilha comum de introduzir um único ponto de falha com o proxy reverso - juntamente com soluções para atenuá-lo.


Etapa 1: implantar servidores VPS em diferentes regiões

Comece por implementar instâncias VPS em várias localizações geográficas, por exemplo, uma em Nova Iorque, uma em Frankfurt e uma em Singapura. Cada VPS deve executar:

  • Uma cópia do seu site ou aplicativo
  • NGINX (se também for usado como um servidor Web local)
  • Acesso SSH para configuração e manutenção

Garantir que o conteúdo e as configurações sejam consistentes em todos os servidores.


Passo 2: Configurar um VPS para atuar como um equilibrador de carga

Escolha um VPS para atuar como proxy reverso e equilibrador de carga, ou provisione um novo para este fim. Esse servidor encaminhará o tráfego para os nós VPS de back-end.

Use uma configuração básica de proxy reverso do NGINX que define um grupo upstream e faz proxy de solicitações de entrada para os nós de back-end.

Aqui está um exemplo de configuração do NGINX para seu proxy

http { upstream backend_servers { server vps1.example.com; server vps2.example.com; server vps3.example.com; } server { listen 80; location / { proxy_pass http://backend_servers; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } }

Etapa 3: abordando o ponto único de falha

O problema

O VPS que hospeda o proxy reverso NGINX se torna um ponto único de falha. Se esse servidor cair, todo o site ficará indisponível, mesmo que os servidores de back-end ainda estejam em execução.

Soluções

Opção 1: Alta disponibilidade com um IP flutuante

Use ferramentas como Keepalived ou Pacemaker com VRRP para criar um IP flutuante entre dois ou mais nós NGINX. Se um deles falhar, o IP muda automaticamente para outro.

Opção 2: balanceamento de carga no nível do DNS

Execute vários nós do balanceador de carga NGINX e use DNS round-robin ou GeoDNS (por exemplo, AWS Route 53, Cloudflare Load Balancing) para distribuir o tráfego entre eles.

Opção 3: IP Anycast (avançado)

Anuncie o mesmo endereço IP de várias regiões geográficas usando BGP e Anycast. O tráfego é automaticamente encaminhado para o nó mais próximo com base na localização do utilizador.

Dica: A combinação do roteamento geográfico baseado em DNS com proxies NGINX altamente disponíveis fornece a melhor cobertura e resiliência.


Etapa 4: verificações de integridade e lógica de failover

Embora o NGINX Open Source não ofereça suporte nativo a verificações de integridade ativas, ele interromperá o roteamento para um nó com falha após erros de conexão. Para verificações de integridade mais avançadas:

  • Use o NGINX Plus
  • Ou crie monitoramento externo e lógica de failover com cron + curl + recargas de configuração

Etapa 5: apontar seu domínio para o balanceador de carga

Atualize seus registros DNS para apontar para o endereço IP do seu proxy reverso NGINX (ou IP flutuante se estiver usando HA). Se você usar vários proxies, configure seu provedor de DNS para resolução com balanceamento de carga ou com reconhecimento geográfico.


Opcional: Roteamento com reconhecimento de geolocalização

O NGINX em si não lida com roteamento baseado em geolocalização, mas você pode emparelhá-lo com:

  • GeoDNS: Usar um provedor DNS que roteia os usuários para o servidor mais próximo
  • IPs Anycast: Distribuir o mesmo IP a partir de vários centros de dados, permitindo a otimização do encaminhamento global

Pedido do utilizador | v +---------------------+ | GeoDNS / Load-aware | | Camada de encaminhamento DNS | +---------------------+ | v +----------------------+ | Proxy NGINX regional | | (HA ou IP Anycast) | +----------------------+ | v +---------------------+ | Nós de backend VPS |

+---------------------+

Considerações finais

Usar o NGINX para balancear a carga em vários servidores VPS ajuda a escalar globalmente e reduzir a latência. Mas lembre-se: o proxy reverso deve estar altamente disponível ou se tornará uma responsabilidade.

Para eliminar pontos únicos de falha, considere a distribuição de carga baseada em DNS, IPs flutuantes ou rede Anycast. Com um planeamento cuidadoso, a sua configuração de VPS multi-localização pode fornecer um desempenho rápido e tolerante a falhas em escala.

Este guia é apropriado apenas para um front-end da Web e não abrange conexões com um banco de dados e os problemas e soluções de distribuição para alta disponibilidade. Falaremos sobre isso num artigo posterior...

Blogue

Em destaque esta semana

Mais artigos
Como fazer o balanceamento de carga de um site com NGINX e hospedagem VPS em vários locais

Como fazer o balanceamento de carga de um site com NGINX e hospedagem VPS em vários locais

Distribua o tráfego do site entre servidores VPS em vários locais usando o NGINX. Saiba como configurar o balanceamento de carga, evitar pontos únicos de falha e melhorar o desempenho.

5 min de leitura - 15 de maio de 2025

Um guia para o alojamento de inferência de IA em Servidores Dedicados e VPS

5 min de leitura - 13 de maio de 2025

Mais artigos