Come creare un cluster Proxmox a due nodi

how-to-create-proxmox-two-node-cluster-01

Se un cluster Proxmox a due nodi viene configurato senza un terzo nodo, potresti riscontrare problemi in caso di guasto di un nodo o se il cluster entra in uno scenario di split-brain.

Come best practice, anche un cluster a due nodi richiede un terzo nodo che funga da quorum. Questo risultato può essere facilmente ottenuto utilizzando un computer aggiuntivo con il pacchetto corosync-qnetd installato. Un mini-PC, un Raspberry Pi e dispositivi simili sono ottimi esempi di ciò che può essere utilizzato come QDevice.

 

Creare il cluster Proxmox a due nodi

Per creare il cluster, sono richiesti due nodi Proxmox configurati con l'ultima versione installata.

Accedere al Nodo 1 inserendo le credenziali di root e cliccare su Login.

cluster Proxmox a due nodi 1

Posizionarsi in Datacenter > Cluster e cliccare su Create Cluster.

cluster Proxmox a due nodi 2

Inserire un Cluster Name e selezionare la Cluster Network per il traffico corosync. Cliccare su Create.

cluster Proxmox a due nodi 3

Il cluster è in fase di creazione.

cluster Proxmox a due nodi 4

Una volta creato, cliccare su Join Information.

cluster Proxmox a due nodi 5

Cliccare su Copy Information per copiare i dettagli richiesti per il Nodo 2.

cluster Proxmox a due nodi 6

Accedere al Nodo 2 e posizionarsi su Datacenter > Cluster. Cliccare su Join Cluster.

cluster Proxmox a due nodi 7

Incollare le informazioni nel campo Information, inserire la Password di root del Nodo 1, selezionare la Cluster Network utilizzata per il traffico corosync e cliccare su Join <cluster_name>.

cluster Proxmox a due nodi 8

Il Nodo 2 si unirà ora al cluster Proxmox.

cluster Proxmox a due nodi 9

Tornare sul Nodo 1 e verificare che il Nodo 2 sia stato aggiunto con successo.

cluster Proxmox a due nodi 10

Accedere alla Shell su uno dei nodi ed eseguire il seguente comando per verificarne lo stato:

# pvecm status

cluster Proxmox a due nodi 11

L'output del comando pvecm status nella Shell di Proxmox VE sul Nodo 1 mostra le informazioni del cluster, lo stato del quorum con 2 voti previsti e i dettagli di membership per entrambi i nodi.

In un cluster Proxmox a due nodi, se la connessione di rete tra i due nodi si interrompe, nessuno dei due nodi mantiene il quorum. Un cluster Proxmox a due nodi richiede 2 voti, il che significa che ogni nodo ha 1 voto.

Se il collegamento cade, entrambi i nodi perdono il contatto reciproco, scendendo al di sotto della soglia di quorum richiesta. Di conseguenza, i servizi del cluster si bloccano o si fermano per prevenire uno scenario di split-brain, in cui entrambi i nodi tentano di modificare lo stesso storage contemporaneamente.

 

Installare il Qdevice Proxmox

Si può utilizzare quasi qualsiasi computer come QDevice, poiché il traffico di rete è minimo e il suo unico scopo è esprimere un voto per il quorum del cluster Proxmox.

In questo esempio, come sistema operativo viene utilizzato Ubuntu Linux.

Per prima cosa, verificare che sia stato configurato un indirizzo IP statico sulla macchina Ubuntu per la comunicazione Corosync.

# ip a

cluster Proxmox a due nodi 12

Accedere al QDevice e aggiornare il sistema operativo Ubuntu.

# sudo apt update && sudo apt upgrade

cluster Proxmox a due nodi 13

Installare il pacchetto corosync-qnetd, che abilita la comunicazione con il cluster Proxmox a due nodi:

# sudo apt install corosync-qnetd

cluster Proxmox a due nodi 14

Abilitare e avviare il servizio QNetd:

# sudo systemctl enable --now corosync-qnetd

cluster Proxmox a due nodi 15

Poiché il comando di configurazione di Proxmox richiede l'accesso SSH diretto al QDevice, bisogna abilitare il login come root.

Se non è ancora stata impostata, configurare una password di root.

# sudo su
# passwd

cluster Proxmox a due nodi 16

Abilitare il login come root nel file di configurazione SSH:

# sudo sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config

cluster Proxmox a due nodi 17

Riavviare il servizio SSH per applicare le modifiche:

# sudo systemctl restart ssh

cluster Proxmox a due nodi 18

Ora modificare /etc/hosts per la risoluzione dei nomi locale.

# sudo vi /etc/hosts

cluster Proxmox a due nodi 19

Aggiungere le voci DNS corrispondenti ai nodi del tuo cluster Proxmox e al QDevice stesso.

192.168.20.120 pve01.nolabnoparty.lab pve01
192.168.20.121 pve02.nolabnoparty.lab pve02
192.168.20.125 pve-qdevice.nolabnoparty.lab pve-qdevice

cluster Proxmox a due nodi 20

Il QDevice è ora pronto per essere collegato al cluster Proxmox.

 

Aggiungere il QDevice al cluster

Verificare che le voci nel file /etc/hosts siano configurate correttamente su entrambi i nodi Proxmox.

cluster Proxmox a due nodi 21

Installare il pacchetto corosync-qdevice su entrambi i nodi Proxmox.

# apt install corosync-qdevice

cluster Proxmox a due nodi 22

Solo dal Nodo 1, eseguire il comando di configurazione utilizzando l'indirizzo IP del QDevice.

# pvecm qdevice setup 192.168.20.125

cluster Proxmox a due nodi 23

Il QDevice è ora membro del cluster e funge da componente attivo per il voto del quorum.

# pvecm status

cluster Proxmox a due nodi 24

Con questa configurazione, il cluster Proxmox a due nodi segue ora le best practice ed evita in modo sicuro scenari di split-brain.

signature

Leave a Reply