GNU/Linux >> Tutoriels Linux >  >> AlmaLinux

Comment migrer CentOS 7 vers AlmaLinux 8, CentOS Stream 8, Oracle Linux 8, Rocky Linux 8 à l'aide de l'utilitaire ELevate

Comme vous le savez peut-être déjà, il n'était pas possible de migrer entre les versions majeures des dérivés RHEL. Cela signifie que vous ne pouvez pas mettre à niveau directement la version CentOS 7.x vers la version CentOS 8.x. Le seul moyen était une nouvelle installation. Pas plus! Vous pouvez désormais facilement migrer de CentOS 7.x vers n'importe quelle version 8.x de votre choix en utilisant ELevate outil. Ce guide explique comment migrer CentOS 7 vers AlmaLinux 8, CentOS Stream 8, Oracle Linux 8 et Rocky Linux 8 à l'aide de l'outil AlmaLinux ELvate.

Qu'est-ce qu'ELevate ?

ELevate est un outil de migration open source développé par l'équipe AlmaLinux. Il vous permet de migrer facilement et en douceur entre les principales versions des distributions basées sur RHEL de la version 7.x à la version 8.x.

ELevate combine le framework Leapp de Red Hat avec une bibliothèque et un service créés par la communauté pour l'ensemble de métadonnées de migration requis.

Il prend actuellement en charge la migration de CentOS 7 vers les systèmes d'exploitation suivants :

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

Les migrations peuvent être effectuées sur place, ce qui signifie que les données et les fichiers de configuration sont préservés. En d'autres termes, toutes les applications, paramètres et données installés resteront intacts. Cependant, les utilisateurs sont FORTEMENT ENCOURAGÉS pour sauvegarder les données importantes avant de commencer la migration.

ELevate est un programme open source, publié sous la licence Apache 2.0.

Pour ceux qui se demandent, les lettres "EL" d'ELevate signifient Enterprise Linux .

Éléments à retenir avant de commencer la migration de CentOS 7

  • Comme indiqué précédemment, il est fortement recommandé de sauvegarder vos données et paramètres importants.
  • La migration en direct n'est pas prise en charge. Votre système redémarrera deux fois. Assurez-vous que les tâches importantes (par exemple, les sauvegardes planifiées) ne sont pas en cours d'exécution.
  • ELevate est toujours en cours de développement. Je vous suggère donc de le tester minutieusement dans un système virtuel ou un environnement sandbox avant de l'essayer en production.

J'ai testé l'outil ELevate sur une machine virtuelle CentOS 7 fraîchement installée. La migration s'est déroulée en douceur et sans erreur. Si vous rencontrez des problèmes, signalez-les à AlmaLinux Bug Tracker et/ou AlmaLinux Chat Migration Channel.

Mettre à jour le système CentOS 7

Assurez-vous que vous utilisez la dernière branche CentOS 7.x. Sinon, mettez à jour votre système CentOS à l'aide de la commande :

$ sudo yum update
$ sudo yum update

Redémarrez votre système pour appliquer les modifications :

$ sudo reboot

Vérifiez la version CentOS 7 actuellement installée à l'aide de la commande :

$ 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"

Comme vous pouvez le voir, mon système fonctionne avec la version CentOS 7.9. Il s'agit de la dernière version de la branche 7.x.

Migrer CentOS 7 vers AlmaLinux 8, CentOS 8, Rocky Linux 8 et Oracle Linux 8

Étape 1 :Installer ELevate

Installez elevate-release package dans votre système CentOS 7 à l'aide de la commande :

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

Étape 2 :Installer Leapp et les données de migration

Le elevate-release package fournit le Leapp et les données nécessaires pour migrer Enterprise Linux 7.x vers n'importe quelle version Enterprise Linux 8.x de notre choix.

Selon la distribution que vous souhaitez mettre à niveau, vous devez installer l'un des packages suivants :

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

Par exemple, si vous souhaitez migrer CentOS 7 vers AlmaLinux 8 , vous devez installer les packages suivants :

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

Pour migrer CentOS 7 vers CentOS 8 , installez les packages suivants :

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

Pour migrer CentOS 7 vers Oracle Linux 8 , installez les packages suivants :

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

Pour migrer CentOS 7 vers Rocky Linux 8 , installez les packages suivants :

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

Nous avons maintenant installé le leap-upgrade package et les données de migration pour le système d'exploitation que nous voulons mettre à niveau.

Pour les besoins de ce guide, je vais mettre à niveau CentOS 7 vers AlmaLinux 8.

Étape 3 :Démarrer la vérification préalable à la mise à niveau

