Sei sulla pagina 1di 7

Configurando um cluster de alta disponibilidade para servidor WWW

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.

Configurao da rede cluster talmeida


As configuraes para as placas de rede dos servidores ha-1.talmeida.com.br e ha-2.talmeida.com.br so:

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

DRBD (Data Replicator Block Device)


O DRBD (Data Replicator Block Device - Dispositivo de Bloco de Replicao de Dados) um modulo de kernel e scripts associados que oferecem um dispositivo de bloco projetado para construir clusters de alta disponibilidade. Isso feito espelhando um conjunto de blocos via rede dedicada formada pelas placas de rede eth1 dos servidores ha-1.talmeida.com.br e ha-2.talmeida.com.br (endereos IP: 10.0.0.1 e 10.0.0.2). Podemos consider-lo como RAID via rede. O DRBD toma conta dos dados escritos no disco rgido local e os envia para outro host. No outro host ele escreve os dados no disco. Os outros componentes necessrios so um servio de relacionamento entre servidores do cluster, o qual pode ser o Heartbeat e algumas aplicaes FS ou um banco de dados com capacidade de restaurao. Cada dispositivo (o DRBD providencia mais um desses dispositivos) tem um estado, que pode ser primrio ou secundrio, No n com o dispositivo primrio a aplicao est executando e tem acesso ao dispositivo (/dev/nbX). Leituras so sempre localizadas localmente. Se o n primrio falhar, o Heartbeat permutar o dispositivo secundrio em primrio e iniciar a aplicao ali (se voc esta usando um filesystem no journaling, isso implica executar o fsck). O n que fechou, ao voltar, se torna o secundrio e tem que sincronizar seus dados com o primrio. Isso feito sem nenhuma interrupo do servio em background. Obs.: O Red Hat no possui o drbd, use o rsync como substituto. Fonte de consulta: http://www.noticiaslinux.com.br/nl1077151245.html

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.

Potrebbero piacerti anche