21 Upgrade online #
SUSE offre uno strumento grafico intuitivo e uno strumento da riga di comando semplice per eseguire l'upgrade di un sistema in esecuzione al nuovo Service Pack. Tali strumenti forniscono il supporto necessario per il «rollback» dei Service Pack e altro. In questo capitolo è illustrata la procedura dettagliata per eseguire l'upgrade di un Service Pack con tali strumenti.
21.1 Panoramica concettuale #
Prima di eseguire l'upgrade del sistema, leggere la Sezione 19.3, «Preparazione del sistema».
SUSE rilascia Service Pack per la famiglia SUSE Linux Enterprise a intervalli regolari. Per semplificare la migrazione a un nuovo Service Pack da parte dei clienti e ridurre al minimo il tempo di inattività, SUSE supporta la migrazione online mentre il sistema è in esecuzione.
A partire da SLE 12 , YaST Wagon è stato sostituito dalla migrazione di YaST (tramite GUI) e dalla migrazione di Zypper (dalla riga di comando). Sono supportate le funzioni seguenti:
Il sistema è in uno stato definito fino all'aggiornamento del primo RPM
L'annullamento è possibile fino all'aggiornamento del primo RPM
In caso di errore il recupero è semplice
Il «rollback» può essere eseguito tramite strumenti di sistema, senza richiedere attività di backup o ripristino
Vengono utilizzati tutti gli archivi attivi
È possibile ignorare un Service Pack
Se il sistema da sottoporre ad upgrade è un client SUSE Manager, è impossibile eseguire l'upgrade tramite la migrazione online YaST o zypper migration
. Seguire invece la procedura per la migrazione del client. descritta in SUSE Manager Upgrade Guide (in lingua inglese), disponibile all'indirizzo https://documentation.suse.com/suma/.
21.2 Workflow di migrazione del Service Pack #
Per eseguire la migrazione di un Service Pack è possibile utilizzare YaST, zypper
o AutoYaST.
Prima di iniziare la migrazione di un Service Pack è necessario registrare il sistema in SUSE Customer Center o in un server SMT locale. È possibile utilizzare anche SUSE Manager.
Indipendentemente dal metodo, una migrazione del Service Pack consiste nei seguenti passaggi:
Trovare le possibili destinazioni di migrazione nei sistemi registrati.
Selezionare una destinazione di migrazione.
Richiedere e abilitare nuovi archivi.
Eseguire la migrazione.
L'elenco delle destinazioni di migrazione dipende dai prodotti installati e registrati. Se è installata un'estensione per cui non è ancora disponibile il nuovo Service Pack, è possibile che non venga resa disponibile alcuna destinazione.
L'elenco delle destinazioni di migrazione disponibili per l'host in uso viene sempre recuperato da SUSE Customer Center e dipende dalle estensioni o dai prodotti installati.
21.3 Annullamento della migrazione di un Service Pack #
La migrazione di un Service Pack può essere annullata solo in alcune fasi specifiche del processo di migrazione:
Finché non ha inizio l'upgrade del pacchetto, al sistema vengono apportate solo alcune modifiche minime, ad esempio per servizi e archivi. Ripristinare
/etc/zypp/repos.d/*
per tornare allo stato precedente.Per tornare allo stato precedente dopo l'avvio dell'upgrade del pacchetto, è possibile utilizzare un'istantanea di Snapper (vedere Chapter 7, System Recovery and Snapshot Management with Snapper).
Dopo la selezione della destinazione di migrazione, SUSE Customer Center modifica i dati dell'archivio. Per tornare manualmente allo stato precedente, utilizzare
SUSEConnect
--rollback
.
21.4 Upgrade con lo strumento di migrazione online (YaST) #
Per eseguire la migrazione di un Service Pack con YaST, utilizzare lo strumento
. Per default, YaST non installa i pacchetti da un archivio di terze parti. Se un pacchetto è stato installato da un archivio di terze parti, YaST impedisce che il pacchetto venga sostituito con lo stesso pacchetto proveniente da SUSE.Quando si esegue la migrazione di un Service Pack, YaST installa tutti i pacchetti consigliati. Soprattutto nel caso di un'installazione minima personalizzata, questo può aumentare notevolmente la dimensione dell'installazione del sistema.
Per modificare questo comportamento di default e consentire solo i pacchetti necessari, regolare l'opzione solver.onlyRequires
in /etc/zypp/zypp.conf
.
solver.onlyRequires = true
Modificare inoltre il file /etc/zypp/zypper.conf
e l'opzione installRecommends
.
installRecommends=false
Questo modifica il comportamento di tutte le operazioni sui pacchetti, come l'installazione di patch o nuovi pacchetti.
Per avviare la migrazione di un Service Pack, procedere come segue:
Disattivare tutte le estensioni inutilizzate sul server di registrazione per evitare futuri conflitti di dipendenza futuri. Nel caso in cui ci si dimenticasse un'estensione, in un momento successivo YaST rileverà gli archivi delle estensioni inutilizzate e le disattiverà.
Se si è eseguito il login a una sessione GNOME in esecuzione su un computer che verrà sottoposto ad aggiornamento, passare a una console di testo. L'esecuzione dell'aggiornamento da una sessione GNOME non è consigliata. Tenere presente che ciò non si applica quando si esegue il login da un computer remoto (a meno che non sia in esecuzione una sessione VNC con GNOME).
I sottoscrittori LTSS devono disattivare il repository LTSS. Tale operazione non può essere eseguita con YaST. Eseguire invece i seguenti comandi, utilizzando il numero di versione del repository installato:
tux >
sudo
SUSEConnect -d -p SLES-LTSS/12.2/x86_64tux >
sudo
zypper ref -sPer altre informazioni, consultare il bollettino di supporto zypper migration with LTSS repo results in "No migration available" (in lingua inglese)https://www.suse.com/support/kb/doc/?id=7022381.
Installare il pacchetto yast2-migration e le relative dipendenze (in YaST, nella sezione › ).
Riavviare YaST. In caso contrario il modulo appena installato non verrà mostrato nel centro di controllo.
In YaST, scegliere SUSE Linux Enterprise Server dalla quale si sta eseguendo l'upgrade, questo modulo viene classificato come o ). YaST mostrerà le destinazioni di migrazione possibili e un riepilogo. Se per il sistema in uso sono disponibili più destinazioni di migrazione, selezionarne una dall'elenco.
(a seconda della versione diSelezionare una destinazione di migrazione dall'elenco e fare clic su
per continuare.Se lo strumento di migrazione offre archivi di aggiornamenti, è consigliabile selezionare
per procedere.Se lo strumento di migrazione online rileva archivi obsoleti provenienti da DVD o da un server locale, è consigliabile disabilitarli. Gli archivi obsoleti provengono da un Service Pack precedente. Gli eventuali archivi obsoleti di SCC o SMT vengono rimossi automaticamente.
Controllare il riepilogo e continuare con la migrazione facendo clic su
. Confermare con .Al termine della migrazione, riavviare il sistema.
21.5 Upgrade con Zypper #
Per eseguire la migrazione di un Service Pack con Zypper, utilizzare lo strumento a riga di comando zypper
migration
dal pacchetto
zypper-migration-plugin.
Quando si esegue la migrazione di un Service Pack, YaST installa tutti i pacchetti consigliati. Soprattutto nel caso di un'installazione minima personalizzata, questo può aumentare notevolmente la dimensione dell'installazione del sistema.
Per modificare questo comportamento di default e consentire solo i pacchetti necessari, regolare l'opzione solver.onlyRequires
in /etc/zypp/zypp.conf
.
solver.onlyRequires = true
Modificare inoltre il file /etc/zypp/zypper.conf
e l'opzione installRecommends
.
installRecommends=false
Questo modifica il comportamento di tutte le operazioni sui pacchetti, come l'installazione di patch o nuovi pacchetti. Per modificare il comportamento di Zypper per una singola chiamata, aggiungere il parametro --no-recommends
alla riga di comando.
Per avviare la migrazione di un Service Pack, procedere come segue:
Se si è eseguito il login a una sessione GNOME in esecuzione su un computer che verrà sottoposto ad aggiornamento, passare a una console di testo. L'esecuzione dell'aggiornamento da una sessione GNOME non è consigliata. Tenere presente che ciò non si applica quando si esegue il login da un computer remoto (a meno che non sia in esecuzione una sessione VNC con GNOME).
Se non è ancora stato fatto, registrare il computer SUSE Linux Enterprise in uso:
sudo
SUSEConnect
--regcode YOUR_REGISTRATION_CODEI sottoscrittori LTSS devono disattivare il repository LTSS. Eseguire i seguenti comandi utilizzando il numero di versione del repository installato:
tux >
sudo
SUSEConnect -d -p SLES-LTSS/12.2/x86_64tux >
sudo
zypper ref -sPer altre informazioni, consultare il bollettino di supporto zypper migration with LTSS repo results in "No migration available" (in lingua inglese)https://www.suse.com/support/kb/doc/?id=7022381.
Installare gli ultimi aggiornamenti:
sudo
zypper
patchInstallare il pacchetto zypper-migration-plugin e le rispettive dipendenze:
sudo
zypper
in zypper-migration-pluginEseguire
zypper
migration
:tux >
sudozypper
migration Executing 'zypper patch-check' Refreshing service 'SUSE_Linux_Enterprise_Server_12_x86_64'. Loading repository data... Reading installed packages... 0 patches needed (0 security patches) Available migrations: 1 | SUSE Linux Enterprise Server 12 SP1 x86_64 2 | SUSE Linux Enterprise Server 12 SP2 x86_64Note sul processo di migrazione:
Se per il sistema in uso sono disponibili più destinazioni di migrazione, Zypper consente di selezionarne una dall'elenco. È come ignorare uno o più Service Pack. Ricordare che la migrazione online per i prodotti base (SLES, SLED) rimane disponibile solo tra i Service Pack di una versione principale.
Per default, Zypper usa l'opzione
--no-allow-vendor-change
, che viene passata azypper
dup
. Se un pacchetto è stato installato da un archivio di terze parti, questa opzione impedisce che il pacchetto venga sostituito con lo stesso pacchetto proveniente da SUSE.Se Zypper rileva archivi obsoleti provenienti da DVD o da un server locale, è consigliabile disabilitarli. Gli archivi SCC o SMT precedenti vengono rimossi automaticamente.
Rivedere tutte le modifiche, soprattutto i pacchetti che verranno rimossi. Procedere digitando
y
(il numero esatto di pacchetti di cui eseguire l'upgrade può variare in base al sistema):266 packages to upgrade, 54 to downgrade, 17 new, 8 to reinstall, 5 to remove, 1 to change arch. Overall download size: 285.1 MiB. Already cached: 0 B After the operation, additional 139.8 MiB will be used. Continue? [y/n/? shows all options] (y):
Utilizzare i tasti Shift–Pagina ↑ o Shift–Pagina ↓ per scorrere nella shell.
Al termine della migrazione, riavviare il sistema.
21.6 Upgrade con Zypper semplice #
Se non è possibile utilizzare YaST o Zypper migration, è comunque possibile eseguire la migrazione con Zypper semplice e alcune interazioni manuali. Per avviare la migrazione di un Service Pack, procedere come segue:
Se si è eseguito il login a una sessione GNOME in esecuzione su un computer che verrà sottoposto ad aggiornamento, passare a una console di testo. L'esecuzione dell'aggiornamento da una sessione GNOME non è consigliata. Tenere presente che ciò non si applica quando si esegue il login da un computer remoto (a meno che non sia in esecuzione una sessione VNC con GNOME).
Aggiornare gli strumenti di gestione dei pacchetti con gli archivi precedenti di SUSE Linux Enterprise:
sudo
zypper
patch --updatestack-onlySe il sistema è registrato, è necessario annullarne la registrazione:
sudo
SUSEConnect
--de-registerRimuovere le origini di installazione e gli archivi precedenti, quindi modificare gli archivi di terze parti.
Aggiungere le nuove origini di installazione, locali o remote (per il segnaposto ARCHIVIO, consultare Sezione 18.6, «Modello di archivio»):
sudo
zypper
addrepo REPOSITORYÈ inoltre possibile utilizzare SUSE Customer Center o Subscription Management Tool. Il comando per SUSE Linux Enterprise 12 SP1 su x86-64 è:
sudo
SUSEConnect
-p SLES/12.2/x86_64 OPTIONSTenere presente che gli upgrade tra architetture non sono supportati.
In Zypper verrà visualizzato un conflitto tra il nuovo kernel e quello precedente. Scegliere la soluzione 1 per continuare.
Problem: product:SLES-12.2-0.x86_64 conflicts with kernel < 4.4 provided by kernel-default-VERSION Solution 1: Following actions will be done: replacement of kernel-default-VERSION with kernel-default-VERSION deinstallation of kernel-default-VERSION Solution 2: do not install product:SLES-12.2-0.x86_64
Finalizzare la migrazione:
sudo
zypper
ref -f -s sudozypper
dup --no-allow-vendor-change --no-recommendsIl primo comando aggiorna tutti i servizi e gli archivi. Il secondo comando esegue un upgrade della distribuzione. In questo caso, le ultime due opzioni sono importanti:
-no-allow-vendor-change
assicura che gli RPM di terze parti non sovrascriveranno quelli del sistema di base. L'opzione--no-recommends
assicura che i pacchetti deselezionati durante l'installazione iniziale non verranno aggiunti di nuovo.
21.7 Rollback di un Service Pack #
Se un Service Pack non è adatto alle proprie esigenze, SUSE Linux Enterprise supporta il ripristino del sistema allo stato precedente l'avvio della migrazione del Service Pack. Il prerequisito è una partizione radice Btrfs con snapshot abilitati (impostazione di default durante l'installazione di SLES 12). Per ulteriori informazioni, vedere Chapter 7, System Recovery and Snapshot Management with Snapper.
Recuperare un elenco di tutte le istantanee di Snapper:
sudo snapper list
Rivedere l'output per individuare lo snapshot creato subito prima dell'avvio della migrazione del Service Pack. Nella colonna
è contenuta l'istruzione corrispondente e lo snapshot è contrassegnato comeimportante
nella colonna . Memorizzare il numero di snapshot nella colonna e la rispettiva data nella colonna .Riavviare il computer. Dal menu di avvio, selezionare
e scegliere lo snapshot con la data e il numero memorizzato al passaggio precedente. Viene caricato un secondo menu di avvio (quello dello snapshot). Selezionare la voce che inizia conSLES 12
ed eseguire l'avvio.Il sistema viene avviato nello stato precedente con la partizione del sistema montata in sola lettura. Eseguire il login come
root
e verificare che lo snapshot selezionato sia corretto. Verificare inoltre che tutto funzioni come previsto. Si noti che poiché il file system radice è montato in sola lettura, è possibile che vengano applicate restrizioni alle funzionalità.In caso di problemi o se è stato avviato lo snapshot errato, riavviare e scegliere uno snapshot diverso dal quale eseguire l'avvio. Le modifiche apportate finora non sono permanenti. Se lo snapshot è corretto e funziona come previsto, apportare la modifica permanente eseguendo il seguente comando:
snapper rollback
Dopodiché riavviare. Nella schermata di avvio, scegliere la voce di avvio di default per riavviare nel sistema ripristinato.
Verificare che la configurazione dell'archivio sia stata reimpostata correttamente. Verificare inoltre che tutte le procedure siano registrate adeguatamente. Se una delle suddette condizioni non è soddisfatta, l'aggiornamento del sistema in un momento successivo potrebbe risultare impossibile o il sistema potrebbe essere aggiornato con archivi di pacchetti errati.
Assicurarsi che il sistema sia in grado di accedere a Internet prima di iniziare questa procedura.
Aggiornare servizi e archivi eseguendo
sudo zypper ref -fs
Ottenere un elenco di archivi attivi eseguendo
sudo zypper lr
Verificare attentamente l'output di questo comando. Nell'elenco non dovrebbero comparire servizi e archivi aggiunti per l'aggiornamento. Se ad esempio si esegue il rollback da una migrazione di un Service Pack da SLES 12 SP1 a SLES 12 SP2, l'elenco non deve contenere gli archivi
SLES12-SP2-Pool
eSLES12-SP2-Updates
, bensì le versioniSP1
.Nel caso in cui siano elencati archivi errati, eliminarli e, se necessario, sostituirli con le versioni che corrispondono al prodotto o alla versione del Service Pack in uso. Per un elenco di archivi per i percorsi delle migrazioni supportate, fare riferimento alla Sezione 18.6, «Modello di archivio».
Infine, verificare che nello stato di registrazione siano presenti tutti i prodotti installati eseguendo
SUSEConnect --status
Lo stato di tutti i prodotti deve essere
Registrato
. In caso contrario, correggere la registrazione eseguendoSUSEConnect --rollback
Il sistema viene ripristinato allo stato acquisito immediatamente prima dell'avvio della migrazione del Service Pack.