Heartbeat significa batimento cardíaco. Esse termo é usado para definir os pulso enviados entre dois computadores que indicam que estão vivos, ou seja, estão funcionando e disponíveis para executar tarefas.
O Heartbeat trabalha enviando pulso entre dois servidores através de uma porta serial, um placa de rede ou ambas. Se o pulso falhar, o servidor secundário irá assumir que o servidor primário falhou e tomar os serviços que estavam rodando no servidor primário.
O Heartbeat define um endereço IP para o cluster, que deve ser diferente dos endereços IP dos servidores primário e secundário, e que será o endereço IP procurado pelos clientes. O servidor que esta ativo, não importa se for o primário ou o secundário assumirá o endereço do cluster.
Fonte:
http://www.opens.com.br/documentacao/HA/Portugues/heartbeat.html
Configuração do Heartbeat
Edite o arquivo
/etc/ha.d/ha.cf em ambos os servidores do cluster (se por pela porta serial):
serial /dev/ttys1 # porta serial usada pelo heartbeat.
baud 19600 # taxa de transferência da porta serial
debugfile /var/log/ha-debug
logfile /var/log/ha-log # arquivo de log
logacility local0
keepalive 2 # define o tempo entre os heartbeats
deadtime 10 # o nó será declarado como indisponível depois de 10 segundos
node ha-1.talmeida.com.br
node ha-2.talmeida.com.br
Para testar a comunicação da porta serial, execute os seguintes comandos.
No servidor
ha-1.talmeida.com.br:
# cat < /dev/ttyS1
No servidor
ha-2.talmeida.com.br:
# echo teste > /dev/ttyS1
A palavra teste irá aparecer no servidor ha-1.talmeida.com.br.
Edite o arquivo
/etc/ha.d/ha.cf em ambos os servidores do cluster (se for usada a placa de rede):
udpport 694 # porta usada pelo protocolo udp.
Udp eth1 # placa de rede usada pelo heartbeat.
debugfile /var/log/ha-debug
logfile /var/log/ha-log # arquivo de log
logfacility local0
keepalive 2 # define o tempo entre os heartbeat
deadtime 10 # o nó será declarado como indisponível depois de 10 segundos
node ha-1.talmeida.com.br
node ha-2.talmeida.com.br
Edite o arquivo
/etc/ha.d/haresources em ambos os servidores do cluster, da seguinte forma:
ha-1.talmeida.com.br 192.168.1.53 datadisk www
Essa linha indica que o endereço do cluster é 192.168.1.53 e inicializa o script datadisk, que negocia a troca do dispositivo drbd de secundário para o primário, monta as partições drbd especificadas no fstab e inicializa o servidor WWW. Ao desligar, Heartbeat irá primeiro parar o servidor WWW, o drbd e depois liberar o endereço IP para que o outro servidor do cluster possa assumí-lo.
Edite o arquivo
/etc/ha.d/authkeys em ambos os servidores do cluster, da seguinte forma:
auth 1
1 crc
Esse arquivo define o tipo de autenticação utilizado pelo Heartbeat. Existem três métodos de autenticação disponíveis: crc, md5, sha1. O crc é o mais simples, recomendável na maioria das situações. O md5 tem um nível de segurança médio. Já o sha1 é o mais seguro de todos, mas também o mais lento. O formato desse arquivo é o seguinte:
auth <number>
<number> <authmethod> [authkey]
Obs.: O crc não usa chave de autenticação.
# chmod 600 /etc/ha.d/authkeys
Execute o programa
ntsysv em ambos os servidores do cluster e selecione o serviço
heartbeat.