Red Hat Enterprise Linux 8 est sorti le 7 mai 2019. Cette nouvelle version comprend de nombreuses nouvelles fonctionnalités et une option de mise à niveau de RHEL 7 vers RHEL 8.
Dans mon post précédent, j'expliquais l'installation pas à pas de RHEL 8, et c'était une installation propre du système d'exploitation. Comme je l'ai dit plus tôt, il est désormais possible de mettre à niveau Red Hat Enterprise Linux 7 vers Red Hat Enterprise Linux 8 à l'aide de l'utilitaire Leapp.
Dans cet article, nous verrons comment passer de RHEL 7 à RHEL 8.
Configuration requise
- Système RHEL 7.6 x86_64
- Variante de serveur
- Au moins 100 Mo d'espace libre sur la partition /boot
Tâches préalables à la mise à niveau
Sauvegarde du système
Assurez-vous d'exécuter une sauvegarde complète du système avec l'outil de sauvegarde utilisé par votre organisation ou de prendre un instantané de la machine virtuelle si le serveur est une machine virtuelle.
Cette tâche est une activité de pré-mise à niveau très importante qui vous aide à remettre un système à ce qu'il était avant la mise à niveau en cas de problème après la mise à niveau vers RHEL 8.
Enregistrer le système
Assurez-vous d'avoir activé l'abonnement RHEL sur votre système en l'enregistrant auprès de Red Hat. Sinon, utilisez la commande ci-dessous pour enregistrer le système.
subscription-manager register

Attribuez un abonnement au serveur Red Hat Enterprise Linux au système à l'aide de la commande ci-dessous. Cette commande attribuera automatiquement l'abonnement en fonction du système d'exploitation.
subscription-manager attach --auto

Vérifiez l'abonnement joint avec la commande ci-dessous.
subscription-manager list --installed

