Cada grupo CARP é representado por uma interface virtual (pseudo-device). E pode ser configurado com auxílio do comando ifconfig(8). O requisito principal para o funcionamento da disponibilidade é manter as interfaces físicas no mesmo seguimento de rede.
Grupo CARP 1:
Para efeito de teste adotaremos le0 como sendo a interface física.
Servidor master:
# ifconfig le0 192.168.90.2/24 (interface física rede 192.168.90.0/24)
# ifconfig carp1 create (cria o grupo carp1)
# ifconfig carp1 vhid 1 pass senha_do_grupo advskew 1 192.168.90.1 255.255.255.0
Servidor backup:
# ifconfig le0 192.168.90.3/24 (interface física rede 192.168.90.0/24)
# ifconfig carp1 create (cria o grupo carp2)
# ifconfig carp1 vhid 1 pass senha_do_grupo advskew 2 192.168.90.1 255.255.255.0
Grupo CARP 2:
Para efeito de teste adotaremos le0 como sendo a interface física.
Servidor master:
# ifconfig le0 192.168.90.3/24 (interface física rede 192.168.90.0/24)
# ifconfig carp2 create (cria o grupo carp2)
# ifconfig carp2 vhid 2 pass senha_do_grupo2 advskew 1 192.168.90.1 255.255.255.0
Servidor backup:
# ifconfig le0 192.168.90.2/24 (interface física rede 192.168.90.0/24)
# ifconfig carp2 create (cria o grupo carp2)
# ifconfig carp2 vhid 2 pass senha_do_grupo2 advskew 2 192.168.90.1 255.255.255.0
Obs.: Desta forma teremos dois master e backups no mesmo seguimento fazendo load balance. Contudo poderemos ter um segundo ou terceiro grupo atuando em outro seguimento de rede utilizando o recursos de alias. Para fazer load balance observe que os dois grupos compartilham o mesmo ip estando no mesmo seguimento de rede.
Balanceamento possui suas limitações. Devem ser feitas no mesmo seguimento de rede não atravessando o router.
Descrição das funções:
- vhid - Virtual host ID utilizado para identificar o grupo.
- Passwd - Senha atribuída ao grupo.
- advskew - Se 1 indica host master, acima indicará o nível de prioridade do host. Caso 2 será o 1 host a assumir caso o master decline, se 3 será o segundo e assim em diante.
Desta forma basta então realizar o teste para verificar se está funcionando. Pingue o ip compartilhado 192.168.90.1 e retire o cabo de rede de uma das duas máquinas e verá que mesmo assim o ping não será descontinuado. É fato que não queremos apenas estabilizar o ping e sim o serviço. Portanto cabe a sua criatividade dar funcionalidade ao CARP. Como sugestão servidor web que compartilham a mesma aplicação e mesmo banco podem funcionar com o sistema. Todavia ao configurar apenas um grupo o servidor de backup só atuará caso o master decline caso sejam configurados dois grupos como citado acima. Veremos numa próxima ocasião como fazer balanceamento com DNS utilizando algoritmo round-robin atualizando o estado das conexões, ou seja, sincronizando o estado das conexões. Desta forma implementaremos um CLUSTER.
Bibliografia
- TRACANELLI, Patrick. Programa FreeBSD S.S.A. Belo Horizontei-MG: FreeBSD Brasil,2009;
- MICHAEL, Lucas.Dominando BSD : O guia definitivo para FreeBSD. Rio de Janeiro-RJ: Editora moderna Ltda,2003