29.2. Configuration de clusters multi-sites avec Pacemaker
Vous pouvez configurer une configuration multi-site qui utilise le gestionnaire de tickets Booth en suivant la procédure suivante.
Ces exemples de commandes utilisent la disposition suivante :
-
Le groupe 1 est constitué des nœuds
cluster1-node1
etcluster1-node2
- L'adresse IP flottante de la grappe 1 est 192.168.11.100
-
Le groupe 2 se compose de
cluster2-node1
etcluster2-node2
- L'adresse IP flottante de la grappe 2 est 192.168.22.100
-
Le nœud d'arbitrage est
arbitrator-node
avec une adresse IP de 192.168.99.100 -
Le nom du ticket Booth utilisé dans cette configuration est le suivant
apacheticket
Ces exemples de commandes supposent que les ressources du cluster pour un service Apache ont été configurées dans le cadre du groupe de ressources apachegroup
pour chaque cluster. Il n'est pas nécessaire que les ressources et les groupes de ressources soient les mêmes sur chaque cluster pour configurer une contrainte de ticket pour ces ressources, puisque l'instance Pacemaker de chaque cluster est indépendante, mais il s'agit d'un scénario de basculement courant.
Notez qu'à tout moment de la procédure de configuration, vous pouvez entrer la commande pcs booth config
pour afficher la configuration de la cabine pour le nœud ou la grappe en cours ou la commande pcs booth status
pour afficher l'état actuel de la cabine sur le nœud local.
Procédure
Installez le paquetage
booth-site
Booth ticket manager sur chaque nœud des deux clusters.[root@cluster1-node1 ~]# dnf install -y booth-site [root@cluster1-node2 ~]# dnf install -y booth-site [root@cluster2-node1 ~]# dnf install -y booth-site [root@cluster2-node2 ~]# dnf install -y booth-site
Installez les paquets
pcs
,booth-core
, etbooth-arbitrator
sur le nœud de l'arbitre.[root@arbitrator-node ~]# dnf install -y pcs booth-core booth-arbitrator
Si vous exécutez le démon
firewalld
, exécutez les commandes suivantes sur tous les nœuds des deux clusters ainsi que sur le nœud de l'arbitre afin d'activer les ports requis par Red Hat High Availability Add-On.# firewall-cmd --permanent --add-service=high-availability # firewall-cmd --add-service=high-availability
Il se peut que vous deviez modifier les ports ouverts en fonction des conditions locales. Pour plus d'informations sur les ports requis par le module complémentaire de haute disponibilité de Red Hat, voir Activation des ports pour le module complémentaire de haute disponibilité.
Créez une configuration Booth sur un nœud d'une grappe. Les adresses que vous spécifiez pour chaque grappe et pour l'arbitre doivent être des adresses IP. Pour chaque grappe, vous devez spécifier une adresse IP flottante.
[cluster1-node1 ~] # pcs booth setup sites 192.168.11.100 192.168.22.100 arbitrators 192.168.99.100
Cette commande crée les fichiers de configuration
/etc/booth/booth.conf
et/etc/booth/booth.key
sur le nœud à partir duquel elle est exécutée.Créez un ticket pour la configuration Booth. C'est le ticket que vous utiliserez pour définir la contrainte de ressources qui permettra aux ressources de s'exécuter uniquement lorsque ce ticket a été accordé au cluster.
Cette procédure de configuration de base du basculement n'utilise qu'un seul ticket, mais vous pouvez en créer d'autres pour des scénarios plus complexes dans lesquels chaque ticket est associé à une ou plusieurs ressources différentes.
[cluster1-node1 ~] # pcs booth ticket add apacheticket
Synchroniser la configuration de Booth avec tous les nœuds de la grappe actuelle.
[cluster1-node1 ~] # pcs booth sync
À partir du nœud de l'arbitre, tirez la configuration de Booth vers l'arbitre. Si vous ne l'avez pas encore fait, vous devez d'abord vous authentifier à l'adresse
pcs
sur le nœud d'où vous tirez la configuration.[arbitrator-node ~] # pcs host auth cluster1-node1 [arbitrator-node ~] # pcs booth pull cluster1-node1
Transférez la configuration de Booth vers l'autre cluster et synchronisez tous les nœuds de ce cluster. Comme pour le nœud d'arbitrage, si vous ne l'avez pas fait auparavant, vous devez d'abord authentifier
pcs
auprès du nœud à partir duquel vous récupérez la configuration.[cluster2-node1 ~] # pcs host auth cluster1-node1 [cluster2-node1 ~] # pcs booth pull cluster1-node1 [cluster2-node1 ~] # pcs booth sync
Démarrer et activer Booth sur l'arbitre.
NoteVous ne devez pas démarrer ou activer manuellement Booth sur l'un des nœuds des clusters, car Booth fonctionne en tant que ressource Pacemaker dans ces clusters.
[arbitrator-node ~] # pcs booth start [arbitrator-node ~] # pcs booth enable
Configurez Booth pour qu'il s'exécute en tant que ressource de cluster sur les deux sites du cluster. Cela crée un groupe de ressources dont les membres sont
booth-ip
etbooth-service
.[cluster1-node1 ~] # pcs booth create ip 192.168.11.100 [cluster2-node1 ~] # pcs booth create ip 192.168.22.100
Ajoutez une contrainte de ticket au groupe de ressources que vous avez défini pour chaque cluster.
[cluster1-node1 ~] # pcs constraint ticket add apacheticket apachegroup [cluster2-node1 ~] # pcs constraint ticket add apacheticket apachegroup
Vous pouvez entrer la commande suivante pour afficher les contraintes de ticket actuellement configurées.
pcs constraint ticket [show]
Accordez le ticket que vous avez créé pour cette configuration au premier cluster.
Notez qu'il n'est pas nécessaire d'avoir défini des contraintes de ticket avant d'accorder un ticket. Une fois que vous avez accordé un ticket à un cluster, Booth prend en charge la gestion des tickets, à moins que vous ne l'annuliez manuellement avec la commande
pcs booth ticket revoke
. Pour plus d'informations sur les commandes d'administrationpcs booth
, consultez l'écran d'aide PCS pour la commandepcs booth
.[cluster1-node1 ~] # pcs booth ticket grant apacheticket
Il est possible d'ajouter ou de supprimer des tickets à tout moment, même après avoir terminé cette procédure. Cependant, après avoir ajouté ou supprimé un ticket, vous devez synchroniser les fichiers de configuration avec les autres nœuds et clusters, ainsi qu'avec l'arbitre, et accorder le ticket comme indiqué dans cette procédure.
Pour plus d'informations sur les autres commandes d'administration du kiosque que vous pouvez utiliser pour nettoyer et supprimer les fichiers de configuration, les tickets et les ressources du kiosque, consultez l'écran d'aide du PCS pour la commande pcs booth
.