Grappe Proxmox VE 4.x

Aller à la navigation Aller à la recherche
Yellowpin.svg Remarque : La plupart des informations ont été déplacées vers notre documentation de référence plus à jour , voir Cluster Manager .

introduction

Le cluster Proxmox VE 4.x (et toutes les versions supérieures) permet la gestion centralisée de plusieurs serveurs physiques. Un cluster Proxmox VE se compose de plusieurs nœuds (jusqu'à 32 nœuds physiques, probablement plus, en fonction de la latence du réseau).

Caractéristiques principales

  • Gestion Web centralisée, y compris console sécurisée
  • Prise en charge de plusieurs sources d'authentification (par exemple, local, MS ADS, LDAP, ...)
  • Gestion des autorisations basée sur les rôles pour tous les objets (VM, stockages, nœuds, etc.)
  • Crée des clusters multi-maîtres
  • Système de fichiers Proxmox Cluster (pmxcfs) : système de fichiers basé sur une base de données pour le stockage des fichiers de configuration, répliqué en temps réel sur tous les nœuds à l'aide de corosync (taille maximale de 30 Mo)
  • Migration de machines virtuelles entre hôtes physiques
  • Journalisation à l'échelle du cluster
  • API Web RESTful
  • Auto-clôture comme méthode prête à l'emploi (il est également possible d'utiliser une clôture électrique ou en réseau).
  • Déploiement rapide
  • Pare-feu à l'échelle du cluster
  • Migration de conteneur Linux

Conditions

REMARQUE : Il n'est pas possible de mélanger Proxmox VE 3.x et versions antérieures avec le cluster Proxmox VE 4.0

  • Tous les nœuds doivent se trouver sur le même réseau car corosync utilise la multidiffusion IP pour communiquer entre les nœuds (voir aussi Corosync Cluster Engine ). Remarque : certains commutateurs ne prennent pas en charge la multidiffusion IP par défaut et doivent d'abord être activés manuellement. Voir les notes de multidiffusion pour plus d'informations sur la multidiffusion.
  • La date et l'heure doivent être synchronisées.
  • Le tunnel SSH sur le port 22 entre les nœuds est utilisé.
  • Si vous êtes également intéressé par la haute disponibilité, pour un quorum fiable, vous devez avoir au moins 3 nœuds actifs à tout moment (tous les nœuds doivent avoir la même version).
  • Si le stockage partagé est utilisé, une carte réseau dédiée au trafic est nécessaire.

Grappe Proxmox VE

Tout d'abord, installez le Proxmox VE sur tous les nœuds, voir Installation . Assurez-vous que chaque nœud Proxmox VE est installé avec le nom d'hôte final et la configuration IP. La modification du nom d'hôte et de l'adresse IP n'est pas possible après la création du cluster.

Actuellement, la création du cluster doit être effectuée sur la console, vous pouvez vous connecter au nœud Proxmox VE via ssh.

Tous les réglages peuvent être effectués via "pvecm", le toolkit Proxmox VE Cluster manager .

Créer le cluster

Connectez-vous via ssh au premier nœud Proxmox VE. Utilisez un nom unique pour votre cluster, ce nom ne pourra pas être modifié ultérieurement.

Créer:

hp1# pvecm créer VOTRE-NOM-CLUSTER

Pour vérifier l'état du cluster :

hp1# état pvecm

Ajouter des nœuds au cluster

Connectez-vous via ssh aux autres nœuds Proxmox VE. Veuillez noter que les nœuds ne peuvent contenir aucune VM. (Si oui, vous obtiendrez des conflits avec des VMID identiques - pour contourner le problème, utilisez vzdump pour sauvegarder et restaurer sur un VMID différent après la configuration du cluster).

AVERTISSEMENT : l'ajout d'un nœud au cluster supprimera son /etc/pve/storage.cfg actuel. Si vous avez des machines virtuelles stockées sur le nœud, soyez prêt à rajouter vos emplacements de stockage si nécessaire. Même si les emplacements de stockage disparaissent de l'interface graphique, vos données sont toujours là.

Ajoutez le nœud actuel au cluster :

hp2# pvecm add IP-ADDRESS-CLUSTER

Pour IP-ADDRESS-CLUSTER, utilisez une adresse IP d'un nœud de cluster existant.

Pour vérifier l'état du cluster :

état pvecm hp2#

Affichez l'état du cluster :

état pvecm hp2#
Informations sur le quorum
------------------
Date : lun. 20 avril 12:30:13 2015
Fournisseur de quorum : corosync_votequorum
Nœuds : 4
ID de nœud : 0x00000001
ID de bague : 1928
Quorat : Oui

