Sommaire : Introduction  Procédure - Installation - Installation de GlusterFS-server - Configuration de GlusterFS-server - Configuration du cluster Proxmox - Commande debug

 Fencing - Configuration - Modification du fichier cluster.conf - Tests Fencing  VMs et CTs en haute disponibilité  Informations utiles - Repertoires - Services - Commandes

Introduction
Proxmox est un outil de virtualisation sur serveur, ce système d'exploitation permet d'utiliser deux types virtualisation: les VM (virtual) et les CT (conteneur). Les VM sont des machines totalement virtualiser avec des disques durs virtuelles, les CT ne sont pas totalement virtualiser leurs disque dur sont des dossiers accessible depuis le stockage qui les héberge on peut ainsi modifier des paramètres sans même démarrer le CT. Proxmox permet en autre de réaliser des clusters, offrant ainsi un service de haute disponibilité. Afin d'utiliser au mieux son cluster il faut mettre en place le service GlusterFS-server. Ne pas oublier de mettre en place IPMI dans le BIOS.

Procédure
Installation Pré-requis: Vérifier dans le BIOS de chaque machine que la virtualisation soit bien activer AMD-vt, Intel vt-x. Lancer l'installation avec le cd de proxmox l'installation est assez rapide. Proxmox ne demande que peut de paramètres a configuré (Langue, clavier et réseau). La partition LVM de proxmox occupera tout l'espace disque qui sert au système. Installation de Glusterfs-server Pour installer glusterfs-server rendez-vous sur le site de glusterfs.org, allez dans la section Download, choisir le lien Latest version… Dans l'index FTP choisir de nouveau LATEST, choisr sa distribution et suivre les instructions du fichier README à exécuter sur les serveurs. readme

Configuration de glusterfs_server gluterfs config Sur un seul nœud: Identifier les autres serveurs:
#gluster peer probe [indiquer les autres serveurs]

Vérifier le status du cluster:
#gluster peer status

Création du volume: Crée un dossier sur chacun des nœuds qui servira au volume. Sur un seul noeud, crée le volume de stockage glusterfs répliqué:
#gluster volume create [Non du volume] replica [nombre de brick composant le volume] transport tcp w.x.y.z:/Directory w.x.y.z:/Directory w.x.y.z:/Directory

Démarrer le volume:
#gluster volume start [non du volume]

Commandes de debug:
#glusterfs volume status #glusterfs volume info

Configuration du Cluster proxmox Proxmox configuration Crée le cluster:
#pvecm create [nom du cluster]

Ajouter des noeuds au cluster:
#pvecm add [nom du serveur qui à crée le cluster]

Commandes debug:
#pvecm status #pvecm n (nodes) #clustat

Important ne plus modifier l'adresse ip des nœuds après la mise en cluster. Pour corriger le message à l'ouverture de session (https://bad_IP:8006) modifier le fichier /etc/hosts.

Fencing
Le fencing est ce qui va permettre au cluster de neutraliser totalement un serveur qui ne répond plus. Configuration Fichier /etc/default/redhat_cluster_pve → dé-commenter la ligne FENCE_JOIN=“yes” Pour joindre manuellement: fence_tool join voir la configuration du fencing: fence_tool ls Fichier de configuration du fencing: /etc/cluster/fence_na.conf Modification du fichier cluster.conf On va modifier le fichier cluster.conf. Il y a un système de versionning, il faut d'abord créer un nouveau fichier : cp /etc/pve/cluster.conf /etc/pve/cluster.conf.new Ensuite, on l'édite et on incrémente la version : nano /etc/pve/cluster.conf.new <cluster name=”<cluster_name>” config_version=”<version+1>”> On modifie la ligne CMAN (cluster manager redhat) : <cman keyfile=”/var/lib/pvecluster/corosync.authkey” two_node=“1” expected_votes=“1”> On déclare les interfaces IPMI, juste après la directive </clusternodes> :
<fencedevices> <fencedevice agent="fence_ipmilan" ipaddr="<ip-ipmi_node1>" login="root" name="ipminode1" passwd="<password-ipmi_root>" /> <fencedevice agent="fence_ipmilan" ipaddr="<ip-ipmi_node2>" login="root" name="ipminode2" passwd="<password-ipmi_root>" /> </fencedevices> On lie ces interfaces de fencing avec les nœud du cluster : <clusternodes> <clusternode name="<name_node1>" votes="1" nodeid="1"> <fence> <method name="1"> <device name="ipminode1"/> </method> </fence> </clusternode> <clusternode name="<name_node2>" votes="1" nodeid="2"/> <fence> <method name="1"> <device name="ipminode2"/> </method> </fence> </clusternode> </clusternodes>

Il faut maintenant activer cette nouvelle version de la configuration du cluster, connectez vous à l'interface web Proxmox. Cliquez sur “Datacenter” dans le cadre de gauche, puis sur l'onglet “HA”. Sur cet écran, vous pouvez voir la nouvelle conf, ainsi qu'un diff avec la version précédente. Cliquez sur “Activate” pour appliquer les modifications :

Test Fencing On peut tester que le fencing fonctionne. Pour cela sur le nœud 1, on lance la commande (fence_node) est le nom du nœud dans cluster.conf) :
fence_node <name_node2>

La commande doit retourner [fence <name_node2> success] et le nœud 2 doit être injoignable. On relance le nœud 2 depuis le nœud 1 avec ipmitool :
#ipmitool -H <ip-ipmi_node2> -U root -P <password-ipmi_root> power on

VMs et CTs en haute disponibilité
Pour ajouter des VMs ou des CTs en haute disponibilité il faut l'ajouter dans le fichier de configuration de proxmox et activer la nouvelle configuration.

Informations utiles
Repertoires: /etc/default /etc/pve /etc/cluster Services: cman rgmanager pve-cluster pve-manager pve-… vz Commandes: qm pour les VMs vzctl pour les CTs