Como Ter Serviços de Alta Disponibilidade com o Keepalived

Hoje em dia, a disponibilidade ininterrupta dos serviços digitais é um requisito indispensável para empresas e desenvolvedores. Seja você um gestor de um site crítico para o negócio ou uma aplicação essencial, ter uma estratégia robusta de alta disponibilidade é fundamental. Neste artigo, vamos mergulhar em como alcançar isso usando o Keepalived no Ubuntu 22.04, focando especialmente na configuração de múltiplos endereços IP virtuais (VIP).

Entendendo o Keepalived e o VRRP

O Keepalived é uma solução de software baseada no protocolo VRRP (Virtual Router Redundancy Protocol) para criar sistemas de alta disponibilidade. Ele fornece um mecanismo para que os servidores se apoiem mutuamente, de forma que, se um falhar, outro possa assumir seu lugar automaticamente, garantindo a continuidade do serviço.

Instalando o Keepalived no Ubuntu 22.04

Antes de começar a configurar os endereços IP virtuais, é necessário instalar o Keepalived no seu sistema Ubuntu 22.04. Você pode fazer isso seguindo estes simples passos:
Atualize o seu sistema: Antes de instalar qualquer pacote, certifique-se de que o seu sistema está atualizado:

sudo apt update && sudo apt upgrade -y

Instale o Keepalived:

Agora, instale o Keepalived usando o gerenciador de pacotes APT:

sudo apt install keepalived -y

Configuração Básica

O primeiro passo é acessar o arquivo de configuração principal:

sudo nano /etc/keepalived/keepalived.conf

Uma vez lá, comece a configurar a instância VRRP. Imagine que você queira estabelecer alta disponibilidade entre dois servidores, A e B. O servidor A será o principal e o B será o de backup.

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 50
    priority 100
    advert_int 1
    virtual_ipaddress {
        192.168.1.100
    }
}

Aqui, o servidor A está configurado para ser o MASTER e o IP virtual que ambos os servidores compartilharão é 192.168.1.100.

Ajuste a Configuração para o Servidor B

No servidor B, a configuração seria quase idêntica, com a única diferença de que o estado seria BACKUP e a prioridade seria um número menor, digamos 50.
Isso garante que o servidor A seja sempre o principal, a menos que falhe. Nesse caso, o servidor B assumirá o controle.

Configuração de Múltiplos VIPs em uma Única Interface

Uma vez que o Keepalived está instalado, é hora de passar para a configuração. A capacidade de lidar com múltiplos VIPs é uma das características mais poderosas do Keepalived.
Se você deseja ter vários endereços IP virtuais atribuídos a uma única interface de rede, você pode fazer isso adicionando múltiplas entradas em virtual_ipaddress no seu arquivo de configuração keepalived.conf.

Edite o Arquivo de Configuração:

sudo nano /etc/keepalived/keepalived.conf

Adicione a Sua Configuração:

Aqui está um exemplo de como configurar múltiplos VIPs em uma única interface:

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 100
    advert_int 1
    virtual_ipaddress {
        192.168.1.100
        192.168.1.101
        192.168.1.102
    }
}

Neste exemplo, três endereços IP virtuais foram configurados na interface eth0.

Configuração de um VIP por Interface

Se você preferir ter um endereço IP virtual atribuído a interfaces diferentes, você precisará criar múltiplas instâncias VRRP.

Edite o Arquivo de Configuração:

sudo nano /etc/keepalived/keepalived.conf

Adicione a Sua Configuração:

Aqui está um exemplo de como configurar um VIP por interface:

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 52
    priority 100
    advert_int 1
    virtual_ipaddress {
        192.168.1.100
    }
}
vrrp_instance VI_2 {
    state MASTER
    interface eth1
    virtual_router_id 53
    priority 100
    advert_int 1
    virtual_ipaddress {
        192.168.2.100
    }
}

Neste exemplo, um VIP foi atribuído à interface eth0 e outro VIP à interface eth1.

Reinicie o Keepalived para Aplicar as Alterações

Após realizar alterações no arquivo de configuração, é necessário reiniciar o serviço Keepalived para aplicar as mudanças:

sudo systemctl restart keepalived

E para garantir que ele inicie com o sistema:

sudo systemctl enable keepalived

Verificação e Monitoramento

Agora que tudo está configurado, é importante verificar se tudo está funcionando conforme esperado e manter um monitoramento constante.

Verifique o Estado do Serviço:

sudo systemctl status keepalived

Revise os Logs

Os logs fornecerão informações valiosas sobre o comportamento do Keepalived:

sudo journalctl -u keepalived

Benefícios de Usar o Keepalived para Múltiplos VIPs

Ao usar o Keepalived para gerenciar múltiplos VIPs, você obtém um sistema robusto e flexível que pode se adaptar às necessidades da sua infraestrutura. Isso não só assegura a disponibilidade dos seus serviços, como também proporciona uma distribuição equilibrada da carga, o que é vital para manter um alto desempenho.

Conclusão

Ao implementar o Keepalived com a configuração de múltiplos endereços IP virtuais, você estará dando um passo significativo em direção à construção de uma infraestrutura robusta e resistente a falhas. Lembre-se de que, enquanto o Keepalived oferece uma solução excelente, a monitorização contínua e a manutenção adequada são essenciais para garantir que tudo funcione sem problemas. Ao seguir as orientações apresentadas neste guia e ao adaptá-las conforme necessário para a sua situação específica, você estará bem equipado para manter os seus serviços online e operacionais, não importa o que aconteça.

Deixe um comentário