Configuração HAProxy no OPNsense

O que é o HA Proxy?


HAProxy (High Availability Proxy) é um balanceador de carga e servidor proxy de código aberto projetado para aplicações TCP e HTTP. Ele é conhecido por sua disponibilidade, confiabilidade e capacidade de distribuir o tráfego entre vários servidores, seja para websites, aplicações ou serviços.

A seguir, são listados os passos para configurá-lo e é apresentada uma topologia.




Procedimento

O primeiro passo é configurar os Real Servers, que são os servidores físicos ou virtuais que serão usados para balancear a carga ou atuar como proxies.

Para isso acesse Service>HAProxy>Settings



Clique na aba Real Servers e na opção Real Servers



Clicar no sinal de "+" para configurar uma nova entrada



Preencher com as informações conforme imagem abaixo clicar em Save.

Os principais campos são:

  • FQDN or IP que é o servidor que receberá o direcionamento.
  • Port que é a porta a ser utilizada

Além disso, é necessário fornecer um nome (identificação) e uma descrição para cada servidor.


Após a criação dos Real Servers, é necessário criar os Backend Pools, que consistem em agrupar os servidores adicionados anteriormente para formar um conjunto de servidores. Os Backend Pools gerenciam o monitoramento da integridade e a distribuição de carga. É importante configurar um pool de back-end mesmo se você tiver apenas um servidor.

Acesse a aba Virtual Services>Backend Pools


Novamente clicar no sinal de "+" para uma nova adição.


Preencher os campos NameDescription e em Servers inserir o "Real Servers" criado anteriormente, as outras opções deixe default e clicar em Save


Após a criação do Backend Pool, é necessário configurar o Public Server, que é responsável por escutar as conexões dos clientes e encaminhar os dados das solicitações dos clientes para o Backend Pool selecionado para balanceamento de carga ou proxy. É importante observar que todo serviço público deve estar associado a um Backend Pool previamente criado.

Acesse a aba Virtual Service>Public Service


Novamente clicar no sinal de "+" para uma nova adição.



Inserir Name e Description.

Em Listen Addresses Configure endereços para este Public Service, ou seja, 127.0.0.1:8080 ou www.example.com:443 ou seja ip e porta que vão servir de entrada para o chegar ao host físico configurado no Real Servers não necessariamente deve ser um IP público.

E em Default Backend Pool inserir o pool criado anteriormente e clicar Apply


No campo Listen Addresses, configure os endereços para este serviço público, como por exemplo 127.0.0.1:8080 ou www.example.com:443. Isso significa que você está definindo o IP e a porta de entrada que redirecionarão para o host físico configurado nos Real Servers. Não é necessário que seja um IP público.

Em Default Backend Pool, selecione o pool criado anteriormente e clique em Apply."



Realizada todas as configurações você pode validar se existe algum erro clicando em "Test syntax"


Caso não contenha erros a mensagem abaixo será exibida.


Após garantir que todas as configurações estejam corretas, basta clicar em Apply e a configuração estará concluída.


Conclusão


Este artigo descreve uma configuração básica do HAProxy, que serve como um ponto de partida para implementações mais avançadas. É importante ressaltar que o HAProxy oferece uma ampla gama de opções e recursos adicionais que podem ser explorados com base nos requisitos específicos e no propósito da implantação.

Se você precisar de assistência ou suporte personalizado para suas configurações de HAProxy, nossa equipe especializada está à disposição para ajudá-lo a atingir seus objetivos.