Informations sur le quorum de vote
----------------------
Votes attendus : 4
Plus haut attendu : 4
Total des votes : 4
Quorum : 2  
Drapeaux : Quorate

Informations sur l'adhésion
----------------------
    Nodeid Votes Nom
0x00000001 1 192.168.15.91
0x00000002 1 192.168.15.92 (local)
0x00000003 1 192.168.15.93
0x00000004 1 192.168.15.94

Affichez les nœuds du cluster :

hp2# nœuds pvecm

Informations sur l'adhésion
----------------------
    Nodeid Votes Nom
         1 1 ch1
         2 1 cv2 (locale)
         3 1 ch3
         4 1 ch4

Supprimer un nœud de cluster

Lisez attentivement la procédure avant de continuer, car cela ne pourrait pas être ce que vous voulez ou ce dont vous avez besoin.

Déplacez toutes les machines virtuelles du nœud, utilisez simplement la gestion Web centrale pour migrer ou supprimer toutes les machines virtuelles. Assurez-vous de ne pas conserver de sauvegardes locales ou enregistrez-les en conséquence.

Connectez-vous à un nœud restant via ssh. Exécutez une commande pvecm nodes pour identifier le nodeID :

hp1# état pvecm

Informations sur le quorum
------------------
Date : lun. 20 avril 12:30:13 2015
Fournisseur de quorum : corosync_votequorum
Nœuds : 4
ID de nœud : 0x00000001
ID de bague : 1928
Quorat : Oui

Informations sur le quorum de vote
----------------------
Votes attendus : 4
Plus haut attendu : 4
Total des votes : 4
Quorum : 2  
Drapeaux : Quorate

Informations sur l'adhésion
----------------------
    Nodeid Votes Nom
0x00000001 1 192.168.15.91 (local)
0x00000002 1 192.168.15.92
0x00000003 1 192.168.15.93
0x00000004 1 192.168.15.94

ATTENTION : à ce stade, vous devez éteindre le nœud à supprimer et vous assurer qu'il ne se rallumera pas (dans le réseau) tel quel.

hp1# nœuds pvecm

Informations sur l'adhésion
----------------------
    Nodeid Votes Nom
         1 1 ch1 (locale)
         2 1 ch2
         3 1 ch3


Connectez-vous à un nœud restant via ssh. Émettez la commande delete (ici suppression du nœud hp2) :

hp1# pvecm delnode hp2

Si l'opération réussit, aucune sortie n'est renvoyée, vérifiez à nouveau la liste des nœuds avec 'pvecm nodes' (ou simplement 'pvecm n'), vous devriez voir quelque chose comme :

hp1# état pvecm
Informations sur le quorum
------------------
Date : lun. 20 avril 12:44:28 2015
Fournisseur de quorum : corosync_votequorum
Nœuds : 3
ID de nœud : 0x00000001
ID de l'anneau : 1992
Quorat : Oui

Informations sur le quorum de vote
----------------------
Votes attendus : 3
Plus haut attendu : 3
Total des votes : 3
Quorum : 3  
Drapeaux : Quorate

Informations sur l'adhésion
----------------------
    Nodeid Votes Nom
0x00000001 1 192.168.15.90 (local)
0x00000002 1 192.168.15.91
0x00000003 1 192.168.15.92

ATTENTION : comme dit plus haut, il est très important d'éteindre le node avant de le retirer, et de s'assurer qu'il ne se rallumera pas (dans le réseau) tel quel.

Si vous allumez le nœud tel quel, votre cluster sera foiré et il pourrait être difficile de restaurer un état de cluster propre.

Si pour une raison quelconque vous souhaitez que ce serveur rejoigne à nouveau le même cluster, vous devez

  • réinstaller pve dessus à partir de zéro
  • réinstallez-le en tant que nouveau nœud
  • puis rejoignez-le, comme indiqué dans la section précédente.

En vous référant à l'exemple ci-dessus, vous pouvez créer un nouveau nœud hp5 , qui rejoindra ensuite le cluster.

Réinstaller un nœud de cluster

Préparer le nœud pour la réinstallation

Supprimez toutes les machines virtuelles du nœud en les transférant vers d'autres nœuds ou en créant une sauvegarde sur un stockage externe et en les supprimant du nœud.

Arrêtez les services suivants :

systemctl arrêter pvestatd.service
systemctl arrêter pvedaemon.service
systemctl stop pve-cluster.service


Sauvegarder la configuration du nœud et du cluster
Backup /var/lib/pve-cluster/

tar -czf /root/pve-cluster-backup.tar.gz /var/lib/pve-cluster

