Schlagwort-Archive: cluster

Installation und Konfiguration von Pacemaker und coroync unter CentOS

Damit das Primary device aus dem Artikel automatisch gesetzt werden kann, müssen die folgenden Softwarepakete installiert werden.

yum install pacemaker corosync pcs cman

Für die gegenseitige Authentifizierung der beiden Systeme wird über corosync-keygen ein authkey erstellt und unter /etc/corosync/authkey abgelegt. Der authkey muss nur auf einem System erstellt werden und wird dann auf das andere System kopiert.

Im Anschluss die Datei etc/corosync/corosync.conf.example nach etc/corosync/corosync.conf kopieren und die IP Adresse anpassen.
# Please read the corosync.conf.5 manual page
compatibility: whitetank

totem {
version: 2
secauth: off
threads: 0
interface {
ringnumber: 0
bindnetaddr: 192.168.1.1
mcastaddr: 226.94.1.1
mcastport: 5405
ttl: 1
}
}

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
}

Ich verwende in diesem Beispiel die IP-Adresse, die ich auch für die drbd Devices verwendet habe. Neben der corosync.conf wird auch die /etc/cluster/cluster.conf benötigt:

<cluster name="clusterOne" config_version="2">
<cman two_node="1" expected_votes="1"/>
<clusternodes>
<clusternode name="drbd1" nodeid="1">
<fence>
</fence>
</clusternode>
<clusternode name="drbd2" nodeid="2">
<fence>
</fence>
</clusternode>
</clusternodes>
<fencedevices>
</fencedevices>
<rm>
</rm>
</cluster>

Damit die clustersoftware ohne Probleme gestartet werden kann, müssen die IP Adressen von drbd1 und drbd2 in der /etc/hosts hinterlegt werden. Ansonsten könnte es zu folgenden Fehler kommen:

Starting cman... Can't determine address family of nodenameUnable to set mcast_name
Unable to get the configuration
Can't determine address family of nodename
cman_tool: corosync daemon didn't start Check cluster logs for details
[FEHLGESCHLAGEN]

Neben den gerade aufgeführten Dateien muss noch die Datei /etc/corosync/service.d/pcmk mit folgendem Inhalt erstellt werden.
service {
# Load the Pacemaker Cluster Resource Manager
name: pacemaker
ver: 1
}

Als letzten Punkt noch die folgenden Befehle auf der Kommandozeile ausführen.
echo "CMAN_QUORUM_TIMEOUT=0" >> /etc/sysconfig/cman
pcs property set stonith-enabled=false

Das ganze wird dann über /etc/init.d/pacemaker start gestartet und über pcs status kann festgestellt werden ob die Nodes (drbd1 + drbd2) online sind.
pcs status
Cluster name: clusterOne
Last updated: Thu May 1 21:29:21 2014
Last change: Thu May 1 21:28:07 2014 via cibadmin on drbd2
Stack: cman
Current DC: drbd2 - partition with quorum
Version: 1.1.10-14.el6_5.3-368c726
2 Nodes configured
0 Resources configured

Online: [ drbd1 drbd2 ]

Full list of resources:

Im nächsten Artikel geht es um die Konfiguration des drbd in Pacemaker.