Heartbeat Configurazione —
Heartbeat è un programma del progetto Linux-HA serve a monitorare il funzionamento dei nodi di un cluster e “decidere” cosa fare nel caso del malfunzionamento di uno dei nodi.
Da notarsi che è o meglio “sarebbe” deprecato in favore di corosynk+pacemaker, ma vista sia la sua facilità di configurazione che la sua stabilità continuerò ad usarlo sino a quando sarà disponibile.
Al solito su ambo le macchine installiamo il pacchetto heartbeat che si tira dietro tutte le dipendenze necessarie, e quindi nella directory /etc/ha.d copiamo da /usr/share/doc/heartbeat i files authkeys, ha.cf, haresources o se preferiamo scriviamoli da 0 che tanto e’ lo stesso per tanti versi.
I files sono al solito pieni e ben commentati e sono in sostanza:
authkeys il modo di autenticazione dei nodi e puo’ contenere due sole righe come queste:
auth 2
2 sha1 unabellapasswordlungaecomplicata!
deve essere ovviamente uguale su entrambe le macchine e deve avere obbligatoriamente permessi 600.
Il file ha.cf è l’unico che vista la scelta che ho operato per heartbeat deve essere differente sulle due macchine, l’unica differenza è l’incrocio degli up per ucast ma e’ fondamentale.
Percui avremo su sangiorgio un ha.cf fatto in questo modo:
#
# File to write debug messages to
debugfile /var/log/ha-debug
#
#
# File to write other messages to
#
logfile /var/log/ha-log
#
#
# Facility to use for syslog()/logger
#
logfacility local0
## keepalive: how long between heartbeats?
#
keepalive 2
#
# deadtime: how long-to-declare-host-dead?
#
# If you set this too low you will get the problematic
# split-brain (or cluster partition) problem.
# See the FAQ for how to use warntime to tune deadtime.
#
deadtime 30
#
# warntime: how long before issuing “late heartbeat” warning?
# See the FAQ for how to use warntime to tune deadtime.
#
warntime 10
#
#
# Very first dead time (initdead)
#
# On some machines/OSes, etc. the network takes a while to come up
# and start working right after you’ve been rebooted. As a result
# we have a separate dead time for when things first come up.
# It should be at least twice the normal dead time.
#
initdead 60
#udpport 694
##
#
ucast eth1 192.168.2.240
ucast eth2 192.168.10.240
####N.B. SU SANGIORGIO VANNO INSERITI GLI IP DI PERSEO E SU PERSEO QUELLI DI SANGIORGIO
#
auto_failback on
#
node sangiorgio perseo
#
debug 1
Da ultimo il file haresourc che in sostanza si occupa di montare il/i device drbd di far partire i servizi e di generare l’IP virtuale a cui questi servizi fanno capo e puo’ contenere ad esempio giusto per testare
sangiorgio IPaddr::192.168.2.241/24/eth1 \
drbddisk::r0 Filesystem::/dev/drbd0::/jumper::ext4
dare /etc/init.d/heartbeat restart e a fine operazione con un ifconfig vedrete :
eth1:0 Link encap:Ethernet HWaddr 00:15:17:4b:9b:b2
inet addr:192.168.2.241 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:16 Memory:efcc0000-efce0000
con un mount:
sangiorgio:/etc/ha.d# mount
…
…
/dev/drbd0 on /jumper type ext3 (rw)
in seguito su un altro articolo vedremo quali servizi inserire su sangiorgio e perseo per fare un proxy NTLM, anche questo file deve essere uguale su entrambe le macchine.
Categorised as: Cluster | Linux | Networking | Sistemi operativi
Comments are disabled on this post