3.4. Activation exclusive d'un Groupe de volumes dans un cluster
La procédure suivante configure le groupe de volumes afin que seul le cluster puisse activer le groupe de volumes, et que le groupe de volumes ne puisse pas être activé en dehors du cluster au démarrage. Si le groupe de volumes est activé par un système en dehors du cluster, il y a un risque de corruption des métadonnées du groupe de volumes.
Cette procédure modifie l'entrée de
volume_list
dans le fichier de configuration /etc/lvm/lvm.conf
. Les groupes de volume listés dans volume_list
peuvent être automatiquement activés sur le noeud local en dehors du contrôle du gestionnaire de cluster. Les groupes de volumes associés au répertoires d'accueil et root local doivent être inclus dans cette liste. Tous les groupes de volumes gérés par le gestionnaire de cluster doivent être exclus de l'entrée volume_list
. Notez bien que cette procédure ne nécessite pas la commande clvmd
.
Effectuer la même procédure pour chaque noeud du cluster.
- Exécutez la commande suivante pour que
locking_type
soit sur 1 etuse_lvmetad
sur 0 dans le fichier/etc/lvm/lvm.conf
. Cette commande désactive et stoppe également les processuslvmetad
immédiatement.#
lvmconf --enable-halvm --services --startstopservices
- Déterminez quels groupes de volumes sont actuellement configurés sur votre espace de stockage local par la commande suivante. Cela affichera une liste des groupes de volume actuellement configurés. Si vous avez de l’espace alloué dans les groupes de volumes distincts pour root et votre répertoire d'accueil sur ce nœud, vous verrez ces volumes dans la sortie, comme dans cet exemple.
#
vgs --noheadings -o vg_name
my_vg rhel_home rhel_root - Ajouter les groupes de volumes autres que
my_vg
(le groupe de volumes que vous venez de définir pour le cluster) comme entrées dansvolume_list
dans le fichier de configuration/etc/lvm/lvm.conf
. Ainsi, si vous avez de l’espace alloué dans des groupes de volumes distincts pour root et pour votre répertoire d'accueil, vous pourrez dé-commenter la lignevolume_list
du fichierlvm.conf
et ajouter ces groupes de volumes en tant qu’entrées dansvolume_list
comme suit :volume_list = [ "rhel_root", "rhel_home" ]
Note
Si aucun groupe de volume local n'est présent sur un noeud restant à activer en dehors du gestionnaire du cluster, vous devrez toujours initialiser l'entréevolume_list
en tant quevolume_list = []
. - Reconstruire l'image de démarrage
initramfs
pour garantir que l'image de démarrage n'essaiera pas d'activer un groupe de volumes contrôlée par le cluster, Mettez à jour le périphériqueinitramfs
par la commande suivante. Cette commande met une minute à se compléter.#
dracut -H -f /boot/initramfs-$(uname -r).img $(uname -r)
- Redémarrez le nœud.
Note
Si vous avez installé un nouveau noyau Linux après avoir démarré le nœud sur lequel vous avez créé l’image de démarrage, la nouvelle imageinitrd
sera pour le noyau qui était en cours lors de sa création et non pas pour le nouveau noyau qui exécute lorsque vous redémarrez le nœud. Vous pouvez vous assurer que le périphériqueinitrd
qui convient est utilisée en exécutant la commandeuname - r
avant et après le redémarrage pour déterminer la version de noyau qui est en cours d’exécution. Si les versions ne sont pas les mêmes, mettez à jour le fichierinitrd
après le redémarrage avec le nouveau noyau, puis, redémarrez le nœud. - Lorsque le nœud a redémarré, vérifiez si les services de cluster ont démarré à nouveau sur ce nœud en exécutant la commande
pcs statut de cluster
sur ce nœud. Si vous obtenez le messageError: cluster is not currently running on this node
, alors exécutez la commande suivante.#
pcs cluster start
Sinon, attendez d'avoir redémarré chaque noeud du cluster et les services de cluster sur tous les nœuds du cluster par la commande suivante.#
pcs cluster start --all