next up previous contents
Next: Balanceamento de Carga Up: Alta Disponibilidade Previous: Heartbeat   Sumário

A integração

Caso o sistema primário venha a cair o pulso deixará de ser transmitido e o servidor secundário assumirá. No entanto há uma situação particular em que um serviço pode falhar e o Heartbeat continuar de pé, enivando seu pulso. Assim o serviço fica bloqueado.

Para isto temos o Mon. O Mon pode monitorar as conexões de rede, como já foi dito, mas pode também monitorar o andamento de diversos serviços como servidor de DNS, HTTP.

O Mon pode lidar com uma queda de um serviço tentando reiniciá-lo, bastando um alerta que faça isto, contudo se não for possível reiniciar o serviço adequadamente, então será o caso de desligar o Heartbeat e deixar o nó secundário agir.

Para isto existe o heartbeat.alert, um alerta que desliga o Heartbeat, que por sua vez vai desligar todos os serviços pelos quais é responsável e abandonar o IP do cluster.

Por sua vez o DRBD vem com um script start/stop chamado datadisk.

O datadisk deve ser colocado entre os serviços pelos quais o Heartbeat é responsável uma vez que este script é usado para montar e desmontar o sistema compartilhado. Lembrando que apenas um nó por vez poderá montar o filesystem e, claro, desejamos que seja o nó ativo.

Resumindo a solução integrada:

  1. Temos que o Heartbeat é responsável por diversos serviços, inclusive o datadisk e o IP do cluster;
  2. Ao ser inicializado os serviços iniciam no nó primário e ficam aguardando no nó secundário;
  3. O Heartbeat envia um pulso periódico para o nó secundário avisando que está ativo;
  4. O Mon monitora diversas condições consideradas necessárias para o bom funcionamento do cluster;
  5. Em caso de falha, o Mon aciona o heartbeat.alert, desliga o Heartbeat;
  6. o Heartbeat desmonta o filesystem do DRBD, libera o IP e desativa todos os serviços.


next up previous contents
Next: Balanceamento de Carga Up: Alta Disponibilidade Previous: Heartbeat   Sumário
Guilherme Tomas O'Connor de Lungarzo 2004-02-27