GNU/Linux >> Linux Esercitazione >  >> AlmaLinux

Come migrare CentOS 7 su AlmaLinux 8, CentOS Stream 8, Oracle Linux 8, Rocky Linux 8 usando ELEvate Utility

Come forse già saprai, non è stato possibile migrare tra le versioni principali dei derivati ​​RHEL. Significato:non puoi aggiornare direttamente da CentOS 7.x alla versione CentOS 8.x. L'unico modo era una nuova installazione. Non più! Ora puoi migrare facilmente da CentOS 7.x a qualsiasi 8.x di tua scelta utilizzando ELEvate attrezzo. Questa guida spiega come migrare CentOS 7 ad AlmaLinux 8, CentOS Stream 8, Oracle Linux 8 e Rocky Linux 8 utilizzando lo strumento AlmaLinux ELvate.

Cos'è ELEvate?

ELEvate è uno strumento di migrazione open source sviluppato dal team di AlmaLinux. Ti consente di migrare facilmente e senza intoppi tra le versioni principali delle distribuzioni basate su RHEL dalla versione 7.x alla versione 8.x.

ELEvate combina il framework Leapp di Red Hat con una libreria e un servizio creati dalla community per il set di metadati di migrazione necessari.

Attualmente supporta la migrazione da CentOS 7 ai seguenti sistemi operativi:

  • AlmaLinux OS 8
  • CentOS Stream 8
  • Oracle Linux 8
  • Rocky Linux 8

Le migrazioni possono essere eseguite sul posto, il che significa che i dati e i file di configurazione vengono conservati. In altre parole, tutte le applicazioni, le impostazioni ei dati installati rimarranno intatti. Tuttavia, gli utenti sono ALTAMENTE INCORAGGIATI per fare il backup i dati importanti prima di iniziare la migrazione.

ELEvate è un programma open source, rilasciato sotto la licenza Apache 2.0.

Per chi se lo stesse chiedendo, le lettere "EL" di ELEvate stanno per Enterprise Linux .

Cose da ricordare prima di iniziare la migrazione a CentOS 7

  • Come affermato in precedenza, si consiglia vivamente di eseguire il backup i tuoi dati e impostazioni importanti.
  • La migrazione in tempo reale non è supportata. Il tuo sistema si riavvierà due volte. Assicurati che tutti i lavori importanti (ad es. i backup pianificati) non siano in esecuzione.
  • ELEvate è ancora in fase di sviluppo. Quindi ti suggerisco di testarlo a fondo in un sistema virtuale o in un ambiente sandbox prima di provarlo in produzione.

Ho testato lo strumento ELEvate su una macchina virtuale CentOS 7 appena installata. La migrazione è stata fluida e priva di errori. Se riscontri problemi, segnalali a AlmaLinux Bug Tracker e/o AlmaLinux Chat Migration Channel.

Aggiorna il sistema CentOS 7

Assicurati di eseguire l'ultimo ramo CentOS 7.x. In caso contrario, aggiorna il tuo sistema CentOS usando il comando:

$ sudo yum update
$ sudo yum upgrade

Riavvia il sistema per applicare le modifiche:

$ sudo reboot

Controlla la versione di CentOS 7 attualmente installata usando il comando:

$ cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)
$ cat /etc/os-release 
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

Come puoi vedere, il mio sistema funziona con la versione CentOS 7.9. Questa è l'ultima versione nel ramo 7.x.

Migrare CentOS 7 ad AlmaLinux 8, CentOS 8, Rocky Linux 8 e Oracle Linux 8

Passaggio 1:installa ELEvate

Installa elevate-release pacchetto nel tuo sistema CentOS 7 usando il comando:

$ sudo yum install http://repo.almalinux.org/elevate/elevate-release-latest-el7.noarch.rpm

Passaggio 2:installa Leapp e i dati di migrazione

Il elevate-release il pacchetto fornisce il Leapp utility e i dati necessari per migrare Enterprise Linux 7.x a qualsiasi versione Enterprise Linux 8.x di nostra scelta.

