Commandes de gestion d'un cluster Pacemaker/Corosync

De Travail-Ivan 2
Version datée du 7 novembre 2024 à 23:19 par Ivan (discussion | contributions)
(diff) ← Version précédente | Version actuelle (diff) | Version suivante → (diff)

Guide détaillé des commandes Pacemaker/Corosync

Installation et configuration initiale

Installation des paquets requis

apt-get install pacemaker corosync pcs psmisc pacemaker-cli-utils
  • pacemaker : Gestionnaire de ressources du cluster
  • corosync : Framework de communication du cluster
  • pcs : Outil en ligne de commande pour la configuration
  • psmisc : Utilitaires système pour la gestion des processus
  • pacemaker-cli-utils : Outils en ligne de commande additionnels pour Pacemaker

Configuration de l'authentification

passwd hacluster
  • Définit le mot de passe pour l'utilisateur hacluster
  • Cet utilisateur est utilisé pour la communication sécurisée entre les nœuds
pcs cluster auth -u hacluster -p <mot_de_passe>
  • -u hacluster : Spécifie l'utilisateur pour l'authentification
  • -p <mot_de_passe> : Spécifie le mot de passe défini précédemment
  • Cette commande authentifie les nœuds entre eux pour permettre la communication sécurisée

Commandes de gestion du cluster

Vérification de l'état du cluster

pcs status

Cette commande affiche :

  • Nom du cluster
  • État du STONITH (dispositif de sécurité)
  • Version du coordinateur de cluster (DC)
  • Liste des nœuds en ligne/hors ligne
  • État des ressources
  • État des services du cluster

Configuration des propriétés de base

pcs property set stonith-enabled=false
  • Désactive temporairement le STONITH (Shoot The Other Node In The Head)
  • Le STONITH est un mécanisme de sécurité qui permet d'arrêter un nœud défectueux
  • À utiliser uniquement en test, pas en production
pcs property set no-quorum-policy=ignore
  • Utilisé spécifiquement pour les clusters à 2 nœuds
  • Permet au cluster de continuer à fonctionner même sans quorum
  • Important : À utiliser uniquement dans les clusters à 2 nœuds
pcs resource defaults resource-stickiness=100
  • Définit la "colle" des ressources
  • Valeur de 100 : les ressources tendent à rester sur leur nœud actuel
  • Évite les failback automatiques non désirés

Gestion des ressources

Commandes d'information sur les ressources

pcs resource standards
  • Liste les standards de ressources disponibles (ocf, systemd, etc.)
  • Aide à comprendre quels types de ressources peuvent être créées
pcs resource providers
  • Affiche les fournisseurs de ressources disponibles
  • Exemple : heartbeat, pacemaker, etc.
pcs resource agents ocf:heartbeat
  • Liste tous les agents de ressources disponibles pour un provider spécifique
  • Utile pour connaître les types de ressources que l'on peut créer

Création et gestion des ressources

pcs resource create VIP1 ocf:heartbeat:IPaddr2 ip=192.168.1.155 cidr_netmask=32 op monitor interval=30s
  • create VIP1 : Crée une ressource nommée VIP1
  • ocf:heartbeat:IPaddr2 : Utilise l'agent IPaddr2 du provider heartbeat
  • ip=192.168.1.155 : Définit l'adresse IP virtuelle
  • cidr_netmask=32 : Définit le masque de sous-réseau
  • op monitor interval=30s : Configure une opération de monitoring toutes les 30 secondes
pcs resource delete VIP1
  • Supprime la ressource nommée VIP1
  • Arrête le service et retire la configuration

Déplacement et maintenance des ressources

pcs resource move SRVWEB webp
  • Déplace la ressource SRVWEB vers le nœud webp
  • Force la migration de la ressource spécifiée
pcs resource cleanup SRVFTP
  • Nettoie l'état de la ressource SRVFTP
  • Réinitialise les compteurs d'erreurs
  • Utile après la résolution d'un problème

Gestion des nœuds

pcs cluster stop webp
  • Arrête les services du cluster sur le nœud webp
  • N'affecte pas les autres nœuds du cluster
pcs cluster start webp
  • Démarre les services du cluster sur le nœud webp
  • Réintègre le nœud dans le cluster

Contraintes et relations

pcs constraint list --full
  • Affiche toutes les contraintes configurées
  • Montre les relations entre les ressources
  • Affiche les règles de placement des ressources

Surveillance et débogage

Surveillance des logs

tail -f /var/log/syslog
  • Affiche les dernières lignes du journal système
  • -f : Suit les modifications en temps réel
  • Utile pour diagnostiquer les problèmes du cluster

Bonnes pratiques

  • Toujours tester les failover dans un environnement de test
  • Documenter toutes les modifications apportées au cluster
  • Maintenir une copie de la configuration du cluster
  • Vérifier régulièrement les logs pour détecter les problèmes potentiels
  • Ne pas désactiver le STONITH en production
  • Utiliser des réseaux dédiés pour la communication du cluster