Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Essas configuraes podem ser feitas facilmente e adaptadas para outros servidores como FTP, e-mail, Samba, banco de dados etc. Instalaes das placas de rede: O procedimento de instalao de duas placas de rede, para os computadores ha-1.talmeida.com.br e ha2.talmeida.com.br, que hospedam o cluster de alta disponibilidade. Instalamos duas placas de rede em cada um deles.
Hostname: ha-1.talmeida.com.br Endereo IP (eth0): 192.168.1.51 Mscara de rede (eth0): 255.255.255.0 Endereo da rede (eth0): 192.168.1.0 Endereo de broadcast (eth0): 192.168.1.255 Endereo IP (eth1): 10.0.0.1 Mscara de rede (eth1): 255.0.0.0.0 Endereo da rede (eth1): 10.0.0.0 Endereo de broadcast (eth1): 10.255.255.255 Gateway: 192.168.1.1 DNS primrio: 192.168.1.2 DNS secundrio: 192.168.1.3 Nome do domnio: talmeida.com.br Hostname: ha-2.talmeida.com.br Endereo IP (eth0): 192.168.1.52 Mscara de rede (eth0): 255.255.255.0 Endereo da rede (eth0): 192.168.1.0 Endereo de broadcast (eth0): 192.168.1.255 Endereo IP (eth1): 10.0.0.2 Mscara de rede (eth1): 255.0.0.0.0 Endereo da rede (eth1): 10.0.0.0 Endereo de broadcast (eth1): 10.255.255.255 Gateway: 192.168.1.1 DNS primrio: 192.168.1.2 DNS secundrio: 192.168.1.3 Nome do domnio: talmeida.com.br
Configurando o DRBD
Edite o arquivo /etc/drbd.conf em ambos os servidores do cluster, da seguinte forma: resource drbd0 # primeiro espelhamento { protocolo=B # protocolo usado pelo DRBD fsckmod=fsck -p -y # comando fsck caso necessrio # inttimeout=60 disk # informaes relativas ao disco { do-panic # em caso de erro de kernel vai obrigar o servidora parar # disk-size=xxxxxx # o tamanho do disco deve ser definido se os discos dos servidores do cluster no foram iguais } net # informaes relativas rede { # sync-rate=250 sync-rate=10M # taxa de transmisso de dados por 10 megabits por segundo. #skip-sync tl-size=50000
timeout=60 connect-int=10 ping-int=10 } on ha-1 # primeiro n { device=/dev/nb0 # dispositivo de drbd disk=/dev/hda7 # dispositivo de bloco address=10.0.0.1 # endereo ip port=7788 } on ha-2 { device=/dev/nb0 # dispositivo de drbd disk=/dev/hda7 # dispositivo de bloco address=10.0.0.2 # endereo ip port=7788 } Ativando o drbd na inicializao do Linux: Execute o programa ntsysv em ambos os servidores do cluster e selecione o servio "drbd".
Configurando o RSync
O RSync um programa para sincronizao de discos que pode ser utilizado como alternativa para distribuies Linux que no possuem o DRBD. Edite o arquivo /etc/ha.d/resource.d/hasync do servidor ha-1.talmeida.com.br da seguinte forma: #!/bin/bash if [ -f "/var/lock/subsys/mirror" ] then exit if echo -n "sincronizando o servidor secundrio" touch /var/lock/subsys/mirro rsync -avz /var/www/* ha-2.talmeida.com.br:/var/www rm -f /var/lock/subsys/mirro Coloque esse arquivo como executvel para facilitar: # chmod 755 /etc/ha.d/resource.d/hasync Execute o comando no servidor ha-1.talmeida.com.br: # crontab -e */10 * * * * /etc/ha.d/resource.d/hasync # atualizar o servidor secundrio a cada 10 minutos Edite o arquivo /etc/ha.d/resource.d/datadisk do servidor ha-1.talmeida.com.br: #!/bin/bash case "$1" in start) touch /var/lock/subsys/mirror if [ -f "/var/lock/subsys/mirroslave" ] then rsync -avz ha-2.talmeida.com.br:/var/www/* /var/www rm -f /var/lock/subsys/mirror fi rm -f /var/lock/subsys/mirror ;; stop) if [ -f "/var/lock/subsys/mirror"] then exit fi touch /var/lock/subsys/mirror rsync - avz /var/www/* ha-2.talmeida.com.br:/var/www rm -f /var/lock/subsys/mirror
;; restart) $0 stop $1 start ;; status) echo -n alo ;; *) echo "uso: datadisk {start|stop|restart|status} exit 1 esac Coloque esse arquivo como executvel para facilitar: # chmod 755 /etc/ha.d/resource.d/datadisk Edite o arquivo /etc/ha.d/resource.d/datadisk do servidor ha-2.talmeida.com.br: #!/bin/bash case "$1" in start) # no faz nada ;; stop) rsh ha-1.talmeida.com.br touch /var/lock/subsys/mirroslave ;; restart) $0 stop $1 start ;; status) echo -n alo ;; *) echo "Uso: datadisk {start|stop|restart|status} exit 1 esac exit 0 Coloque esse arquivo como executvel para facilitar: # chmod 755 /etc/ha.d/resource.d/datadisk Ativando a sincronizao dos discos na inicializao do Linux: Execute o programa ntsysv no computador ha-1.talmeida.com.br e marque o servio crond.
Heartbeat
Heartbeat significa batimento cardaco. Esse termo usado para definir os pulso enviados entre dois computadores que indicam que esto vivos, ou seja, esto funcionando e disponveis para executar tarefas. O Heartbeat trabalha enviando pulso entre dois servidores atravs de uma porta serial, um placa de rede ou ambas. Se o pulso falhar, o servidor secundrio ir assumir que o servidor primrio falhou e tomar os servios que estavam rodando no servidor primrio. O Heartbeat define um endereo IP para o cluster, que deve ser diferente dos endereos IP dos servidores primrio e secundrio, e que ser o endereo IP procurado pelos clientes. O servidor que esta ativo, no importa se for o primrio ou o secundrio assumir o endereo do cluster. Fonte: http://www.opens.com.br/documentacao/HA/Portugues/heartbeat.html
Configurao 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 transferncia 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 indisponvel depois de 10 segundos node ha-1.talmeida.com.br node ha-2.talmeida.com.br Para testar a comunicao 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 indisponvel 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 endereo do cluster 192.168.1.53 e inicializa o script datadisk, que negocia a troca do dispositivo drbd de secundrio para o primrio, monta as parties drbd especificadas no fstab e inicializa o servidor WWW. Ao desligar, Heartbeat ir primeiro parar o servidor WWW, o drbd e depois liberar o endereo 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 autenticao utilizado pelo Heartbeat. Existem trs mtodos de autenticao disponveis: crc, md5, sha1. O crc o mais simples, recomendvel na maioria das situaes. O md5 tem um nvel de segurana mdio. J o sha1 o mais seguro de todos, mas tambm o mais lento. O formato desse arquivo o seguinte: auth <number> <number> <authmethod> [authkey] Obs.: O crc no usa chave de autenticao. # chmod 600 /etc/ha.d/authkeys Execute o programa ntsysv em ambos os servidores do cluster e selecione o servio heartbeat.