8.2. Ajouter ou supprimer un nœud
Cette section décrit comment supprimer un nœud d'un cluster et comment ajouter un nœud à un cluster. Vous pouvez supprimer un nœud d'un cluster selon la Section 8.2.1, « Supprimer un nœud d'un cluster ». Vous pouvez ajouter un nœud à un cluster selon la Section 8.2.2, « Ajouter un nœud à un cluster ».
8.2.1. Supprimer un nœud d'un cluster
Supprimer un nœud d'un cluster consiste en la fermeture du logiciel du cluster sur le nœud à supprimer et en la mise à jour de la configuration du cluster pour refléter la modification.
Important
Si la suppression d'un nœud du cluster cause une transition de plus de deux nœuds à deux nœuds, vous devrez redémarrer le logiciel du cluster sur chaque nœud après avoir mis à jour le fichier de configuration du cluster.
Pour supprimer un nœud d'un cluster, procédez aux étapes suivantes :
- Sur n'importe quel nœud, utilisez l'utilitaire
clusvcadm
pour déplacer, migrer, ou arrêter chaque service HA en cours de suppression du cluster qui est exécuté sur le nœud. Pour obtenir plus d'informations sur l'utilisation declusvcadm
, reportez-vous à la Section 8.3, « Gérer les services High-Availability ». - Sur le nœud à supprimer du cluster, arrêtez le logiciel du cluster selon la Section 8.1.2, « Arrêter un logiciel de cluster ». Par exemple :
[root@example-01 ~]#
service rgmanager stop
Stopping Cluster Service Manager: [ OK ] [root@example-01 ~]#service gfs2 stop
Unmounting GFS2 filesystem (/mnt/gfsA): [ OK ] Unmounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service clvmd stop
Signaling clvmd to exit [ OK ] clvmd terminated [ OK ] [root@example-01 ~]#service cman stop
Stopping cluster: Leaving fence domain... [ OK ] Stopping gfs_controld... [ OK ] Stopping dlm_controld... [ OK ] Stopping fenced... [ OK ] Stopping cman... [ OK ] Waiting for corosync to shutdown: [ OK ] Unloading kernel modules... [ OK ] Unmounting configfs... [ OK ] [root@example-01 ~]# - Sur n'importe quel nœud dans le cluster, modifiez
/etc/cluster/cluster.conf
pour supprimer la sectionclusternode
du nœud à supprimer. Par exemple, dans l'Exemple 8.1, « Configuration d'un cluster à trois nœuds », si node-03.example.com est censé être supprimé, alors supprimez la sectionclusternode
pour ce nœud. Si la suppression d'un (ou plusieurs) nœud(s) cause au cluster de devenir un cluster à deux nœuds, vous pouvez ajouter la ligne suivante au fichier de configuration afin de permettre à un nœud unique de maintenir le quorum (au cas où un nœud échoue) :<cman two_node="1" expected_votes="1"/>
Reportez-vous à la Section 8.2.3, « Exemples de configurations à deux nœuds et à trois nœuds » pour une comparaison entre une configuration à deux nœuds et une configuration à trois nœuds. - Mettez à jour l'attribut
config_version
en incrémentant sa valeur (par exemple, en la modifiant deconfig_version="2"
àconfig_version="3">
). - Enregistrez
/etc/cluster/cluster.conf
. - (Optional) Validez le fichier mis à jour sur le schéma du cluster (
cluster.rng
) en exécutant la commandeccs_config_validate
. Par exemple :[root@example-01 ~]#
ccs_config_validate
Configuration validates - Exécutez la commande
cman_tool version -r
pour propager la configuration au reste des nœuds de cluster. - Vérifiez que le fichier de configuration mis à jour a été propagé.
- Si le décompte des nœuds du cluster est passé de plus de deux nœuds à deux nœuds, vous devrez redémarrer le logiciel du cluster comme suit :
- Sur chaque nœud, arrêtez le logiciel du cluster selon la Section 8.1.2, « Arrêter un logiciel de cluster ». Par exemple :
[root@example-01 ~]#
service rgmanager stop
Stopping Cluster Service Manager: [ OK ] [root@example-01 ~]#service gfs2 stop
Unmounting GFS2 filesystem (/mnt/gfsA): [ OK ] Unmounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service clvmd stop
Signaling clvmd to exit [ OK ] clvmd terminated [ OK ] [root@example-01 ~]#service cman stop
Stopping cluster: Leaving fence domain... [ OK ] Stopping gfs_controld... [ OK ] Stopping dlm_controld... [ OK ] Stopping fenced... [ OK ] Stopping cman... [ OK ] Waiting for corosync to shutdown: [ OK ] Unloading kernel modules... [ OK ] Unmounting configfs... [ OK ] [root@example-01 ~]# - Sur chaque nœud, démarrez le logiciel du cluster selon la Section 8.1.1, « Démarrer un logiciel de cluster ». Par exemple :
[root@example-01 ~]#
service cman start
Starting cluster: Checking Network Manager... [ OK ] Global setup... [ OK ] Loading kernel modules... [ OK ] Mounting configfs... [ OK ] Starting cman... [ OK ] Waiting for quorum... [ OK ] Starting fenced... [ OK ] Starting dlm_controld... [ OK ] Starting gfs_controld... [ OK ] Unfencing self... [ OK ] Joining fence domain... [ OK ] [root@example-01 ~]#service clvmd start
Starting clvmd: [ OK ] Activating VG(s): 2 logical volume(s) in volume group "vg_example" now active [ OK ] [root@example-01 ~]#service gfs2 start
Mounting GFS2 filesystem (/mnt/gfsA): [ OK ] Mounting GFS2 filesystem (/mnt/gfsB): [ OK ] [root@example-01 ~]#service rgmanager start
Starting Cluster Service Manager: [ OK ] [root@example-01 ~]# - Sur n'importe quel nœud de cluster, exécutez
cman_tool nodes
pour vérifier que les nœuds fonctionnent en tant que membres dans le cluster (décrit comme « M » dans la colonne du statut « Sts »). Par exemple :[root@example-01 ~]#
cman_tool nodes
Node Sts Inc Joined Name 1 M 548 2010-09-28 10:52:21 node-01.example.com 2 M 548 2010-09-28 10:52:21 node-02.example.com - Sur tout nœud, vérifiez que les services HA fonctionnent bien comme prévu à l'aide de l'utilitaire
clustat
. En outre,clustat
affiche le statut des nœuds du cluster. Par exemple :[root@example-01 ~]#
clustat
Cluster Status for mycluster @ Wed Nov 17 05:40:00 2010 Member Status: Quorate Member Name ID Status ------ ---- ---- ------ node-02.example.com 2 Online, rgmanager node-01.example.com 1 Online, Local, rgmanager Service Name Owner (Last) State ------- ---- ----- ------ ----- service:example_apache node-01.example.com started service:example_apache2 (none) disabled