A seconda della distribuzione che desideri aggiornare, devi installare uno qualsiasi dei seguenti pacchetti:

  • leapp-data-almalinux
  • leapp-data-centos
  • leapp-data-oraclelinux
  • leapp-data-rocky

Ad esempio, se desideri migrare da CentOS 7 ad AlmaLinux 8 , devi installare i seguenti pacchetti:

$ sudo yum install -y leapp-upgrade leapp-data-almalinux

Per migrare da CentOS 7 a CentOS 8 , installa i seguenti pacchetti:

$ sudo yum install -y leapp-upgrade leapp-data-centos

Per migrare CentOS 7 a Oracle Linux 8 , installa i seguenti pacchetti:

$ sudo yum install -y leapp-upgrade leapp-data-oraclelinux

Per migrare CentOS 7 a Rocky Linux 8 , installa i seguenti pacchetti:

$ sudo yum install -y leapp-upgrade leapp-data-rocky

Ora abbiamo installato l'leap-upgrade pacchetto e i dati di migrazione per il sistema operativo che vogliamo aggiornare.

Ai fini di questa guida, aggiornerò CentOS 7 ad AlmaLinux 8.

Passaggio 3:avvia il controllo pre-aggiornamento

Quindi esegui il seguente comando per verificare se l'aggiornamento è possibile o meno:

$ sudo leapp preupgrade

Questo eseguirà una serie di azioni e verificherà se è possibile eseguire l'aggiornamento.

==> Processing phase `configuration_phase`
====> * ipu_workflow_config
        IPU workflow config actor
==> Processing phase `FactsCollection`
====> * scanmemory
        Scan Memory of the machine.
====> * source_boot_loader_scanner
        Scans the boot loader configuration on the source system.
.
.
.
============================================================
                     UPGRADE INHIBITED                      
============================================================

Upgrade has been inhibited due to the following problems:
    1. Inhibitor: Detected loaded kernel drivers which have been removed in RHEL 8. Upgrade cannot proceed.
    2. Inhibitor: Multiple devel kernels installed
    3. Inhibitor: Possible problems with remote login using root account
    4. Inhibitor: Missing required answers in the answer file
Consult the pre-upgrade report for details and possible remediation.

============================================================
                     UPGRADE INHIBITED                      
============================================================

Debug output written to /var/log/leapp/leapp-preupgrade.log

============================================================
                           REPORT                           
============================================================

A report has been generated at /var/log/leapp/leapp-report.json
A report has been generated at /var/log/leapp/leapp-report.txt

============================================================
                       END OF REPORT                        
============================================================

Answerfile has been generated at /var/log/leapp/answerfile

Al termine del controllo di preaggiornamento, l'utility Leapp genererà un report in /var/log/leapp/leapp-report.txt file. Questo file contiene possibili problemi e soluzioni consigliate. In questa fase non verranno installati pacchetti rpm.

AVVISO:

Il controllo di preaggiornamento avrà esito negativo se CentOS 7 predefinito non soddisfa tutti i requisiti per la migrazione. In tal caso, devi risolvere tutti i problemi e riprovare.

Le seguenti correzioni da /var/log/leapp/leapp-report.txt sono obbligatori , ma puoi anche rivedere il resto, se necessario.

Nel mio caso, ho risolto i seguenti problemi:

$ sudo rmmod pata_acpi
$ echo PermitRootLogin yes | sudo tee -a /etc/ssh/sshd_config
$ sudo leapp answer --section remove_pam_pkcs11_module_check.confirm=True

Ho anche dovuto rimuovere gli sviluppatori extra del kernel.

Elenca i kernel installati in CentOS:

$ rpm -qa kernel
kernel-3.10.0-1160.45.1.el7.x86_64
kernel-3.10.0-1160.42.2.el7.x86_64

Come vedi sopra, ci sono attualmente due kernel installati nel mio sistema.

Rimuovi il vecchio kernel e kernel-devels e mantieni solo il kernel attualmente attivo usando il comando:

$ sudo package-cleanup --oldkernels --count=1

