baixar os pacotes em http://download.opensuse.org/repositories/server:/ha-clustering/
OBS: É importante salientar que os ip´s fixos servem apenas de comunicação entre o heartbeat.
Cenário:
Exemplo:
Imagine que seu Servidor Activo com o ip fixo 172.16.1.60 esteja respondendo no dns para http://aplicacao.com.br
Agora iremos configurar o heartbeat para que sua aplicacao responda para o ip virtual 172.16.1.63 do Servidor Standby quando o servidor Activo cair.
Os pacotes são:
heartbeat-2.99.2-8.1.x86_64.rpm
heartbeat-common-2.99.2-8.1.x86_64.rpm
heartbeat-resources-2.99.2-8.1.x86_64.rpm
libheartbeat2-2.99.2-8.1.x86_64.rpm
Devemos levar em consideração algumas dependências que serão necessárias:
para instalar use yum install nome do pacote..
Depois de baixar os pacotes no endereço acima vamos instalar com o seguinte comando:
rpm -ivh heartbeat-*, um por um.
OK agora com os pacotes instalados iremos iniciar as configurações.
De acordo com as instruções fornecidas na documentação do heartbeat em http://www.linux-ha.org/, é necessário criar os arquivo abaixo em /etc/ha.d/.
authkeys
ha.cf
haresources
Mas usaremos os arquivos que vem junto da instalação utilizando o seguinte comando:
cp /usr/share/doc/packages/heartbeat/ha.cf /etc/ha.d/
cp /usr/share/doc/packages/heartbeat/authkeys /etc/ha.d/
cp /usr/share/doc/packages/heartbeat/haresources /etc/ha.d/
Agora iremos configurar o HeartBeat:
Abra o arquivo ha.cf, observe que as seguintes linhas devem estar descomentadas:
debugfile /var/log/ha-debug
logfile /var/log/ha-log
logfacility local0
keepalive 2
deadtime 5
udpport 694
Se a máquina tiver uma placa de rede somente utilize
bcast eth0 # Linux
Se a máquina tiver duas placas de rede utilize
bcast eth0 eth1 # Linux
Continuando.......
auto_failback on
node nome_do_servidor_na_rede_activo
node nome_do_servidor_na_rede-standby
Abra o arquivo haresources, adicione no final do arquivo:
nome_do_servidor_na_rede_activo IPaddr::172.16.1.63/24/eth0 nome_do_serviço exemplo: httpd ou tomcat5.
É importante saber que se você colocar o nome_do_serviço o heartbeat que vai gerenciar de inicializa-lo. No meu caso eu já deixei os serviços para ativar na inicialização, assim não utilizando o heartbeat para iniciá-los.
Abra o arquivo authkeys e descomente as seguintes linhas:
auth 1
1 crc
Iremos alterar a permissão do arquivo:
chmod 600 authkeys
Agora iremos adicionar no /etc/hosts a identificação do servidor com o ip fixo:
vim /etc/hosts
172.16.1.60 nome_do_servidor_ativo
Agora iremos instalar o heartbeat da mesma forma que instalamos no primeiro servidor e copiar para o Servidor Standby os mesmos arquivos:
authkeys
ha.cf
haresources
Iremos deixar como está as configurações do arquivo.
Apenas de a permissão para o arquivo chmod 600 authkeys.
Agora iremos adicionar o heartbeat na inicialização do cron dos dois servidores.
adicione com o comando
chkconfig --add heartbeat
chkconfig heartbeat on
Verifique se o serviço está ativo e ligado
chkconfig --list heartbeat
heartbeat 0:não 1:não 2:sim 3:sim 4:sim 5:sim 6:não
Pronto agora é hora de startar os serviços nos dois servidores.
service heartbeat start
a seguinte mensagem será exibida:
[root@projudi-backup ha.d]# service heartbeat start
logd is already running
Starting High-Availability services:
2009/05/04_06:00:16 INFO: Resource is stopped
[ OK ]
Pronto serviço ativo.
Veja no Servidor Standby se o hearbeat levantou o ip virtual da maquina.
[root@servidor_standby ~]# ifconfig
eth0 Link encap:Ethernet Endereço de HW 00:50:56:A2:75:00
inet end.: 172.16.1.60 Bcast:172.16.1.255 Masc:255.255.255.0
endereço inet6: fe80::250:56ff:fea2:7500/64 Escopo:Link
UP BROADCASTRUNNING MULTICAST MTU:1500 Métrica:1
RX packets:4117 errors:0 dropped:0 overruns:0 frame:0
TX packets:2751 errors:0 dropped:0 overruns:0 carrier:0
colisões:0 txqueuelen:1000
RX bytes:705766 (689.2 KiB) TX bytes:1030616 (1006.4 KiB)
Endereço de E/S:0x1400 Memória:f4820000-f4840000
eth0:0 Link encap:Ethernet Endereço de HW 00:50:56:A2:75:00
inet end.: 172.16.1.63 Bcast:172.16.1.255 Masc:255.255.255.0
UP BROADCASTRUNNING MULTICAST MTU:1500 Métrica:1
Endereço de E/S:0x1400 Memória:f4820000-f4840000
lo Link encap:Loopback Local
inet end.: 127.0.0.1 Masc:255.0.0.0
endereço inet6: ::1/128 Escopo:Máquina
UP LOOPBACKRUNNING MTU:16436 Métrica:1
RX packets:2198 errors:0 dropped:0 overruns:0 frame:0
TX packets:2198 errors:0 dropped:0 overruns:0 carrier:0
colisões:0 txqueuelen:0
RX bytes:4078240 (3.8 MiB) TX bytes:4078240 (3.8 MiB)
Parabéns servidores configurado e funcionando.
Agora é só desligar o servidor activo e ver se o standby assumiu o serviço do mesmo.
e bola pra frente....
Para maiores informações, veja o log de saida habilitado no arquivo ha.cf
tail -f /var/log/ha-log
Bibliografia
http://www.linux-ha.org/
http://under-linux.org/f69822-como-utilizar-o-heartbeat
Qualquer dúvida estou a disposição.
Muito bom !
ResponderExcluir