Wie aktualisiere ich das Betriebssystem von edoc platform (On-Premises) von Ubuntu 20.04 LTS auf Ubuntu 24.04 LTS
Komponente | edoc platform |
---|---|
Version | Ubuntu Server 20.04 LTS |
Erstellt am |
|
Zuletzt geändert am | Thu, 20 Feb 2025 15:31:21 GMT |
Reviewstatus | Review: Approved (1/1) |
KB-Artikelnummer | 840335402 |
Zusammenfassung
In diesem Artikel erfahren Sie, wie Sie edoc platform On-Premises von Ubuntu 20.04 LTS auf Ubuntu 24.04 LTS aktualisieren. Darüber hinaus finden Sie Hilfestellungen zu potenziellen Problemen, die ggf. beim Aktualisierungsprozess auftreten können.
Zuerst treffen Sie einige Vorbereitungen, um anschließend ein Update auf Ubuntu 22.04 LTS und dann auf Ubuntu 24.04 LTS durchzuführen.
Wichtige Voraussetzungen
Sie verfügen über ausreichende Linux-Kenntnisse, um die beschriebenen Befehle auszuführen und ggf. anzupassen.
Sie verwenden aktuell Ubuntu Server 20.04 LTS. Ubuntu Desktop-Versionen werden nicht unterstützt.
Sie haben ein aktuelles Backup des Systems erstellt.
Während des Aktualisierungsprozesses gibt es eine Ausfallzeit von ca. 1 - 1,5 Stunden. Planen Sie mit Ihrem Team zusammen den Aktualisierungszeitpunkt.
Ihr edoc platform-Server ist mit dem Internet verbunden, um Updates herunterzuladen.
Sie müssen Ihre Firewall ggf. temporär deaktivieren, um Updates durchzuführen.
Sie sind administrativer Benutzer mit sudo-Berechtigung.
Sie haben lesenden Zugriff auf das System in edoc system control.
Die Version der Kubernetes-Umgebung (MicroK8s) ist bereits auf 1.19 aktualisiert worden. Weitere Informationen finden Sie in diesem KB-Artikel im Abschnitt “So bereiten Sie die Aktualisierung vor”.
Bitte nehmen Sie vor der Aktualisierung Kontakt mit Ihrer edoc-Projektleitung auf, um mögliche individuelle Risiken zu vermeiden.
Lösung
So bereiten Sie die Aktualisierung vor
Vor dem Update überprüfen Sie die folgenden Punkte. Bei Abweichungen im Ergebnis ändern Sie die Konfiguration gemäß den Angaben.
Bitte gehen Sie wie folgt vor, um das Update vorzubereiten:
Stellen Sie mit folgendem Befehl sicher, dass Ubuntu auf LTS-Releases festgelegt wurde:
CODEgrep Prompt /etc/update-manager/release-upgrades
Die Ausgabe muss Prompt=lts sein. Falls Sie eine andere Ausgabe erhalten, legen Sie den Prompt mithilfe eines Texteditors auf lts fest.
Überprüfen Sie mit folgendem Befehl, ob die Pakete gehalten werden. Das bedeutet, dass diese Pakete nicht automatisch aktualisiert werden, selbst wenn neuere Versionen verfügbar sind.
CODEsudo apt-mark showhold
Korrekt ist, dass keine Ausgabe erfolgen soll, somit werden keine Pakete gehalten.
Überprüfen Sie die Version von Ubuntu mit folgendem Befehl:
CODElsb_release -r
Die Ausgabe muss Release: 20.04 sein.
Überprüfen Sie den Status der Ubuntu-Firewall ufw mit folgendem Befehl:
CODEsudo ufw status
Der Status der Firewall muss Disabled sein, damit Sie das Update durchführen können. Andernfalls deaktivieren Sie temporär für das Update die Firewall.
Überprüfen Sie, welche zusätzlichen Paketquellen von apt abgerufen werden. Neben den Standardpaketquellen von Ubuntu wurde durch edoc die Paketquelle ppa:ondrej/php hinzugefügt. Eventuell sind auch weitere Paketquellen hinzugefügt worden, wie z.B. die Microsoft-Paketquelle bei Microsoft Azure-Systemen. Die Paketquellen finden Sie unter
/etc/apt/sources.list.d
.Überprüfen Sie die Version von MicroK8s mit folgendem Befehl:
CODEsnap list microk8s
Die Version muss Version v1.19 sein. Wenn die Version von MicroK8s älter als 1.19 ist, müssen Sie das Programm aktualisieren. Die Funktion befindet sich in edoc system control für das System unter Konfigurationen > Systemupdate > Weitere Optionen > Microk8s aktualisieren. (Wenden Sie sich an Ihren edoc-Kontakt, damit die Aktualisierung von MicroK8s durchgeführt wird.)
So führen Sie die Aktualisierung des Systems durch
Nach den Vorbereitungen können Sie das System aktualisieren. Stoppen Sie zuerst Microk8s, aktualisieren Sie nochmals alle Pakete und fügen Sie alle cgroup-Einträge hinzu.
Starten der Aktualisierung
Mit dem Stoppen von MicroK8s stehen die Services nicht mehr zur Verfügung.
Stoppen Sie MicroK8s mit folgenden Befehl:
CODEsudo microk8s stop
Aktualisieren Sie die Paketlisten und installieren Sie die neuesten Pakete mit folgenden Befehl:
CODEsudo apt update && sudo apt dist-upgrade -y && sudo apt autoremove -y
Fügen Sie alle cgroup-Einträge mit folgendem Befehl dem Kernel hinzu:
CODEsudo grep -rl "GRUB_CMDLINE_LINUX_DEFAULT=" /etc/default/grub* | xargs sudo sed -i '/GRUB_CMDLINE_LINUX_DEFAULT=/ { /systemd\.unified_cgroup_hierarchy=0/! s/"$/ systemd.unified_cgroup_hierarchy=0"/ }' [ -d "/etc/default/grub.d/" ] && [ "$(ls -A /etc/default/grub.d/)" ] && sudo sed -i '/^GRUB_CMDLINE_LINUX_DEFAULT=/s/^/# /' /etc/default/grub.d/* sudo update-grub sudo reboot
Achtung
MicroK8s ist mit der verwendeten Konfiguration ausschließlich mit der Änderung der cgroup-Einträge unter Ubuntu 24.04 LTS funktional.
Aktualisieren des Systems auf Ubuntu 22.04 LTS
In diesem Schritt aktualisieren Sie Ubuntu 20.04 LTS auf Version 22.04 LTS. Nach Ausführen des Befehls werden je nach installierten Paketen auf dem Betriebssystem Fragen zur Konfiguration gestellt.
Im Aktualisierungsprozess werden verschiedene Fragen gestellt, die Sie in der Regel mit y (ja) bestätigen und bestätigen Sie immer, dass die lokale Konfiguration beibehalten wird.
Sie starten die Installation mit dem Befehl:
sudo do-release-upgrade
Folgende Fragen könnten auftauchen, die Sie entsprechend bestätigen:
Das Öffnen eines zusätzlichen SSH Ports unter Port 1022 bestätigen Sie mit y (Continue).
Es wird eine Information darüber angezeigt, dass der Port auch in der Firewall freigegeben werden muss. Stellen Sie dies sicher und bestätigen Sie die Information mit der Eingabetaste (Enter).
Es wird eine Informationen darüber angezeigt, dass Third-Party-Paketquellen deaktiviert wurden. Bestätigen Sie die Information mit der Eingabetaste (Enter).
Es wird eine Bestätigung zur Anpassung der installierten Pakete gefordert. Bestätigen Sie die Anpassung mit y. Es wird dargestellt, wie groß der Download ist.
Bestätigen Sie den Neustart der Services beim Upgrade der Librarys, wie z.B. (libc), mit yes.
Bestätigen Sie das Löschen obsoleter Pakete (Remove obsolete packages?) mit y.
Bestätigen Sie audit.rules mit n.
Bestätigen Sie die Änderungen in grub mit ok.
Das Beibehalten der Konfiguration von Paketen bestätigen Sie mit N.
Bestätigen Sie den Neustart mit y.
Aktualisieren des Systems auf Ubuntu 24.04 LTS
Bitte aktualisieren Sie die Paketlisten und installieren Sie die neusten Pakete mit folgenden Befehl:
sudo apt update && sudo apt dist-upgrade -y && sudo apt autoremove -y
In diesem Schritt aktualisieren Sie Ubuntu 22.04 LTS auf Version 24.04 LTS. Ähnlich wie im vorherigen Schritt werden nach dem Ausführen des Befehls - je nach installierten Paketen auf dem Betriebssystem - Fragen zur Konfiguration gestellt.
Wir empfehlen, die Fragen entsprechend der unten angegebenen Vorgaben zu beantworten. Wenn die Fragen abweichen, ist in der Regel die Standardantwort (mit Eingabetaste bestätigen oder lokale Konfiguration beibehalten) korrekt.
Sie starten das Update mit dem Befehl:
sudo do-release-upgrade
Folgende Fragen könnten auftauchen, die Sie entsprechend bestätigen:
Bestätigen Sie die Frage zum Fortfahren (Continue) mit y.
Das Öffnen eines zusätzlichen SSH Ports unter Port 1022 bestätigen Sie mit y (Continue).
Es wird eine Information darüber angezeigt, dass der Port auch in der Firewall freigegeben werden muss. Stellen Sie dies sicher und bestätigen Sie die Information mit der Eingabetaste (Enter).
Es wird eine Informationen darüber angezeigt, dass Third-Party-Paketquellen deaktiviert wurden. Bestätigen Sie mit der Eingabetaste (Enter).
Es wird eine Bestätigung zur Anpassung der installierten Pakete gefordert. Bestätigen Sie diese mit y. Es wird dargestellt, wie groß der Download ist.
Bestätigen Sie den Neustart der Services bei Upgrade der Librarys, wie z.B. (libc) mit yes.
Bestätigen Sie das Löschen obsoleter Pakete (Remove obsolete packages?) mit y.
Bestätigen Sie audit.rules mit n.
Bestätigen Sie die Änderungen in grub mit ok.
Bestätigen Sie den Neustart mit y.
Aufgaben nach der Aktualisierung
Sie haben das System nun auf Ubuntu 24.04 LTS aktualisiert. Als Nächstes führen Sie nun einige Schritte durch, um sicherzustellen, dass alles wieder funktioniert:
Überprüfen Sie mit folgendem Befehl, ob Ubuntu 24.04 LTS jetzt installiert wurde:
CODElsb_release -r
Die Ausgabe muss lauten Ubuntu 24.*.
Überprüfen Sie mit folgendem Befehl, ob cgroup-Einträge im Kernel vorhanden sind:
CODEif stat -fc %T /sys/fs/cgroup/|grep -q tmpfs; then echo -e "cgroup ok";fi
Die Ausgabe muss lauten cgroup ok.
Deaktivieren Sie mit folgendem Befehl das Feature LocalStorageCapacityIsolation im kubelet:
CODEgrep -q '\--feature-gates="LocalStorageCapacityIsolation=false"' /var/snap/microk8s/current/args/kubelet || echo '--feature-gates="LocalStorageCapacityIsolation=false"' | sudo tee -a /var/snap/microk8s/current/args/kubelet
Aktivieren Sie erneut die verwendeten Drittanbieter-Paketquellen. Die Paketquellen wurden während des Updates innerhalb der Datei auskommentiert bzw. es wurden Backups der Dateien als *.distUpgrade erstellt. Die zwei oft benutzten Paketquellen ppa:ondrej/php und microsoft-prod können Sie mithilfe des folgenden Skripts wieder aktivieren:
if [ ! -f "/etc/apt/sources.list.d/ondrej-ubuntu-php-noble.sources" ]; then sudo rm /etc/apt/sources.list.d/ondrej-ubuntu-php-* 2>/dev/null;sudo add-apt-repository ppa:ondrej/php -y;fi
if [ -f "/etc/apt/sources.list.d/microsoft-prod.sources" ]; then sudo curl -sSL -O https://packages.microsoft.com/config/ubuntu/$(lsb_release -sr)/packages-microsoft-prod.deb && sudo dpkg -i packages-microsoft-prod.deb && sudo rm packages-microsoft-prod.deb;fi
Aktualisieren Sie die Systempakete mit folgendem Befehl:
CODEsudo apt update && sudo apt dist-upgrade -y && sudo apt autoremove -y
Optional: Sollte es zu Problemen kommen, überprüfen Sie Ihre Repos unter /etc/apt/sources.list.d/. Die Repros müssen auf Ubuntu 24 (Noble) referenzieren. Falls apt update nicht durchlaufen sollte (und nur dann), können Sie folgenden Befehl ausführen, um alle Repositorys zu Ubuntu 24 (Noble) zu wechseln:
CODEls /etc/apt/sources.list.d/*.list | sudo xargs -I{} sed -i -e 's/^[[:space:]]*//' -e '/disabled on upgrade/s/^#//' -e 's/20\.04/24.04/g' -e 's/focal/noble/g' -e 's/mantic/noble/g' {}
Starten Sie MicroK8s mit folgenden Befehl:
CODEsudo microk8s start
Fragen Sie mit folgendem Befehl den Status der Pods ab. Warten Sie unbedingt, bis alle Pods den Status running anzeigen. Normalerweise dauert es ca. 5-10 Minuten.
CODEkubectl get pods -A
Prüfen Sie das System in edoc system control, und zwar hinsichtlich des Status von MicroK8s und wann der letzte Kontakt hergestellt wurde. Der letzte Kontakt muss zeitlich nach der Aktualisierung erfolgt sein.
Sie haben es geschafft und edoc platform erfolgreich auf Ubuntu 24.04 LTS aktualisiert.
Potenzielle Warnmeldungen und Tipps
Es kann immer mal passieren, dass während des Aktualisierungsprozesses Meldungen angezeigt werden oder die Aktualisierung unterbrochen wird.
“apt update”-Warnung für Sicherheitsschlüssel (Keys)
Wenn eine Warnung bezüglich der Schlüssel (Keys) beim verwenden von apt auftreten, versuchen Sie das betroffene Repository erneut zu installieren. Wenn eine Neuinstallation nicht möglich ist, verwenden Sie den folgenden Workaround:
sudo cp /etc/apt/trusted.gpg /etc/apt/trusted.gpg.d
Weitere Informationen finden Sie im Internet, wenn Sie nach dem Stichwörtern “ apt” und “trusted.gpg"
Verbindung geschlossen während der Aktualisierung
Wenn Sie versehentlich die Verbindung während des Updates schließen, wird der Aktualisierungsprozess in den meisten Fällen weiter ausgeführt und Sie können mit folgendem Befehl wieder in die laufende Sitzung einsteigen:
sudo screen -D -r