In questo articolo ti mostreremo come aggiornare Proxmox 7.0, partendo da una versione 6.4, e Ceph Pacific 16.2.4

 

Contenuti dell’articolo:

 

  1. Ambiente utilizzato per aggiornare Proxmox e Ceph 
  2. Novità Proxmox 7.0
  3. Passi propedeutici per l’aggiornamento Proxmox 7.0
  4. Come aggiornare Proxmox 6.4-13
  5. Come aggiornare Ceph Octopus 15.2
  6. Come aggiornare Proxmox 7.0
  7. Come aggiornare Ceph Pacific 16.2.4

 

  • Siamo partiti da un cluster 6.4-6
  • Ceph versione Nautilus 15.2

 

Hardware utilizzato:
L’aggiornamento viene fatto sul Cluster Proxmox 3 Nodi con Ceph

 

Leggi anche Come creare un Cluster Proxmox con Ceph

 

Qui di seguito troverai le principali novità.

 

  • QEMU 6.0 con io_uring per gestione dei dischi delle VM senza riferimenti
  • OpenZFS 2.0.4
  • Nuovo Ceph Pacific 16.2
  • Storage Btrfs con snapshot, build-in RAID.
  • Gestione repository da interfaccia web
  • Single Sign-on con OpenID Connect
  • Plugin per supporto dual stack IPV4 e IPV6
  • Ifupdown2 istallato di default
  • chrony come demone NTP di default
  • Bug fixed in generale

 

In questa guida ufficiale puoi trovare tutte le informazioni più nello specifico.

 

  1. Passi propedeutici per l’aggiornamento Proxmox 7.0

 

Per aggiornare Proxmox 7.0, occorre seguire dei passi ben precisi ed avere, al momento dell’aggiornamento, un ambiente con:

 

  • Proxmox 6 ultima versione disponibile (per noi la 6.4-13)
  • Ceph Octopus 15.2

 

Una volta che abbiamo l’ambiente configurato in questo modo, potremmo continuare con l’aggiornamento Proxmox  e Ceph.

 

Per verificare la versione di Ceph, eseguire il comando

 

Copy

 

Come aggiornare Proxmox 6.4-13

 

Aggiornare proxmox usando la solita procedura da interfaccia web oppure esegure da riga di comando

 

Copy

 

Copy

 

  1. Aggiornamento Ceph Octopus 15.2

 

Attenzione. Questi sono passi da fare parallelamente su tutti i nodi.

 

a. Aggiornare i repository alla versione Octopus, eseguire (ogni nodo):

 

Copy

 

b. Verificare che sia stato aggiornato correttamente il file

 

Copy

 

c. Settare il flag ‘noout’, eseguire (ogni nodo):

 

Copy

 

d. Eseguire l’aggiornamento (ogni nodo)

 

Copy

 

Copy

 

e. Controllo stato Ceph

 

Dopo il comando apt full-upgrade, vediamo che lo stato di Ceph risulta essere OK, ma suggerisce di riavviare i servizi per attivare la nuova versione.

 

Aggiornamento Proxmox 7.0 e Ceph Pacific 16.2.4

 

f. È necessario ora riavviare i monitor ceph, eseguire (ogni nodo)

 

Copy

 

Dalla dashboard verificare lo stato dei Monitors e Managers 

 

Aggiornamento Proxmox 7.0 e Ceph Pacific 16.2.4

 

g. Verificare che l’aggiornamento di ogni monitor sia completato

 

Copy

 

Verificare che l’output sia una cosa del tipo

 

Copy

 

h. Riavviare il ceph manager, eseguire (ogni nodo)

 

Copy

 

i. Verificare che ogni ceph manager sia running, eseguendo

 

Copy

 

j. Riavviamo ora ogni OSD separatamente per ogni nodo, eseguendo (ogni nodo).

 

Attenzione: dopo aver lanciato il comando sul nodo, attendi che tutti i PG siano nello stato di “active+clean”. Una volta che sono tutti “active+clean” passa al nodo successivo.

 

Copy

 

k. Verificatiamo lo stato del cluster, o da Dashboard di Ceph oppure eseguendo il comando

 

Copy

 

Controllare che sia nello stato di HEALTH_OK. È possibile che sia anche nello stato

 

HEALTH_WARN

 

noout flag(s) set

 

Ma nulla di preoccupante

 

l. Disabilitare la conversione automatica, eseguendo (ogni nodo)

 

Copy

 

m. Abilitare Octopus, eseguendo

 

Copy

 

n. De-settare il flag ‘noout’, eseguire (ogni nodo)

 

Copy

 

o. Se sono presenti dei messaggi di HEALTH inerenti a Ceph, eseguire

 

