Aggiornare Proxmox dalla versione 4 alla versione 5

La procedura è illustrata anche nella documentazione sul wiki di Proxmox alla pagina https://pve.proxmox.com/wiki/Upgrade_from_4.x_to_5.0; nella sezione «In-place upgrade» che tratta anche il caso dei cluster e dell’uso di CEPH che non si applica alla installazione tipica usata per FUSS.

Per quanto sia indicata come preferibile una reinstallazione da zero, seguita dalla reimportazione delle macchine virtuali, la procedura di aggiornamento in loco è stata verificata e portata avanti con successo senza nessun problema parecchie volte.

Predisposizione

Il primo passo prima di passare all’aggiornamento alla versione 5 è assicurarsi che la versione 4 sia completamente aggiornata, pertanto prima di iniziare si eseguano i comandi:

apt-get update
apt-get dist-upgrade

e qualora nell’aggiornamento venga installato un nuovo kernel si riavvii la macchina per usarlo.

Tutte le macchine virtuali devono essere spente (e qualora siano presenti, anche se non previsti nel caso di FUSS) anche eventuali container. Possono essere spente dalla riga comando con qm shutdown <VMID> e pct shutdown <VMID>.

É una buona precauzione eseguire comunque anche un dump delle macchine virtuali, anche se questo sarà necessario soltanto in caso di problemi (mai verificatosi in decine di aggiornamenti). Per questo sarà sufficiente eseguire il comando vzdump <VMID> -dumpdir /pathname dove /pathname è il nome di una directory su un filesystem dove ci sia spazio disco sufficiente a contenere l’immagine della macchina virtuale (ad esempio una directory del NAS montata con NFS).

Si verifiche che sul filesystem della radice ci sia almeno un giga-byte di spazio disco disponibile (se si è alle strette si possono cancellare i pacchetti scaricati con apt-get clean e cancellare eventuali immagini ISO o template usati nelle installazione sotto /var/lib/vz/template/). Si verifichi anche che nel filesystem della directory /boot ci sia lo spazio sufficiente per installare un altro kernel (si possono cancellare le versioni più vecchie disinstallando i relativi pacchetti).

Aggiornamento

Una volta completate le operazioni preliminari è sufficiente modificare le fonti di APT di Debian da Jessie a Stretch con il comando:

sed -i 's/jessie/stretch/g' /etc/apt/sources.list

e quelle di Proxmox con:

sed -i 's/jessie/stretch/g' /etc/apt/sources.list.d/pve-install-repo.list

ed eventualmente anche quella di /etc/apt/sources.list.d/pve-enterprise.list che comunque dovrebbe restare commentata.

Se sono presenti delle righe con riferimento a backports queste vanno commentate, ma se si sono seguite le istruzioni di questa guida queste non dovrebbero essere presenti.

Il comando che esegue l’aggiornamento sia di Debian che di Proxmox è:

apt-get dist-upgrade

durante la sua esecuzione verranno fatte da debconf alcune domande relative alla sovrascrittura dei file di configurazione, attinenti ai pacchetti Debian, cui in genere si può rispondere dicendo di installare la versione del file fornita dal manutentore del pacchetto, in particolare verrà chiesto:

  • se sostituire /etc/issue
  • se sostituire la configurazione di SSH (/etc/ssh/sshd_config)
  • altre domande sono possibili se si sono installati software aggiuntivi come XFCE o l’interfaccia grafica

Una volta completato l’aggiornamento occorrerà riavviare per poter usare il nuovo kernel.

E” inoltre possibile che nell’aggiornamento /etc/apt/sources.list.d/pve-enterprise.list venga sovrascritto, ripristinando il contenuto originale, non commentato, in tal caso sarà necessario ricommentare lo stesso dato che il repository «enterprise» non è accessibile (e comunque non serve).