Proxmox aggiornare Ceph Reef a Squid

upgrade-ceph-reef-to-squid-in-proxmox-01

Se si utilizza Ceph Reef nella propria infrastruttura Proxmox e si prevede l'aggiornamento a Proxmox 9, è necessario prima aggiornare Ceph Reef a Squid per soddisfare i prerequisiti.

Come best practice, prima di procedere con l'aggiornamento, assicurarsi di avere un backup funzionante delle VM e Container.

 

Prerequisiti

Per aggiornare Ceph da Reef a Squid, verificare che tutti i nodi stiano eseguendo Proxmox VE 8.2 (o superiore) e che Ceph sia alla versione Reef (18.2.4-pve3 o superiore).

Verificare la versione di Proxmox installata.

# pveversion

aggiornare ceph reef a squid 1

Controllare la versione del cluster Ceph installata.

# ceph --version

aggiornare ceph reef a squid 2

Confermare che il cluster Ceph sia in uno stato healthy.

# ceph -s

aggiornare ceph reef a squid 3

 

Preparazione del sistema

Su tutti i nodi, modificare i repository Ceph da Reef a Squid.

# sed -i 's/reef/squid/' /etc/apt/sources.list.d/ceph.list

aggiornare ceph reef a squid 4

Verificare che il file /etc/apt/sources.list.d/ceph.list contenga la voce corretta. Per gli utenti con una sottoscrizione valida, la voce deve essere:

deb https://enterprise.proxmox.com/debian/ceph-squid bookworm enterprise

# cat /etc/apt/sources.list.d/ceph.list

aggiornare ceph reef a squid 5

Se non è disponibile una sottoscrizione valida, utilizzare il repository pubblico no-subscription.

deb http://download.proxmox.com/debian/ceph-squid bookworm no-subscription

# cat /etc/apt/sources.list.d/ceph.list

aggiornare ceph reef a squid 6

Per evitare che il cluster Ceph effettui il ribilanciamento durante la fase di aggiornamento, impostare il flag noout.

# ceph osd set noout

aggiornare ceph reef a squid 7

 

Aggiornare Ceph Reef a Squid cluster

Una volta che il sistema è pronto per aggiornare Ceph Reef a Squid, è possibile iniziare la procedura. Eseguire queste operazioni su ogni nodo, uno alla volta.

Mettere il primo nodo in Maintenance Mode per fermare i servizi HA. Opzionale ma consigliato.

# ha-manager crm-command node-maintenance enable proxmox01

aggiornare ceph reef a squid 8

Verificare che il nodo sia in Maintenance Mode.

aggiornare ceph reef a squid 9

Aggiornare la lista dei pacchetti dai repository.

# apt update

aggiornare ceph reef a squid 10

Installare gli ultimi aggiornamenti.

# apt full-upgrade

aggiornare ceph reef a squid 11

Disattivare la Maintenance Mode dal nodo.

# ha-manager crm-command node-maintenance disable proxmox01

aggiornare ceph reef a squid 12

Verificare la versione di Ceph. Dovrebbe essere visualizzata Ceph Squid 19.2.2.

# ceph --version

aggiornare ceph reef a squid 13

Ripetere questa operazione per tutti i nodi rimanenti, mantenendo il flag noout impostato per l'intera procedura.

 

Post aggiornamento

Dopo aver aggiornato tutti i nodi, verificare che il cluster Ceph sia in healthy state. Un health warning "noout flag(s) set" è normale in questa fase.

# ceph -s

aggiornare ceph reef a squid 14

Dalla GUI di Proxmox, selezionare un nodo e andare in Ceph > Monitor. La Version segnalata dovrebbe essere il vecchio valore che deve essere aggiornato.

aggiornare ceph reef a squid 15

Verificare la versione del monitor su un nodo. Dovrebbe riportare "min_mon_release 18 (reef)".

# ceph mon dump | grep min_mon_release

aggiornare ceph reef a squid 16

Riavviare il servizio monitor su ogni nodo dove è in esecuzione un monitor.

# systemctl restart ceph-mon.target

aggiornare ceph reef a squid 17

Dopo aver riavviato tutti i monitor, verificare che l'aggiornamento sia completo. Ora dovrebbe riportare "min_mon_release 19 (squid)".

# ceph mon dump | grep min_mon_release

aggiornare ceph reef a squid 18

Se il daemon manager non si riavvia automaticamente, riavviarlo manualmente sui nodi dove è abilitato.

# systemctl restart ceph-mgr.target

aggiornare ceph reef a squid 19

Verificare che le versioni del monitor e del manager siano alla 19.2.2 dall'interfaccia Proxmox in Ceph > Monitor.

aggiornare ceph reef a squid 20

Ora posizionarsi in Ceph > OSD e verifcare la Version degli OSD. Alcuni dischi potrebbero necessitare di un aggiornamento.

aggiornare ceph reef a squid 21

Riavviare tutti gli OSD su ogni nodo. Per evitare perdite di dati, eseguire il comando un nodo alla volta.

# systemctl restart ceph-osd.target

aggiornare ceph reef a squid 22

Dopo aver riavviato tutti gli OSD su tutti i nodi, verificare che la Version OSD sia 19.2.2 nell'interfaccia di Proxmox sotto Ceph > OSD.

aggiornare ceph reef a squid 23

Dopo che tutti gli OSD sono allineati all'ultima versione, potrebbe essere visualizzato un health warning "all OSDs are running squid or later but require_osd_release < squid".

# ceph -s

aggiornare ceph reef a squid 24

Per risolvere questa situazione, disattivare gli OSD pre-Reef e abilitare tutte le nuove funzionalità esclusive di Squid.

# ceph osd require-osd-release squid

aggiornare ceph reef a squid 25

Verificando il cluster Ceph, questo è ora riportato in an healthy state con il flag noout impostato.

# ceph -s

aggiornare ceph reef a squid 26

L'ultima operazione da effettuare è l'unset del flag noout.

# ceph osd unset noout

aggiornare ceph reef a squid 27

Il cluster Ceph Squid è ora in un healthy state.

# ceph -s

aggiornare ceph reef a squid 28

Il cluster Ceph è stato ora aggiornato correttamente da Reef a Squid. Questo completa il prerequisito per l'aggiornamento da Proxmox 8 a 9.

signature

Leave a Reply