Una volta risolti tutti i problemi, esegui il comando seguente per migrare CentOS 7 su qualsiasi Enterprise Linux 8.x di tua scelta:

$ sudo leapp upgrade

Una volta completato l'aggiornamento, riavvia il sistema:

$ sudo reboot

Una nuova voce chiamata ELevate-Upgrade-Initramfs nel menu di GRUB apparirà. Il sistema verrà avviato automaticamente al suo interno. Puoi vedere come va il processo di aggiornamento nella console.

Il sistema si riavvierà automaticamente una volta completato l'aggiornamento. Le voci del menu di GRUB verranno aggiornate automaticamente a seconda del sistema operativo.

Accedi al sistema e verifica che il sistema operativo corrente sia quello che ti serve.

$ cat /etc/os-release

Risultato di esempio:

NAME="AlmaLinux"
VERSION="8.4 (Electric Cheetah)"
ID="almalinux"
ID_LIKE="rhel centos fedora"
VERSION_ID="8.4"
PLATFORM_ID="platform:el8"
PRETTY_NAME="AlmaLinux 8.4 (Electric Cheetah)"
ANSI_COLOR="0;34"
CPE_NAME="cpe:/o:almalinux:almalinux:8.4:GA"
HOME_URL="https://almalinux.org/"
DOCUMENTATION_URL="https://wiki.almalinux.org/"
BUG_REPORT_URL="https://bugs.almalinux.org/"

ALMALINUX_MANTISBT_PROJECT="AlmaLinux-8"
ALMALINUX_MANTISBT_PROJECT_VERSION="8.4"

Grande! Abbiamo aggiornato con successo CentOS 7 alla versione AlmaLinux 8.4.

Svuota cache (facoltativo)

Tutti i pacchetti scaricati durante la migrazione verranno salvati nella cache fino alla successiva transazione andata a buon fine. Puoi rimuovere i pacchetti memorizzati nella cache eseguendo il comando seguente come sudo o root utente:

$ sudo dnf clean packages

Aggiorna nome host

Infine, aggiorna il nome host, il nome utente in modo che corrisponda ad AlmaLinux.

$ sudo hostnamectl set-hostname almalinux8

Tutto fatto! Riavvia il sistema per rendere effettive le modifiche.

Conclusione

In questa guida, abbiamo visto come aggiornare CentOS 7 a derivati ​​di RHEL 8 come AlmaLinux, CentOS Stream, Oracle Linux e Rocky Linux con l'aiuto del progetto ELEvate degli sviluppatori AlmaLinux.

Non mi aspettavo che la migrazione da CentOS 7 ai derivati ​​di RHEL 8 sarebbe stata molto più semplice! Gli sviluppatori di AlmaLinux hanno svolto un lavoro encomiabile. Che si tratti di una correzione di bug o di un'aggiunta di funzionalità, intervengono rapidamente e ci lavorano. Sono stati i primi a rilasciare un'alternativa stabile a CentOS 8. Hanno anche fornito uno script Bash per convertire facilmente i sistemi CentOS 8 esistenti in AlmaLinux 8. Per maggiori dettagli, fare riferimento alla seguente guida.

  • Migra ad AlmaLinux da CentOS 8 utilizzando lo script Almalinux-deploy

Risorsa:

  • AlmaLinux ELEvate

AlmaLinux
  1. AlmaLinux vs Rocky Linux

  2. Come migrare da Centos 8 a Rocky Linux 8

  3. Come avviare la GUI su CentOS/AlmaLinux/Rocky Linux 8

  4. Migra CentOS 8 su Rocky Linux

  5. Come migrare da CentOS 8 a Rocky Linux 8

Come migrare i server CentOS Linux 6, 7, 8 su Oracle Linux

Come migrare da CentOS 8 Linux ad AlmaLinux 8

Come migrare CentOS 8 Linux su CentOS Stream

Come migrare da CentOS 8 a Rocky Linux 8

Come migrare da CentOS a Oracle Linux

Come migrare CentOS Stream su AlmaLinux