Copy

 

p. Anche se non sono presenti alert, è consigliabile passare ogni CRUSH buckets a straw2, in quale era stato aggiunto nella release Hammer. Eseguire

 

Copy

 

Copy

 

Copy

 

q. In caso di problemi è possibile tornare al backp precedente, eseguendo

 

Copy

 

r. Abilitare il protocollo di rete v2, eseguendo (ogni nodo)

 

Copy

 

Verificare che vi sia anche la v2, oltre che la v1, eseguendo

 

Copy

 

s. Abilitare PG autoscaling

 

Prima di abilitare l’autoscaling bisogna sapere che una volta abilitato, i PG vengono ribilanciati (se necessario) provocando traffico sulla cluster network di Ceph, consumando risorse dell’host.

 

Per abilitarlo, eseguire

 

Copy

 

t. Nel caso in cui ci fossero degli HEALTH warnings del tipo

 

  • client is using insecure global_id reclaim
  • mons are allowing insecure global_id reclaim

 

Migra tutte le macchine presenti sul nodo su un altro nodo disponibile, per poi eseguire il comando

 

Copy

 

Per non mostrare più il messaggio di warning, eseguire

 

Copy

 

A questo punto abbiamo aggiornato Ceph alla versione Octopus.

 

Dopo tutta la procedura, è possibile che vi trovate Ceph nello stato di HEATH_WARN, con il messaggio “2 pools have too many placement groups”

 

Aggiornamento Proxmox 7.0 e Ceph Pacific 16.2.4

 

Questo avviene perché la funzione PG autoscale è settato su “warn”

 

Ceph pool ssd

 

Nella modalità Autoscale = warn, vengono suggeriti il numero di PG che secondo Ceph sarebbe corretto settare all’interno del pool.

 

Ad esempio, vediamo in figura sopra che per i pool ceph_pool_ssd e ceph_pool_hdd vengono suggeriti 32 e 64 PG rispettivamente.

 

Il numero di PG suggerito dipende fondamentalmente da:

 

  • Target Ratio
  • Target Size

 

Per più informazioni su questo argomento ti consiglio di vedere il video qui sotto.

 

 

  1. Aggiornamento Proxmox 7.0

 

Raccomandiamo di eseguire l’aggiornamento di ogni nodo attraverso connessione SSH, in quanto durante l’aggiornamento è normale perdere la connessione con la console offerta dalla GUI.

 

a. Controllo con tool pve6to7

 

Proxmox mette a disposizione un tool che esegue in automatico un controllo sul sistema, evidenziando potenziali problemi o incongruenze se presenti.

 

Eseguire

 

Copy

 

Eseguire questo controllo almeno una volta prima dell’aggiornamento e una volta dopo l’aggiornamento stesso.

 

b. Spostamento delle VM e Container

 

Consigliamo di migrare le VM e Container prima di aggiornare un nodo.

 

Notare che la migrazione delle macchine da una versione Proxmox più vecchia (6.4) verso una versione più recente (7.0) non comporta rischi, mentre viceversa potrebbero esserci dei problemi. Da tenere sempre in mente quando si aggiorno il cluster.

 

c. Cambio dei MAC address dei Linux Bridge

 

È possibile che i MAC address dei Linux Bridge possano cambiare dopo l’aggiornamento. Se stai usando un hosting il quale usa un meccanismo di anti-spoofing è possibile che avrai dei problemi dopo l’aggiornamento, in quanto l’hosting dovrà essere avvisato dei nuovi MAC address.

 

Per evitare questo, scrivi in modo esplicito il MAC address all’interno del file di configurazione /etc/network/interfaces in questo modo

 

Come aggiornare Proxmox 7.0

 

Aiutati con il comando ip -c link per capire quali sono i MAC address dei Linux Bridge

 

Come aggiornare Proxmox 7.0

 

d. Aggiornamento repository APT

 

Da eseguire su tutti i nodi del cluster

 

Copy

 

e. Aggiunta dei repository Proxmoxm VE 7

 

Per un ambiente di produzione usare la versione enterprise, eseguendo (ogni nodo):

 

Copy

 

Per un ambiente non di produzione, usiamo i no-subscription andando solamente ad editare il file /etc/apt/sources.list in questo modo:

 

deb http://ftp.debian.org/debian bullseye main contrib
deb http://ftp.debian.org/debian bullseye-updates main contrib

 

PVE pve-no-subscription repository provided by proxmox.com,

 

NOT recommended for production use

 

deb http://download.proxmox.com/debian/pve bullseye pve-no-subscription

 

security updates

 

deb http://security.debian.org/debian-security bullseye-security main contrib

 

