LINUX:Pacemaker - ISCSI en Failover et SBD (fence)
→ retour au menu de la Haute disponibilité
But
A la configuration précédente, nous ajoutons la notion de "Fence" avec la couche SBD. Le logiciel SBD utilise un device de type Watchdog (chien de garde) qui permet d'arrêter la machine client ISCSI Initiator quand elle ne plus atteindre sa cible ISCSI de référence. Cette situation se présente, par exemple, dans le cas d'une défaillance réseau. Cette arrêt permet d'éviter des problèmes de corruptions de données sur les ressources distantes. Nous n'utiliserons qu'un serveur ISCSI Target mais nous garderons l'approche Failover.
Matériel et adressage IP
Dans notre exemple, nous utilisons un serveur ISCSI ("target") et deux clients ISCSI ("initiator"). Le schéma ci-dessous nous montre l'adressage IP et le nom de ces trois machines. En outre pour mettre la fonction Failover, une adresse IP virtuelle est ajoutée. Elle passera d'un client ISCSI à l'autre.
Le cluster Pacemaker ne comportera que les deux clients ISCSI (Initiator): "cl1.home.dom" et "cl2.home.dom".
Prérequis
Configurations de base
En premier, les Prérequis doivent être effectués.
Fichier "hosts"
Sur chaque machine du cluster, on ajoute un nom aux différentes adresses réseaux. On le fait en local dans le fichier "/etc/hosts" suivant le schéma ci-dessus. Son contenu devient:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.1.71 sv1.home.dom 192.168.1.73 cl1.home.dom 192.168.1.74 cl2.home.dom 192.168.1.75 cluster.home.dom # serveur mail 192.168.1.110 servermail.home.dom home.dom
ISCSI
Nous nous baserons sur la configuration de l'article sur ISCSI à part qu'on double le client Initiator. Mais le service "iscsi.service" ainsi que le montage du disque ISCSI "/datab" (fichier "/etc/fstab") sur les clients Initiator n'est pas lancé. C'est Pacemaker qui s'en chargera.
Nous expliciterons les quelques changements et leurs buts sera explicités par la suite.
En outre, comme nous avons ici deux clients au lieu d'un, il faut ajouter la ligne suivante dans le fichier "/etc/tgt/conf.d/diskb.conf" sur les deux machines "sv1.home.dom" et "sv2.home.dom". Elle permet à la machine "cl2.home.dom" d'accéder aux espaces ISCSI chacun avec son propre "initiator-name".
initiator-name iqn.2023-02.dom.home.sv:sv.initiator02 initiator-address 192.168.1.74
De plus, sur la machine client "cl2.home.dom" (Initiator), le fichier "/etc/iscsi/initiatorname.iscsi" contient le second InitiatorName introduit sur les machines serveurs ISCSI (target):
InitiatorName=iqn.2023-02.dom.home.sv:sv.initiator02
Sur la machine client "cl1.home.dom" (Initiator), ce même fichier reste inchangé:
InitiatorName=iqn.2023-02.dom.home.sv:sv.initiator01
→ retour au menu de la Haute disponibilité