Créer un cluster, Corosync multi-liens, nœud QDevice¶
Créer un cluster Proxmox VE avec deux liens Corosync sur des réseaux physiques distincts, joindre les nœuds, puis ajouter un QDevice quand le nombre de nœuds est pair (cas type : 2 nœuds ZFS répliqués).
Avant de toucher la prod
- Tous les nœuds installés dans la même version (
pveversion), à jour, heure synchronisée. - Nœuds à joindre vides : aucune VM ni CT. Leur
/etc/pvesera écrasé par celui du cluster. - Résolution de noms correcte :
hostname -irenvoie l'IP de management sur chaque nœud. - Deux réseaux Corosync prévus :
link0dédié (ex.10.10.10.0/24),link1de secours sur un autre switch (ex. management192.168.1.0/24). - Latence entre nœuds inférieure à 5 ms sur chaque lien (
ping -c 100). - Nom de cluster choisi : il ne peut pas être changé ensuite.
- Pour le QDevice : machine externe Debian (ou PBS) joignable en TCP 5403, accès root SSH temporaire.
La création du cluster et le QDevice touchent Corosync : pour les contrats N2 et N3, cette procédure est exécutée par le MSP.
Étapes¶
1. Créer le cluster sur pve01¶
Datacenter → Cluster → Create Cluster. Saisir le nom (clu-client), choisir Link 0 = 10.10.10.1, cliquer Add pour Link 1 = 192.168.1.11. Valider.
2. Joindre pve02 et pve03¶
Sur pve01 : Datacenter → Cluster → Join Information → Copy Information.
Sur pve02 : Datacenter → Cluster → Join Cluster, coller l'information, saisir le mot de passe root de pve01, choisir les adresses locales de Link 0 (10.10.10.2) et Link 1 (192.168.1.12). Valider. Attendre la fin avant de joindre pve03.
3. Ajouter un QDevice (nombre pair de nœuds)¶
Cas type : pve01 + pve02, arbitre sur qdev01 (192.168.1.50).
# sur qdev01 (hors cluster)
apt install corosync-qnetd
# sur TOUS les nœuds du cluster
apt install corosync-qdevice
# sur un seul nœud, tous les nœuds en ligne
pvecm qdevice setup 192.168.1.50
La commande copie les clés SSH et les certificats vers qdev01. L'accès root SSH peut ensuite être retiré sur qdev01.
Vérifications
pvecm status
# Transport: knet
# Secure auth: on
# Quorate: Yes
# Expected votes: 3 (2 nœuds + QDevice)
# Quorum: 2
# Flags: Quorate Qdevice
# Nodeid Votes Qdevice Name
# 0x1 1 A,V,NMW 10.10.10.1 (local)
# 0x0 1 Qdevice
corosync-cfgtool -s
# LINK ID 0 ... connected ; LINK ID 1 ... connected pour chaque nœud
Les drapeaux A (connecté à qnetd) et V (vote accordé) doivent apparaître sur chaque nœud.
Rollback
- QDevice :
pvecm qdevice remove, puis désinstallercorosync-qdevicesi besoin. - Nœud joint par erreur : il ne se « déjoint » pas simplement. Suivre Ajouter, retirer, réinstaller un nœud.
- Lien Corosync mal choisi : modification de
/etc/pve/corosync.conf(incrémenterconfig_version), opération réservée au MSP.
Pièges vus en support
link1sur le même switch quelink0: la redondance n'existe que sur le papier.- Corosync sur le réseau Ceph ou de migration en lien principal : pertes de quorum sous charge.
- Joindre un nœud contenant déjà des VM : refus, ou VMID en conflit.
- Ajouter ou retirer un nœud avec un QDevice actif : retirer d'abord le QDevice (
pvecm qdevice remove), puis le reconfigurer. - QDevice installé dans une VM hébergée par le cluster lui-même.
- Bond Corosync en
balance-rroubalance-alb: préférer deux liens Corosync séparés, ouactive-backup.
Quand ouvrir un ticket iTop
Toute création de cluster sur un contrat N2/N3 : demande planifiée P4. Échec de pvecm add, lien Corosync disconnected, QDevice en NA ou NV : P2. Joindre pvecm status, corosync-cfgtool -s, journalctl -u corosync -u pve-cluster --since "1 hour ago".