Table of Contents
CTDB
Beispiel anhand von einem 4 Node Glusterfs Cluster unter Ubuntu
Installation
apt-get install ctdb
Konfiguration
vim /etc/default/ctdb CTDB_RECOVERY_LOCK=/mnt/gluster_clients/gvol01/ctdb/lock CTDB_NODES=/etc/ctdb/nodes CTDB_PUBLIC_ADDRESSES=/etc/ctdb/public_addresses CTDB_LOGGING=file:/var/log/ctdb.log
CTDB_RECOVERY_LOCK
Ein Lockfile das von allen CTDB Nodes erreicht werden muss. Sprich hier wird ein Shared-Filesystem benötigt. Ich habe dazu das GlusterFS via FUSE auf jedem der 4 Nodes gemountet.
CTDB_NODES
Hier werden alle Nodes die am CTDB Cluster teilnehem via IP hinterlegt
vim /etc/ctdb/nodes 192.168.88.101 192.168.88.102 192.168.88.103 192.168.88.104
CTDB_PUBLIC_ADDRESSES
IPs die bei einem Ausfall einer oder auch mehrere Nodes übernommen werden sollen. Teilt man hier mehrere IPs zu versucht CTDB diese gleichmäßig über alle Nodes zu verteilen. In meinem Fall verwende ich 4 IPs die dann so verteilt werden das auf jeder Node eine aktiv ist. Fällt eine Node aus wird die IP auf eine andere Node migriert. Die Aufteilung der IPs kann man so sehr gut für ein DNS Round Robin nutzen um die Last zuverteilen.
vim /etc/ctdb/public_addresses 192.168.88.105/24 ens160 192.168.88.106/24 ens160 192.168.88.107/24 ens160 192.168.88.108/24 ens160
CTDB_LOGGING
Klassisches Logfile
Starten
Gestartet wird via init Script oder systemctl. Es empfiehlt bei den ersten Startversuchen das Logfile offen zu haben.
Befehle
Interessante Befehle sind:
ctdb status ctdb uptime ctdb ip ctdb ping -n all