Préparer le système pour la mise à niveau
Si vous voyez la sortie ci-dessus, mon système est RHEL 7.5 et il doit être mis à jour vers RHEL 7.6. Ainsi, pour éviter que le serveur ne soit mis à niveau vers une version ultérieure (Ex. RHEL 7.7 à l'avenir), nous définirons RHEL 7.6 comme point de départ pour la mise à niveau.
Vous devez définir RHEL 7.6 comme point de départ pour la mise à niveau même si le serveur est déjà RHEL 7.6.subscription-manager release --set 7.6

Si vous utilisez yum versionlock (il empêche yum d'installer ou de mettre à niveau un package pour mettre à niveau vers une version spécifique et non vers une version ultérieure), supprimez le verrou en exécutant :
yum versionlock clear
Comme je n'utilise pas yum versionlock, j'ai eu une erreur lors de l'exécution de la commande ci-dessus.

Mettez à jour tous les packages vers la dernière version.
yum -y update
Sortie :
Loaded plugins: product-id, search-disabled-repos, subscription-manager rhel-7-server-rpms | 3.5 kB 00:00:00 (1/3): rhel-7-server-rpms/x86_64/updateinfo | 3.1 MB 00:00:02 (2/3): rhel-7-server-rpms/x86_64/group | 774 kB 00:00:01 (3/3): rhel-7-server-rpms/x86_64/primary_db | 55 MB 00:00:12 Resolving Dependencies --> Running transaction check ---> Package GeoIP.x86_64 0:1.5.0-11.el7 will be updated ---> Package GeoIP.x86_64 0:1.5.0-13.el7 will be an update ---> Package NetworkManager.x86_64 1:1.10.2-13.el7 will be updated . . . . . . python-backports x86_64 1.0-8.el7 rhel-7-server-rpms 5.8 k python-backports-ssl_match_hostname noarch 3.5.0.1-1.el7 rhel-7-server-rpms 13 k python-ipaddress noarch 1.0.16-2.el7 rhel-7-server-rpms 34 k python-setuptools noarch 0.9.8-7.el7 rhel-7-server-rpms 397 k Transaction Summary ===================================================================================== Install 1 Package (+7 Dependent packages) Upgrade 179 Packages Total download size: 249 M Downloading packages: Delta RPMs disabled because /usr/bin/applydeltarpm not installed. warning: /var/cache/yum/x86_64/7Server/rhel-7-server-rpms/packages/GeoIP-1.5.0-13.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY Public key for GeoIP-1.5.0-13.el7.x86_64.rpm is not installed (1/187): GeoIP-1.5.0-13.el7.x86_64.rpm | 1.5 MB 00:00:02 (2/187): NetworkManager-config-server-1.12.0-10.el7_6.noarch. | 146 kB 00:00:00 (3/187): NetworkManager-1.12.0-10.el7_6.x86_64.rpm | 1.7 MB 00:00:03 . . . . . . vim-minimal.x86_64 2:7.4.160-5.el7 wpa_supplicant.x86_64 1:2.6-12.el7 xfsprogs.x86_64 0:4.5.0-19.el7_6 yum.noarch 0:3.4.3-161.el7 zlib.x86_64 0:1.2.7-18.el7 Complete!
Redémarrez le système pour terminer les mises à jour du système.
reboot
Assurez-vous que la version du système est maintenant RHEL 7.6 au cas où vous auriez une autre version avant la mise à jour.
cat /etc/redhat-release

Installer Leapp
Activez le référentiel RHEL 7 Server - Extras (RPM) à l'aide de la commande ci-dessous.
subscription-manager repos --enable rhel-7-server-extras-rpms

Installez l'utilitaire Leapp à l'aide de la commande yum.
yum install -y leapp
Installez le package wget pour télécharger les fichiers supplémentaires requis pour la mise à niveau à l'aide du terminal.
yum install -y wget
Téléchargez les fichiers de données supplémentaires requis à partir de l'article de la base de connaissances et placez-les dans le répertoire /etc/leapp/files/.
cd /etc/leapp/files/ wget https://access.redhat.com/sites/default/files/attachments/leapp-data4.tar.gz
Extrayez le fichier d'archive que vous avez téléchargé à partir de la base de connaissances à l'aide de la commande tar.
tar -zxvf leapp-data4.tar.gz
Supprimez le fichier d'archive après avoir extrait son contenu.
rm -rf leapp-data4.tar.gz
Mise à niveau de RHEL 7 vers RHEL 8
Commencez la mise à niveau du système avec la commande ci-dessous.
leapp upgrade
L'utilitaire Leapp commence maintenant à collecter les données système, vérifie l'évolutivité du système et crée un rapport de pré-mise à niveau dans le fichier /var/log/leapp/leapp-report.txt.
Si le système peut être mis à niveau, l'utilitaire Leapp télécharge les données et les RPM pour la mise à niveau. En cas de problème, Leapp arrête le processus de mise à niveau et crée un rapport détaillé sur les problèmes et les solutions recommandées dans le fichier /var/log/leapp/leapp-report.txt.
Une fois la mise à niveau du système terminée, redémarrez le système.
reboot
Au redémarrage, le système démarrera dans l'image de disque RAM initiale basée sur RHEL 8, initramfs.

Leapp met à niveau tous les packages et redémarre automatiquement sur le système RHEL 8.

Tâches post-mise à niveau
Connectez-vous au système RHEL 8.
SELinux
Définissez le mode SELinux sur Application.
setenforce 1
Rendez-le permanent avec la commande ci-dessous.
sed -i 's/SELINUX=permissive/SELINUX=enforcing/g' /etc/selinux/config
Pare-feu
Activer le pare-feu
systemctl start firewalld systemctl enable firewalld
Vérifier la mise à niveau RHEL 8
Vérifiez la version actuelle du système d'exploitation avec la commande ci-dessous. La version actuelle doit être Red Hat Enterprise Linux 8.
cat /etc/redhat-release
Vérifiez la version du noyau. Ce devrait être v4.18 avec .el8.
uname -r

Vérifiez que Red Hat Enterprise 8 est installé.
subscription-manager list --installed

Enfin, vérifiez si vous pouvez accéder au système RHEL 8 via SSH. Cette étape garantit que les services réseau fonctionnent correctement.
ssh [email protected]
Si vous voyez ma capture d'écran précédente, je me suis connecté au système RHEL 8 à l'aide de PUTTY, ce qui confirme que le système RHEL 8 est disponible sur le réseau.
Conclusion
C'est tout. J'espère que cet article vous a aidé à mettre à niveau votre système de RHEL 7 à RHEL 8. Si vous êtes bloqué à un moment donné, contactez-nous via la section des commentaires.