INSTALANDO E CONFIGURANDO HEARTBEAT – DEBIAN

O Heartbeat pode ser considerado o núcleo do ambiente de alta disponibilidade, ele monitora os serviços de um servidor e em caso de falha realizar automaticamente os procedimentos para preservar o funcionamento do serviço.

Aqui usaremos para para gerenciar o VIP de um cluster e serviço apache, uma página web.

CENÁRIO

Nosso cenário é o seguinte:

  • Objetivo: cluster de IP (chamado de VIP, é um IP virtual que estará atrelado para os dois hosts, mas o segundo só responderá por ele caso o principal host fique indisponível) e cluster do serviço apache2(página web). Queremos que quando alguém quiser acessar a página web ele acesse pelo ip 192.168.77.10 e que quando o principal host estiver indisponível o outro continue respondendo por este mesmo IP.
  • LAN: faixa 192.168.77.0/24 com o VIP definido para ser o de final .10.
  • Rede exclusiva: faixa 192.168.33.0/30

PRÉ CONFIGURAÇÃO

Configurações que precisam ser feitas nos dois hosts:

  • Instalação do apache2
  • Configuração do arquivo /etc/hosts para que contenha IPs dos nós.

INSTALAÇÃO HEARTBEAT

Instalando no Debian 10:

apt install heartbeat

CONFIGURANDO

STEP 1: FILE HA.CF

Crie o arquivo /etc/ha.d/ha.cf nos dois nodes:

node cluster01      # primeiro node
node cluster02      # segundo node
udp enp1s0          # interface vai ser usada para comunicação
use_logd on         # ativando log    (recomendado, opcional)
# debugfile /var/log/ha-debug     # arquivo de log  (legacy)
# logfile /var/log/ha-log         # arquivo de log  (legacy)
keepalive 1         # freqüência, em segundos, da verificação das máquinas
deadtime 5          # tempo mín para declarar a outra máquina como morta
auto_failback on    # caso master volte, ele assume novamente

STEP 2: FILE HARESOURCES

Crie o arquivo /etc/ha.d/haresources nos dois nodes:

cluster01 drbddisk::r0 Filesystem::/dev/drbd0::/lxc::ext4 192.168.77.10 apache2

Entenda os campos acima segundo o cenário:

cluster01 – nome da máquina principal
drbddisk – utilitário do heartbeat para gerenciar o drbd
r0 - nome do recurso em drbd
filesystem – utilitário para montagem de partição
dev/drbd0 – nome da unidade do drbd
/lxc – nome do local de montagem do disco do drbd
ext4 – sistema de arquivos do disco do drbd
192.168.77.10– IP virtual
apache2 – script ou serviço para adicionar no heartbeat

STEP 3: FILE AUTHKEYS

Crie o arquivo /etc/ha.d/authkeys nos dois nodes:

auth 3
3 md5 DigiteUmaSenha

Altere as permissões:

chmod 600 /etc/ha.d/authkeys

INICIANDO SERVIÇO

Execute o comando abaixo para iniciar o serviço:

systemctl start heartbeat

VERIFICANDO STATUS

Verificando status do serviço:

cl_status hbstatus
Heartbeat is running on this machine

Verificando se um node está ativo:

cl_status nodestatus cluster01
active

TESTANDO

Acesse o site através do seu ip VIP no meu caso o 192.168.77.10. Desligue ou torne o host principal como indisponível e tente acessar, verá que se estiver tudo certo o site continuará acessando.

FONTES

https://www.hardware.com.br/tutoriais/drbd-heartbeat-samba/pagina2.html

http://manpages.ubuntu.com/manpages/bionic/man1/cl_status.1.html