HAProxy

Instale o HAProxy para configurar o servidor de balanceamento de carga no Debian 10

Instale o HAProxy para configurar o servidor de balanceamento de carga no Debian 10

O balanceamento de carga é a prática mais comum de distribuição de tráfego da web de entrada entre vários servidores back-end. Isso torna o aplicativo altamente disponível, mesmo se alguns dos servidores caírem por algum motivo.  O balanceamento de carga aumenta a eficiência e confiabilidade de um aplicativo da web. O balanceador de carga HAProxy é usado para a mesma finalidade. É o balanceador de carga mais amplamente usado nas indústrias. De acordo com o site oficial, o HAProxy é usado por empresas líderes como AWS, Fedora, Github e muito mais.

HAProxy ou High Availability Proxy fornece alta disponibilidade e solução de proxy. Ele é escrito em C e funciona nas camadas de rede e de aplicação do modelo TCP / IP. A melhor coisa é que ele tem uma edição da comunidade gratuita e é um aplicativo de código aberto. Funciona em sistemas operacionais Linux, FreeBSD e Solaris. A edição empresarial também está lá, mas tem uma etiqueta de preço.

Neste guia, veremos Como instalar o HAProxy e configurar o servidor de balanceamento de carga no Debian 10.

Pré-requisitos:

  1. “Sudo” acesso a todas as máquinas e conhecimentos básicos de execução de comandos no terminal Linux.
  2. Endereços IP privados adicionados ao balanceador de carga e servidores back-end.
  3. Sistema operacional Debian 10 instalado em todas as máquinas.

Instalando HAProxy no Debian 10

Para nosso guia, assumiremos a seguinte configuração de endereço IP:

  1. Balanceador de carga HAProxy 10.0.12.10
  2. Web server1: Endereço IP: 10.0.12.15
  3. Servidor Web 2: Endereço IP: 10.0.12.16

Passo 1. Atualize o repositório e os pacotes do sistema Debian

Primeiro, execute os comandos abaixo em todos os sistemas para atualizar os pacotes de software para o mais recente.

$ sudo apt update
$ sudo apt upgrade -y

Etapa: 2 Instale o Nginx em servidores back-end

Prepare seus servidores back-end instalando o servidor web Nginx em cada. Você também pode optar por instalar outros servidores da web como o apache.

Para instalar o Nginx, execute os seguintes comandos em cada servidor back-end em seu ambiente:

$ sudo apt install nginx

Etapa: 3 Depois que o Nginx for instalado em seus servidores back-end, inicie o serviço, conforme mostrado abaixo:

$ Sudo systemctl start nginx

GORJETA: Também podemos gerenciar o servidor da web nginx usando o comando abaixo:

$ sudo / etc / init.d / nginx “opção”
opção: iniciar recarregar reiniciar status parar

Etapa: 4 Crie páginas de índice personalizadas na pasta da web de cada servidor da web Nginx. Isso nos ajudará a distinguir qual servidor back-end está atendendo às solicitações de entrada.

Em cada servidor da web, execute as seguintes tarefas:

Faça backup do arquivo de índice original usando o seguinte comando:

$ sudo cp / usr / share / nginx / html / index.html / usr / share / nginx / html / index.html.orig

Adicionar texto personalizado ao índice.arquivo html. Estamos adicionando o endereço IP de cada servidor web.

Para servidor web 1:

$ sudo echo "Servidor web 1: 10.0.12.15 "| sudo tee / usr / share / nginx / html / index.html

Para servidor web 2:

$ sudo echo "Servidor web 2: 10.0.12.16 "| sudo tee / usr / share / nginx / html / index.html

Você também pode usar o editor vi se se sentir mais confortável com isso. Isso é mostrado abaixo:

$ sudo vi / usr / share / nginx / html / index.html

Quando o arquivo for aberto, digite o texto e salve o arquivo.

Abra o arquivo host virtual padrão no diretório “/ etc / nginx / sites-available /”.

$ sudo nano / etc / nginx / sites-available / default

Agora, dentro do bloco do servidor, altere a diretiva raiz de “/ var / www / html” para “/ usr / share / nginx / html”.

Para verificar a configuração do Nginx, execute o seguinte comando:

$ sudo nginx -t

Etapa 5: agora reinicie o serviço usando o comando:

$ sudo systemctl restart nginx

