Direkt zum Inhalt

Wie aktualisiere ich meine RHEL-EC2-Instance von RHEL 7 auf RHEL 8?

Lesedauer: 4 Minute
0

Ich muss meine Amazon Elastic Compute Cloud (Amazon EC2)-Instance für Red Hat Enterprise Linux (RHEL) aktualisieren.

Kurzbeschreibung

Verwende das Leapp-Hilfsprogramm, um ein direktes Upgrade von RHEL Version 7 auf RHEL Version 8 auf der Amazon-EC2-Instance durchzuführen. Leapp ist eine AWS Command Line Interface (AWS CLI), die Benutzern bei der Installation und dem direkten Upgrade hilft.

Es hat sich bewährt, vor dem Upgrade ein Backup der Instance zu erstellen. Erstelle dazu entweder ein Amazon Machine Image (AMI) aus der Instance oder erstelle einen Snapshot.

Es empfiehlt sich auch, zuerst ein Upgrade auf einer Test-Instance durchzuführen. Wenn alle Anwendungen in der Umgebung erwartungsgemäß funktionieren, führe ein Upgrade auf der Live-Produktions-Instance durch.

Informationen zu bekannten Einschränkungen und eine detaillierte Anleitung zum direkten Upgrade des Betriebssystems findest du unter Upgrading from RHEL 7 to RHEL 8 (Upgrade von RHEL 7 auf RHEL 8) auf der Red Hat-Website.

Lösung

Hinweis: Wenn du beim Ausführen von AWS-CLI-Befehlen Fehlermeldungen erhältst, findest du weitere Informationen dazu unter Problembehandlung bei der AWS CLI. Stelle außerdem sicher, dass du die neueste Version der AWS CLI verwendest.

  1. Bevor du ein Upgrade von RHEL 7 auf RHEL 8 durchführst, aktualisiere die Instance auf die neueste Nebenversion von RHEL 7. Verwende die folgenden Befehle in der AWS CLI:

    $ sudo su
    \# yum update -y
    \# reboot
  2. Stelle nach dem Neustart der Instance sicher, dass die Instance auf die neueste verfügbare RHEL-7-Nebenversion aktualisiert wurde. Verwende den folgenden Befehl:

    $ sudo su   
    \# cat /etc/redhat-release   
    Red Hat Enterprise Linux Server release 7.9 (Maipo)
  3. Installiere Leapp. Aktiviere zur Installation die erforderlichen RHUI-Repositorys und installiere das Paket. Führe den folgenden Befehl aus:

     # yum-config-manager --enable rhui-client-config-server-7  
     # yum-config-manager --enable rhel-7-server-rhui-extras-rpms  
     # yum install -y leapp leapp-rhui-aws leapp-repository leapp-repository-deps lvm2-python-boom —enablerepo=\*
  4. Führe diesen Befehl vor dem Upgrade aus, um nach Fehlern zu suchen:

    $ leapp preupgrade --no-rhsm

    Wenn du Fehler feststellst, befolge die Schritte unter Beheben von Fehlern vor dem Upgrade.

  5. Wenn du Red Hat Subscription Manager (RHSM) nicht verwendest, führe den folgenden Befehl aus:

    $ leapp upgrade --no-rhsm
  6. Führe den folgenden Befehl aus, um ein Upgrade für eine bestimmte Version (z. B. RHEL 8.8) durchzuführen:

    $ leapp upgrade --target 8.8 --no-rhsm
  7. Starte die Instance neu und vergewissere dich dann, dass auf der Instance RHEL 8 ausgeführt wird:

    \# reboot  
    \# cat /etc/redhat-release

Fehler vor dem Upgrade beheben

Wenn du den Befehl vor dem Upgrade ausführst, erhältst du möglicherweise die folgende Ausgabe:

\============================================================   
UPGRADE INHIBITED  
\============================================================  
Upgrade has been inhibited due to the following problems: 1. Inhibitor: Possible problems with remote login using root account 2. Inhibitor: Missing required answers in the answer fileConsult the pre-upgrade report for details and possible remediation  
\============================================================   
UPGRADE INHIBITED   
\============================================================  
Debug output written to /var/log/leapp/leapp-preupgrade.log  
\============================================================

Gehe wie folgt vor, um diese Fehler zu beheben:

„Inhibitor: Possible problems with remote login using root account.“

Erlaube PermitRootLogin für SSH, dieses Problem zu beheben. Die sshd-Konfigurationsdatei befindet sich im Ordner /etc/ssh/sshd_config. Hebe die Auskommentierung der folgenden Zeile in der sshd-Konfigurationsdatei auf:

#PermitRootLogin yes

„Inhibitor: Missing required answers in the answer file. Consult the pre-upgrade report for details and possible remediation.“

Die Ausgabe der Antwortdatei wird in der Datei /var/log/leapp/answer von Leapp generiert. Greife mit dem folgenden Befehl auf die Antwortdatei zu:

$ cat /var/log/leapp/answerfile

In der Antwortdatei werden Ergebnisse ähnlich den folgenden angezeigt:

\[remove\_pam\_pkcs11\_module\_check\]#   
Title: None# Reason: Confirmation  
#===================  remove\_pam\_pkcs11\_module\_check.confirm ==================  
\# Label: Disable pam\_pkcs11 module in PAM configuration? If no, the upgrade process will be interrupted.  
\# Description: PAM module pam\_pkcs11 is no longer available in RHEL-8 since it was replaced by SSSD.  
\# Reason: Leaving this module in PAM configuration may lock out the system.  
\# Type: bool# Default: None# Available choices: True/False  
\# Unanswered question. Uncomment the following line with your answer  
\# confirm =

Bestätige die Antworten mit dem folgenden Format:

$ leapp answer —section remove\_pam\_pkcs11\_module\_check.confirm=True

Überprüfe die Aktualisierungen der Datei mit dem folgenden Befehl:

$ cat /var/log/leapp/answerfile  
\[remove\_pam\_pkcs11\_module\_check\]  
confirm = True
AWS OFFICIALAktualisiert vor 8 Monaten