Backup /root/.ssh/ , il y a deux liens symboliques ici vers la configuration pve partagée authorized_keys et authorized_keys.orig, ne vous inquiétez pas encore pour ces deux car ils sont stockés dans /var/lib/pve-cluster/

tar -czf /root/ssh-backup.tar.gz /root/.ssh

Sauvegarde /etc/corosync/

tar -czf /root/corosync-backup.tar.gz /etc/corosync

Sauvegarder /etc/hosts/

cp /etc/hosts /racine/

Sauvegarder /etc/network/interfaces

cp /etc/network/interfaces /racine/

Le cas échéant, n'oubliez pas non plus les paramètres liés à iSCSI et multipath (/etc/iscsi/initiatorname.iscsi /etc/iscsi/iscsid.conf et /etc/multipath.conf sont des fichiers que l'on souhaite conserver pour une future aide de référence dans la configuration de la nouvelle installation)

Sauvegardez les fichiers sur votre ordinateur client via SCP (ou une clé USB).
Liste des fichiers à copier :

  • /root/pve-cluster-backup.tar.gz
  • /root/ssh-backup.tar.gz
  • /root/corosync-backup.tar.gz
  • /racine/hôtes
  • /racine/interfaces


Réinstaller le nœud

  • Arrêter le serveur
  • Si vous utilisez plusieurs interfaces eth et LACP ou une sorte d'équilibrage de charge, vous devez configurer le premier port du commutateur en mode unique (pas de LACP) pour permettre à la configuration réseau standard de proxmox de se connecter au réseau.
  • Réinstallez. Assurez-vous que le nom d'hôte est le même qu'avant de continuer.
  • Activez à nouveau la licence si vous en avez.
  • Installez les mises à jour, pour obtenir le même niveau de correctif que les autres nœuds.


Restaurer la configuration du nœud et du cluster
Copiez les fichiers de configuration dans le dossier /root via SCP ou depuis la clé USB.
Restaurer /etc/hosts/

cp /root/hosts /etc/hosts 

Restaurer /etc/network/interfaces

cp /root/interfaces /etc/network/interfaces 

IMPORTANT
Assurez-vous d'avoir la bonne configuration de commutateur au cas où vous utiliseriez des vlans, des attributions de ports spécifiques ou LACP !
Si vous utilisez OVS (OpenvSwitch), vous devez installer le package avant le redémarrage.

apt-get install openvswitch-switch

Redémarrer le serveur

Arrêtez les services suivants :

systemctl arrêter pvestatd.service
systemctl arrêter pvedaemon.service
systemctl stop pve-cluster.service

Restaurer les fichiers dans /root/.ssh/

cd / ; tar -xzf /root/ssh-backup.tar.gz

Remplacez /var/lib/pve-cluster/ par votre copie de sauvegarde

rm -rf /var/lib/pve-cluster
cd / ; tar -xzf /root/pve-cluster-backup.tar.gz

Remplacez /etc/corosync/ par votre copie de sauvegarde

rm -rf /etc/corosync
cd / ; tar -xzf /root/corosync-backup.tar.gz

Démarrer pve-cluster

systemctl démarrer pve-cluster.service

Restaurez les deux liens symboliques ssh :

ln -sf /etc/pve/priv/authorized_keys /root/.ssh/authorized_keys
ln -sf /etc/pve/priv/authorized_keys /root/.ssh/authorized_keys.orig

Démarrez le reste des services :

systemctl démarrer pvestatd.service
systemctl démarrer pvedaemon.service

Rajoutez le nœud au cluster pour mettre à jour les clés, puis mettez à jour les certificats

pvecm ajouter xxx.xxx.xxx.xxx -force
certificats de mise à jour pvecm

Accepter (à nouveau) les clés ssh d'autres nœuds Cela peut ne pas être nécessaire, mais peut être nécessaire dans certains cas pour que cela fonctionne sans erreur !
De plus, vous devrez établir une connexion ssh depuis chaque autre nœud du cluster vers le nœud réinstallé via ssh pour accepter la nouvelle clé d'hôte.
Si vous avez plusieurs sous-réseaux configurés dans vos nœuds, assurez-vous que vous accédez à la bonne adresse IP via ssh.

ssh xxx.xxx.xxx.xxx
........ Oui

Travailler avec le cluster Proxmox VE

Vous pouvez maintenant commencer à créer des machines virtuelles sur vos nœuds de cluster en utilisant la gestion Web centrale sur n'importe quel nœud.

Dépannage

Général

  • La date et l'heure doivent être synchronisées (cochez "ntpdc -p")
  • Vérifiez /etc/hosts pour une adresse IP réelle d'un système

Réseau de grappes

Réseau de cluster séparé

Tutoriels vidéos