apr 262011
 

Pacemaker è un tool in grado di aiutarci nella configurazione e nella gestione di un cluster formato da due o più server. Difatti Pacemaker è un pacchetto in grado di comunicare con i due sistemi di alta affidabilità più diffusi in Linux: Heartbeat e Pacemaker.

In questo articolo abbiamo già analizzato come configurare un cluster utilizzando pacemaker in collaborazione con heartbeat; in quest’articolo, invece, useremo corosync al posto di heartbeat.

Innanzi tutto installiamo pacemaker e corosync sui due server che comporranno il cluster. In questo esempio utilizzerò come distribuzione Gentoo, ma qualsiasi altra va bene.

emerge pacemaker

In Gentoo corosync è una dipendenza di pacemaker, pertanto verrò installato automaticamente.
La configurazione di corosync è all’interno del file /etc/corosync/corosync.conf

/etc/corosync/corosync.conf
compatibility: whitetank

totem {
	version: 2
	secauth: off
	threads: 0
	interface {
		ringnumber: 0
		bindnetaddr: 192.168.0.100 # <------Sostituire l'ip del server
		mcastaddr: 226.94.1.1
		mcastport: 5405
	}
}

logging {
	fileline: off
	to_stderr: no
	to_logfile: yes
	to_syslog: yes
	logfile: /var/log/cluster/corosync.log
	debug: off
	timestamp: on
	logger_subsys {
		subsys: AMF
		debug: off
	}
}

amf {
	mode: disabled
}

aisexec {
    user: root
    group: root
}

service {
    name: pacemaker
    ver: 0
}

Riportiamo questa configurazione sul secondo server, ovviamente modificando l’indirizzo IP e avviamo il demone su entrambi i server:

/etc/init.d/corosync start

Dopo qualche minuto il cluster dovrebbe essere attivo:

crm_mon -1 | grep Online
Online: [ server01 server02 ]

Ora possiamo utilizzare l’interfaccia crm di Pacemaker per creare le risorse condivise.
Innanzi tutto configuriamo i parametri di default:

crm configure
property no-quorum-policy=ignore
property stonith-enabled=false
property default-resource-stickiness=1000
commit
bye

Ora, ad esempio, configuriamo un ip condiviso:

crm configure
primitive lan_ip IPaddr params ip=192.168.0.250 cidr_netmask="255.255.255.0" nic="eth0" op monitor interval="40s" timeout="20s"
commit
bye

Infine settiamo il nodo “master” come preferito:

crm configure
location master_pref lan_ip 100: master
commit
bye

Articoli simili

 Leave a Reply

(required)

(required)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>