Como configurar o nginx como um balanceador de carga com exemplo
- 3426
- 444
- Leroy Lebsack
Nginx é um software popular de servidor web de código aberto que também pode ser usado como um balanceador de carga. O balanceamento de carga é uma técnica que distribui o tráfego recebido em vários servidores para melhorar o desempenho, aumentar a disponibilidade e evitar sobrecarregar qualquer servidor único. Neste artigo, discutiremos como configurar o nginx como um balanceador de carga com um exemplo.
Para configurar o Nginx como um balanceador de carga, exigiu as seguintes etapas:
- Instale o Nginx Web Server
- Configure o upstream e adicione todos os nós de servidores de back -end
- Configurar proxy_pass Localização com o upstream
- Reinicie o servidor nginx para aplicar alterações
- Teste a configuração do balanceador de carga nginx
Vamos seguir as etapas uma a uma para completar a configuração do NGINX para atuar como um balanceador de carga.
Etapa 1: Instale o nginx
A primeira etapa é instalar o nginx no servidor que atuará como o balanceador de carga. O NGINX pode ser instalado na maioria das distribuições Linux usando o gerenciador de pacotes. Por exemplo, no Ubuntu, você pode executar o seguinte comando:
Atualização de sudo apt-get
sudo apt-get install nginx
Nos sistemas baseados em RHEL, você pode usar o seguinte comando para instalar o nginx:
sudo yum install nginx
O sistema moderno baseado em RHEL usa o DNF Package Manager.
Etapa 2: Configurar servidores upstream
O próximo passo é definir os servidores que receberão tráfego do balanceador de carga. Esses servidores são conhecidos como servidores upstream. Você pode defini -los no arquivo de configuração nginx /etc/nginx/nginx.conf. Abra o arquivo em um editor de texto e adicione o seguinte código:
http upstream myApp servidor 192.168.10.201; Servidor 192.168.10.202;123456 | http upstream myApp servidor 192.168.10.201; Servidor 192.168.10.202; |
Neste exemplo, definimos um grupo a montante nomeado "MyApp" Isso inclui dois servidores: 192.168.10.201 e 192.168.10.202. Estes são os servidores que receberão tráfego do balanceador de carga.
Etapa 3: Configurar o balanceador de carga
Agora que definimos nossos servidores a montante, podemos configurar o balanceador de carga. Adicione o seguinte código ao bloco HTTP em nginx.conf:
http upstream myApp servidor 192.168.10.201; Servidor 192.168.10.202; servidor Ouça 80; localização/proxy_pass http: // myApp;12345678910111213 | http upstream myApp servidor 192.168.10.201; Servidor 192.168.10.202; servidor Ouça 80; localização/proxy_pass http: // myApp; |
Neste código, definimos um bloco de servidor que ouve na porta 80 (a porta HTTP padrão). O local / bloco especifica o caminho da URL que deve ser roteado para os servidores a montante. O proxy_pass A diretiva diz ao nginx para encaminhar solicitações de entrada para o "MyApp" Grupo a montante que definimos anteriormente.
Etapa 4: reinicie o nginx
Finalmente, reinicie o nginx para aplicar as alterações no arquivo de configuração. Execute o seguinte comando:
SUDO Service Nginx Reiniciar
Etapa 5: testando o balanceador de carga
Para testar o balanceador de carga, podemos usar um navegador da web ou uma ferramenta como o CURL para enviar solicitações HTTP para o servidor. Quando acessarmos o URL configurado no local / bloco, o Nginx encaminhará a solicitação a um dos servidores a montante no "MyApp" grupo.
Se tudo estiver funcionando corretamente, você deve ver a resposta de um dos servidores a montante. Você pode confirmar que a carga está sendo equilibrada nos dois servidores, refrescando a página várias vezes e verificando o endereço IP do servidor que responde a cada solicitação.
Conclusão
Configurar o NGINX como balanceador de carga é um processo direto que pode ajudar a melhorar o desempenho e a disponibilidade de aplicativos da Web. Ao definir servidores upstream e configurar o balanceador de carga, você pode distribuir tráfego de entrada em vários servidores e evitar sobrecarregar qualquer servidor único.
- « Como instalar o Apache/Php 7 no CentOS/Rhel 7.6/6.9 e Fedora 31/30
- Como implantar o aplicativo Ruby com passageiro e Apache no CentOS 7/6, Fedora 27 »