Você pode verificar o status do nginx usando o seguinte comando:

$ sudo systemctl status nginx

Etapa: 6 Para instalar o HAProxy no Debian 10 (Buster), execute o seguinte comando no balanceador de carga.

$ sudo apt install haproxy -y

Dica: Depois que o HAProxy estiver instalado, você pode gerenciar o HAProxy por meio de um script de inicialização. Para isso, defina o parâmetro “enabled” para 1 em “/ etc / default / haproxy” conforme mostrado abaixo:

$ sudo vi / etc / default / haproxy
HABILITADO = 1

Agora, a seguinte opção pode ser usada com um script de inicialização:

opção $ sudo service haproxy “.”
opção: iniciar recarregar reiniciar status parar

Etapa: 7 Agora configure o balanceador de carga HAProxy editando o arquivo de configuração padrão haproxy, i.e. “/ Etc / haproxy / haproxy.cfg ”. Para editar este arquivo, execute o seguinte comando

$ sudo vi / etc / haproxy / haproxy.cfg

Dica: Faça backup do arquivo original para que, caso algo dê errado, estejamos todos seguros. Para realizar o backup, use o seguinte comando:

$ sudo cp / etc / haproxy / haproxy.cfg / etc / haproxy / haproxy.cfg.orig

Agora vá para o final do arquivo e edite as seguintes informações:

frontend Local_Server
vincular 10.0.12.10:80
modo http
servidor da web default_backend
servidor web backend
modo http
equilíbrio roundrobin
opção encaminhar para
http-request set-header X-Forwarded-Port% [dst_port]
http-request add-header X-Forwarded-Proto https se ssl_fc
opção httpchk HEAD / HTTP / 1.1rnHost: localhost
servidor web1 10.0.12.15:80
servidor web2 10.0.12.16:80

Observação: Não se esqueça de alterar os endereços IP no arquivo acima para aquele que você adicionou aos seus servidores da web.

Etapa: 8 Verifique a sintaxe de configuração do arquivo acima com o seguinte comando:

$ sudo haproxy -c -f / etc / haproxy / haproxy.cfg

Se tudo der certo, ele mostrará uma saída como: “Arquivo de configuração é válido.”Se você receber algum erro na saída, verifique novamente o seu arquivo de configuração e verifique-o novamente.

Etapa: 9 Agora reinicie o serviço HAProxy para aplicar as alterações

$ sudo service haproxy restart

Testando a configuração

Agora é hora de ver se nossa configuração está funcionando corretamente. Insira o IP do sistema do balanceador de carga em um navegador da web (em nosso caso, é 10.0.12.10) e atualize a página continuamente por 2 a 4 vezes para ver se o balanceador de carga HAProxy está funcionando corretamente. Você deve ver diferentes endereços IP ou qualquer texto que tenha inserido no índice.arquivo html quando você continua a atualizar a página várias vezes.

Outra forma de verificar é colocar um servidor da web off-line e verificar se outro servidor da web está atendendo às solicitações.

É tudo por agora! Experimente experimentar o HAProxy para saber mais sobre como funciona. Para e.g., podes tentar:

O HAProxy tem uma documentação extensa disponível para a edição da comunidade do HAProxy e a versão empresarial do HAProxy. Explore esta documentação para obter mais insights sobre como melhorar o desempenho e a confiabilidade de seu ambiente de servidor.

Este guia foi executado com sucesso no Debian 10 (Buster). Tente instalar o HAProxy em outras distros baseadas em Debian, como Ubuntu, Linux Mint, etc. Não se esqueça de compartilhar este guia com outras pessoas.

Mecanismos de jogos gratuitos e de código aberto para o desenvolvimento de jogos Linux
Este artigo cobrirá uma lista de mecanismos de jogo gratuitos e de código aberto que podem ser usados ​​para desenvolver jogos 2D e 3D no Linux. Exist...
Tutorial de Shadow of the Tomb Raider para Linux
Shadow of the Tomb Raider é a décima segunda adição à série Tomb Raider - uma franquia de jogos de ação e aventura criada pela Eidos Montreal. O jogo ...
Como aumentar o FPS no Linux?
FPS significa Quadros por segundo. A tarefa do FPS é medir a taxa de quadros em reproduções de vídeo ou desempenho de jogos. Em palavras simples, o nú...