Per correttezza, andiamo a commentare i repository nel file /etc/apt/sources.list.d/pve-enterprise.list in modo da essere sicuri che non vengano cosiderati.

 

f. Backports

 

Attenzione a non lasciare delle backport nel file /etc/apt/sources.list perché i pacchetti non sono dati testati.

 

g. Modifica repository per Ceph

 

Eseguire (ogni nodo)

 

echo “deb http://download.proxmox.com/debian/ceph-octopus bullseye main” > /etc/apt/sources.list.d/ceph.list

 

h. Aggiornamento a Debian Bullseye e Proxmox VE 7.0

 

Attenzione: fate l’aggiornamento un nodo alla volta prima di lanciare questi due comandi su un altro nodo.

 

Copy

 

Copy

 

Durante l’aggiornamento compare un Warning, accettate senza problemi:

 

Come aggiornare Proxmox 7.0

 

Vi verranno mostrate anche le apt-listchanges: News. Premere q e proseguire.

 

Selezionare la lingua della tastiera quando richiesto

 

Come aggiornare Proxmox 7.0

 

Mantenere la corrente versione, quindi mettere “N”

 

Come aggiornare Proxmox 7.0

 

Selezionare “Yes” se si vuole permettere al sistema si eseguire dei restart dei servizi senza chiedere il permesso (scelta più smart), altrimenti selezionare “No”.      Come aggiornare Proxmox 7.0

 

Permettere il cambiamento della home directory per utente irc

 

Come aggiornare Proxmox 7.0

 

Specificare se mantenere la corrente versione di grub o installare la nuova versione

 

Aggiornamento di Proxmox 7.0 e Ceph Pacific 16.2.4

 

Se richiesto, specificate se volete mantenere la corrente versione del file /etc/ssh/sshd_config

 

Aggiornamento di Proxmox 7.0 e Ceph Pacific 16.2.4

 

Mantenere il corrente file /etc/apt/sources.list.d/pve-enterprise.list

 

se ad esempio si stanno usando i repository no-pve-subscription, altrimenti mettere “Y”

 

Aggiornamento di Proxmox 7.0 e Ceph Pacific 16.2.4

 

Al termine dell’istallazione, eseguire nuovamente il controllo per quel nodo con

 

Copy

 

Se non ci sono errori, procedere con il reboot del nodo.

 

Anche dopo il reboot, eseguire nuovamente il controllo con

 

Copy

 

Rifare il punto (h) per tutti i nodi del cluster, migrando su un altro nodo le VM e Container.

 

  1. Aggiornamento Ceph Pacific 16.2.4

 

Una volta che siamo passati a Proxmox 7 e verificato che sia tutto ok sulla nostra infrastruttura, siamo pronti per passare a Ceph Pacific.

 

Ricordiamo che per passare a Pacific dobbiamo avere:

 

  • Proxmox 7
  • Ceph Octopus

 

a. Attivazione msgrv2

 

Già fatto nei passi precedenti durante il passaggio da Nautilus a Octopus. Per chi non lo avesse ancora datto, eseguire

 

Copy

 

b. Modifica dei repository

 

Esegure il comando per modificare i repository (ogni nodo)

 

Copy

 

Controllare che il file  /etc/apt/sources.list.d/ceph.list sia stato modificato in questo modo

 

deb http://download.proxmox.com/debian/ceph-pacific bullseye main

 

c. Settare il flag ‘noout’

 

Raccomandiamo di settare il flag con il comando

 

Copy

 

d. Aggiornamento di ogni nodo

 

Eseguire i due comandi seguenti su tutti i nodi del cluster

 

Copy

 

Copy

 

e. Restart dei Monitor

 

Riavviamo i monitor (ogni nodo)

 

Copy

 

Verifichiamo che l’aggiornamento dei monitor sia alla versione 16, con il comando

 

Copy

 

f. Restart dei Manager

 

Riavviamo i Manage (ogni nodo)

 

Copy

 

Verifichiamo se sono running con

 

Copy

 

g. Restart degli OSD

 

Riavviamo gli OSD (ogni nodo)

 

Copy

 

controlliamo lo stato con

 

Copy

 

h. Abilitiamo Pacific e disabilitiamo tutto quello più vecchio

 

Copy

 

i. Unset del flag ‘noout’

 

Copy

 

Lo stato finale di e quello mostrato qui sotto, in cui abbiamo Ceph Version 16.2.4 e con tutti PG allo stato active+clean e Proxmox versione 7.0-10

 

Come aggiornare Ceph Pacific 16.2.4

Hai trovato utile questo articolo? Invialo a un amico o condividilo sui social!


Articoli correlati