Exécutez ensuite la commande suivante pour vérifier si la mise à niveau est possible ou non :

$ sudo leapp preupgrade

Cela effectuera une série d'actions et vérifiera s'il est possible d'effectuer la mise à niveau.

==> 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

À la fin de la vérification préalable à la mise à niveau, l'utilitaire Leapp générera un rapport dans /var/log/leapp/leapp-report.txt dossier. Ce fichier contient les problèmes possibles et les solutions recommandées. Aucun package rpm ne sera installé à ce stade.

AVERTISSEMENT :

La vérification préalable à la mise à niveau échouera si CentOS 7 par défaut ne répond pas à toutes les exigences de migration. Dans ce cas, vous devez résoudre tous les problèmes et réessayer.

Les correctifs suivants du /var/log/leapp/leapp-report.txt fichier sont obligatoires , mais vous pouvez également consulter les autres si nécessaire.

Dans mon cas, j'ai résolu les problèmes suivants :

$ 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

J'ai également dû supprimer les développeurs supplémentaires du noyau.

Listez les noyaux installés dans CentOS :

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

Comme vous le voyez ci-dessus, il y a actuellement deux noyaux installés sur mon système.

Supprimez l'ancien noyau et les développements du noyau et ne conservez que le noyau actuellement actif à l'aide de la commande :

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

Une fois que vous avez résolu tous les problèmes, exécutez la commande suivante pour migrer CentOS 7 vers n'importe quelle Enterprise Linux 8.x de votre choix :

$ sudo leapp upgrade

Une fois la mise à niveau terminée, redémarrez votre système :

$ sudo reboot

Une nouvelle entrée appelée ELevate-Upgrade-Initramfs dans le menu GRUB apparaîtra. Le système sera automatiquement démarré dessus. Vous pouvez voir comment se déroule le processus de mise à jour dans la console.

Le système redémarrera automatiquement une fois la mise à niveau terminée. Les entrées du menu GRUB seront automatiquement mises à jour en fonction du système d'exploitation.

Connectez-vous au système et vérifiez que le système d'exploitation actuel est celui dont vous avez besoin.

$ cat /etc/os-release

Exemple de résultat :

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"

Génial! Nous avons mis à jour avec succès CentOS 7 vers la version AlmaLinux 8.4.

Vider le cache (facultatif)

Tous les packages téléchargés pendant la migration seront enregistrés dans le cache jusqu'à la prochaine transaction réussie. Vous pouvez supprimer les packages mis en cache en exécutant la commande suivante en tant que sudo ou root utilisateur :

$ sudo dnf clean packages

Mettre à jour le nom d'hôte

Enfin, mettez à jour le nom d'hôte, le nom d'utilisateur pour qu'il corresponde à AlmaLinux.

$ sudo hostnamectl set-hostname almalinux8

Terminé! Redémarrez votre système pour que les modifications prennent effet.

Conclusion

Dans ce guide, nous avons vu comment mettre à niveau CentOS 7 vers des dérivés RHEL 8 tels qu'AlmaLinux, CentOS Stream, Oracle Linux et Rocky Linux avec l'aide du projet ELevate des développeurs AlmaLinux.

Je ne m'attendais pas à ce que la migration de CentOS 7 vers les dérivés de RHEL 8 soit aussi simple ! Les développeurs d'AlmaLinux ont fait un travail louable. Qu'il s'agisse d'une correction de bogue ou d'un ajout de fonctionnalité, ils interviennent rapidement et y travaillent. Ils ont été les premiers à publier une alternative stable à CentOS 8. Ils ont également fourni un script Bash pour convertir facilement les systèmes CentOS 8 existants vers AlmaLinux 8. Pour plus de détails, consultez le guide suivant.

  • Migration vers AlmaLinux depuis CentOS 8 à l'aide du script de déploiement Almalinux

Ressource :

  • AlmaLinux ELevate

AlmaLinux
  1. AlmaLinux contre Rocky Linux

  2. Comment migrer de Centos 8 vers Rocky Linux 8

  3. Comment démarrer l'interface graphique sur CentOS/AlmaLinux/Rocky Linux 8

  4. Migrer CentOS 8 vers Rocky Linux

  5. Comment migrer de CentOS 8 vers Rocky Linux 8

Comment migrer les serveurs CentOS Linux 6, 7, 8 vers Oracle Linux

Comment migrer de CentOS 8 Linux vers AlmaLinux 8

Comment migrer votre Linux CentOS 8 vers le flux CentOS

Comment migrer de CentOS 8 vers Rocky Linux 8

Comment migrer de CentOS vers Oracle Linux

Comment migrer le flux CentOS vers AlmaLinux