Symptome
Nachdem Sie ein Hotpatch installiert haben, können möglicherweise Probleme auftreten, die nicht mit dem Upgrade zusammenhängen.
- Features, die vor dem Hotpatch funktionierten, schlagen plötzlich fehl.
- Die Instanz ist auf inkonsistente Weise instabil und schwer nachzustellen.
- Dienste verhalten sich unerwartet oder übernehmen eine von Ihnen vorgenommene Änderung nicht.
Nichts in diesen Symptomen verweist auf das Upgrade, daher lohnt es sich, einen ausstehenden Neustart auszuschließen, bevor Sie weiter untersuchen.
Ursachen
Ein Hotpatch kann Updates für den Kernel oder Kernsystempakete enthalten. Das ausgeführte System verwendet weiterhin die Versionen, die beim letzten Start geladen wurden, sodass diese Updates erst wirksam werden, wenn Sie neu starten.
Das Hotpatch-Upgradeskript teilt Ihnen mit, wann ein Neustart erforderlich ist, aber es startet die Instanz nicht für Sie neu. Wenn Sie diese Nachricht verpassen oder den Neustart zurückstellen und dann vergessen, wird die Instanz in einem gemischten Zustand ausgeführt, in dem einige Komponenten aktualisiert werden und andere nicht. Weitere Hotpatches zu installieren, ohne neu zu starten, verschlimmert dies.
Problem bestätigen
-
Melden Sie sich per SSH an der administrativen Shell an. Weitere Informationen findest du unter Auf die Verwaltungsshell (SSH) zugreifen.
-
Überprüfen Sie, ob ein Neustart ausstehend ist. Jede der beiden Dateien ist nur vorhanden, wenn für das System ein Neustart erforderlich ist.
ls /var/run/reboot-required /var/run/reboot-required.pkgsWenn eine der beiden Dateien aufgeführt ist, steht ein Neustart aus. Wenn keines von beiden vorhanden ist, meldet der Befehl für beide Pfade
No such file or directory, was bedeutet, dass kein Neustart aussteht und das Problem an anderer Stelle liegt. -
Wenn
/var/run/reboot-required.pkgsvorhanden, können Sie sehen, welche Pakete auf den Neustart warten.cat /var/run/reboot-required.pkgs
Problem beheben
Durch das Neustarten ist Ihre GitHub Enterprise Server-Instance nicht verfügbar. Planen Sie den Neustart also, anstatt ihn sofort durchzuführen.
Warnung
Durch den Neustart wird jeder, der die Instanz verwendet, unterbrochen. Durch Aktivieren des Wartungsmodus wird verhindert, dass neue Arbeit gestartet wird, aber bereits laufende Arbeit wird nicht beendet. Warten Sie also, bis aktive Prozesse abgeschlossen sind, bevor Sie den Neustart ausführen.
-
Planen Sie ein Wartungsfenster mit Ihren Benutzern.
-
Aktivieren Sie den Wartungsmodus, und warten Sie dann, bis alle aktiven Prozesse abgeschlossen sind. Weitere Informationen findest du unter Wartungsmodus aktivieren und planen.
-
Starten Sie die Instanz neu.
sudo reboot -
Vergewissern Sie sich, dass kein Neustart aussteht, wenn die Instanz wieder verfügbar ist. Beide Dateien sollten jetzt nicht mehr vorhanden sein, sodass der Befehl für jeden Pfad
No such file or directorymeldet. Das ist das gewünschte Ergebnis.ls /var/run/reboot-required /var/run/reboot-required.pkgs -
Deaktivieren Sie den Wartungsmodus, und vergewissern Sie sich, dass das ursprüngliche Problem behoben ist.
Verhinderung eines erneuten Auftretens
- Wenn ein Hotpatch meldet, dass ein Neustart erforderlich ist, planen Sie ihn, und verfolgen Sie ihn nach abschluss. Sie können eine bequeme Zeit auswählen, aber neu starten, sobald es praktikabel ist, insbesondere, wenn der Hotpatch Sicherheitsfixes enthielt. Weitere Informationen findest du unter Upgrade mit einem Hotpatch.
- Installieren Sie nicht mehrere Hotpatches hintereinander, ohne einen Neustart durchzuführen, wenn ein Neustart erforderlich ist, da die Instanz weiter von dem Zustand abweicht, den die Updates erwarten.
- Überprüfen Sie im Rahmen Ihrer Überprüfungen nach dem Upgrade auf einen ausstehenden Neustart, damit Sie ihn abfangen, bevor Ihre Benutzer dies tun.
Kontaktieren GitHub-Support
Wenn die Probleme nach dem Neustart weiterhin bestehen oder wenn Sie bei einem dieser Schritte unsicher sind, wenden Sie sich an GitHub-Support, anstatt den Vorgang fortzusetzen. Weitere Informationen findest du unter Erstellen eines Supporttickets.
Wenn Sie bereits ein Ticket geöffnet haben, hilft das Anfügen eines Support-Bundles GitHub-Support, das Problem schneller zu diagnostizieren. Weitere Informationen findest du unter Bereitstellen von Daten für GitHub Support.