Hallo, Entdecker! An dieser Seite wird aktiv gearbeitet, oder sie wird noch übersetzt. Die neuesten und genauesten Informationen finden Sie in unserer englischsprachigen Dokumentation.

Diese Version von GitHub Enterprise wird eingestellt am Diese Version von GitHub Enterprise wurde eingestellt am 2020-01-22. Es wird keine Patch-Freigabe vorgenommen, auch nicht für kritische Sicherheitsprobleme. Für eine bessere Leistung, verbesserte Sicherheit und neue Features nehmen Sie ein Upgrade auf die neueste Version von GitHub Enterprise vor. Wenden Sie sich an den GitHub Enterprise-Support, um Hilfe beim Upgrade zu erhalten.

Upgrade von GitHub Enterprise Server

Führen Sie ein GitHub Enterprise Server-Upgrade durch, um die neuesten Features und Sicherheitsupdates zu erhalten.

Inhalt dieses Artikels

Upgrade vorbereiten

  1. Bestimmen Sie eine Upgrade-Strategie, und wählen Sie eine Version aus, auf die das Upgrade durchgeführt werden soll. Weitere Informationen finden Sie unter „Upgrade-Anforderungen“.

  2. Erstellen Sie mit den GitHub Enterprise Server-Backup-Dienstprogramme ein neues Backup Ihrer primären Instanz. Weitere Informationen finden Sie in der „GitHub Enterprise Server-Backup-Dienstprogramme-Datei 'README.md'“.

  3. Wenn Sie mithilfe eines Upgrade-Pakets ein Upgrade durchführen, sollten Sie ein Wartungsfenster für GitHub Enterprise Server-Endbenutzer planen. Bei Verwendung eines Hotpatches muss der Wartungsmodus nicht verwendet werden.

    Hinweis: Das Wartungsfenster hängt vom Typ des Upgrades ab, das Sie ausführen. Für Upgrades mittels Hotpatch ist in der Regel kein Wartungsfenster erforderlich. Manchmal ist ein Neustart erforderlich, den Sie später durchführen können. Entsprechend dem Versionierungsschema von MAJOR.FEATURE.PATCH führen Patch-Veröffentlichungen mit einem Upgrade-Paket in der Regel zu weniger als fünf Minuten Ausfallzeit. Feature-Veröffentlichungen mit enthaltenen Datenmigrationen dauern anhand der Speicherleistung und der zu migrierenden Daten entsprechend länger. Weitere Informationen finden Sie unter „Wartungsmodus aktivieren und planen“.

Snapshot erstellen

Ein Snapshot ist ein Checkpoint einer virtuellen Maschine (VM) zu einem bestimmten Zeitpunkt. Es wird dringend empfohlen, ein Snapshot zu erstellen, bevor Sie Ihre virtuelle Maschine upgraden, damit Sie bei einem Fehlschlagen eines Upgrades Ihre VM auf den Snapshot zurücksetzen können. Wenn Sie ein Upgrade auf eine neue Feature-Veröffentlichung durchführen, müssen Sie einen VM-Snapshot erstellen. Wenn Sie ein Upgrade auf eine Patch-Veröffentlichung durchführen, können Sie die vorhandene Daten-Disk anhängen.

Es gibt zwei Snapshot-Typen:

  • VM-Snapshots speichern den gesamten VM-Zustand, einschließlich der Benutzer- und Konfigurationsdaten. Für diese zeitraubende Snapshot-Methode ist viel Speicherplatz erforderlich.

  • Daten-Disk-Snapshots speichern nur die Benutzerdaten.

    Hinweise:

    • Einige Plattformen ermöglichen es Ihnen nicht, einen Snapshot nur von Ihrer Daten-Disk zu erstellen. Bei diesen Plattformen müssen Sie einen Snapshot der gesamten VM erstellen.
    • Wenn von Ihrem Hypervisor keine vollständigen VM-Snapshots unterstützt werden, können Sie in schneller Abfolge einen Snapshot der Root- und Daten-Disk erstellen.
Plattform Snapshot-Methode URL zur Snapshot-Dokumentation
Amazon AWS Disk https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-creating-snapshot.html
Azure VM https://docs.microsoft.com/de-de/azure/backup/backup-azure-vms-first-look-arm
Hyper-V VM https://technet.microsoft.com/en-us/library/dd851843.aspx
Google Compute Engine Disk https://cloud.google.com/compute/docs/disks/create-snapshots
VMware VM https://pubs.vmware.com/vsphere-50/index.jsp#com.vmware.vsphere.vm_admin.doc_50/GUID-9720B104-9875-4C2C-A878-F1C351A4F3D8.html
XenServer VM https://support.citrix.com/article/CTX122978

Upgrade mit einem Hotpatch

Sie können ein Upgrade von GitHub Enterprise Server auf die neueste Patch-Version durchführen. Verwenden Sie dazu einen Hotpatch, für den kein Wartungsfenster und in der Regel kein Neustart erforderlich ist. Mittels Hotpatching können Sie ein Upgrade auf eine neuere Patch-Version durchführen, jedoch keine Feature-Veröffentlichung. So können Sie beispielsweise ein Upgrade von 2.10.1 auf 2.10.5 durchführen, da sie sich in derselben Featureserie befinden, jedoch nicht von 2.10.9 auf 2.11.0, da sie sich in unterschiedlichen Featureserien befinden. Mit der Managementkonsole können Sie einen Hotpatch sofort installieren oder dessen Installation für einen späteren Zeitpunkt planen. An der Verwaltungsshell können Sie mit dem Dienstprogramm ghe-upgrade einen Hotpatch installieren. Weitere Informationen finden Sie unter „Upgrade-Anforderungen“.

Hinweis: In Clusterumgebungen ist die Installation eines Hotpatches mittels Managementkonsole nicht verfügbar. Informationen zum Installieren eines Hotpatches in einer Clusterumgebung finden Sie unter „Cluster-Upgrade“.

Upgrade einer einzelnen Appliance mit einem Hotpatch durchführen

Hotpatch mit der Managementkonsole installieren
  1. Aktivieren Sie automatisch Updates. Weitere Informationen finden Sie unter „Automatische Updates aktivieren“.

  2. Klicken Sie in der oberen rechten Ecke einer beliebigen Seite auf .

    Raumschiffsymbol für den Zugriff auf die Einstellungen des Websiteadministrators

  3. Klicken Sie auf der linken Seitenleiste auf Managementkonsole.

    Managementkonsole tab in the left sidebar

  4. Klicken Sie im oberen Bereich der Managementkonsole auf Updates.

    Menüpunkt „Updates“

  5. Verwenden Sie nach dem Download eines neuen Hotpatches das Dropdownmenü für das Installationspaket:

    • Wählen Sie zur sofortigen Installation Now (Jetzt) aus:
    • Wählen Sie für die spätere Installation ein späteres Datum aus.
      Dropdownmenü mit Hotpatch-Installationsdatum
  6. Klicken Sie auf Install (Installieren).

    Schaltfläche zum Installieren des Hotpatches

Hotpatch mit der Verwaltungsshell installieren

Hinweis: Wenn Sie die Prüfung auf automatische Updates aktiviert haben, müssen Sie das Upgrade-Paket nicht herunterladen und können die automatisch heruntergeladene Datei verwenden. Weitere Informationen finden Sie unter „Prüfung auf automatische Updates aktivieren“.

  1. Stellen Sie eine SSH-Verbindung zu Ihre GitHub Enterprise Server-Instanz her.

    $ ssh -p 122 admin@HOSTNAME
  2. Navigieren Sie zur Seite GitHub Enterprise Server-Veröffentlichungen. Klicken Sie neben der Version, auf die Sie ein Upgrade durchführen, auf Download, und klicken Sie dann auf die Registerkarte Upgrading (Upgrade). Kopieren Sie die URL für das Upgrade-Hotpackage (Datei .hpkg).

  3. Laden Sie das Upgrade-Paket mit curl auf Ihre GitHub Enterprise Server-Instanz herunter:

    admin@HOSTNAME:~$ curl -L -O UPGRADE-PKG-URL
  4. Führen Sie den Befehl ghe-upgrade aus, und verwenden Sie dabei den Paketdateinamen:

    admin@HOSTNAME:~$ ghe-upgrade GITHUB-UPGRADE.hpkg
    *** verifying upgrade package signature...
  5. Wenn für den Kernel, MySQL, ElasticSearch oder andere Programme ein Neustart erforderlich ist, werden Sie vom Hotpatch-Upgrade-Skript dahingehend benachrichtigt.

Upgrade einer über Replikatinstanzen verfügenden Appliance mit einem Hotpatch durchführen

Hinweis: Zur Installation eines Hotpatches müssen Sie nicht in den Wartungsmodus wechseln oder die Replikation beenden.

Für die Hochverfügbarkeit und Geo-Replikation konfigurierte Appliances verwenden zusätzlich zu den primären Instanzen Replikatinstanzen. Zum Upgraden dieser Appliances müssen Sie die primäre Instanz und alle Replikatinstanzen nacheinander upgraden.

Upgrade der primären Instanz durchführen
  1. Führen Sie ein Upgrade der primären Instanz durch. Befolgen Sie dazu die unter „Hotpatch mit der Verwaltungsshell installieren“ beschriebenen Anweisungen.
Upgrade einer Replikatinstanz durchführen

Hinweis: Wenn Sie als Teil der Geo-Replikation mehrere Replikatinstanzen ausführen, sollten Sie diese Prozedur für jede Replikatinstanz nacheinander wiederholen.

  1. Führen Sie ein Upgrade der Replikatinstanz durch. Befolgen Sie dazu die unter „Hotpatch mit der Verwaltungsshell installieren“ beschriebenen Anweisungen. Wenn Sie mehrere Replikate für die Geo-Replikation verwenden, müssen Sie diese Prozedur wiederholen, um für jedes Replikat nacheinander ein Upgrade durchzuführen.

  2. Stellen Sie über die SSH als der Benutzer „admin“ auf Port 122 eine Verbindung zur SSH-Verwaltungsshell her:

    $ ssh -p 122 admin@replica-host
  3. Führen Sie Folgendes aus, um das Upgrade zu überprüfen:

    $ ghe-version

Upgrade mit einem Upgrade-Paket

Obwohl Sie einen Hotpatch verwenden können, um ein Upgrade auf die neueste Patch-Veröffentlichung in einer Featureserie durchzuführen, müssen Sie ein Upgrade-Paket verwenden, um ein Upgrade auf eine neuere Feature-Veröffentlichung durchzuführen. Wenn Sie beispielsweise ein Upgrade von 2.11.10 auf 2.12.4 durchführen möchten, müssen Sie ein Upgrade-Paket verwenden, da es sich um unterschiedliche Featureserien handelt. Weitere Informationen finden Sie unter „Upgrade-Anforderungen“.

Upgrade einer einzelnen Appliance mit einem Upgrade-Paket durchführen

Hinweis: Wenn Sie die Prüfung auf automatische Updates aktiviert haben, müssen Sie das Upgrade-Paket nicht herunterladen und können die automatisch heruntergeladene Datei verwenden. Weitere Informationen finden Sie unter „Prüfung auf automatische Updates aktivieren“.

  1. Stellen Sie eine SSH-Verbindung zu Ihre GitHub Enterprise Server-Instanz her.

    $ ssh -p 122 admin@HOSTNAME
  2. Navigieren Sie zur Seite GitHub Enterprise Server-Veröffentlichungen. Klicken Sie neben der Version, auf die Sie ein Upgrade durchführen, auf Download, und klicken Sie dann auf die Registerkarte Upgrading (Upgrade). Wählen Sie die entsprechende Plattform aus, und kopieren Sie die URL für das Upgrade-Paket (Datei .pkg).

  3. Laden Sie das Upgrade-Paket mit curl auf Ihre GitHub Enterprise Server-Instanz herunter:

    admin@HOSTNAME:~$ curl -L -O UPGRADE-PKG-URL
  4. Aktivieren Sie den Wartungsmodus, und warten Sie, bis alle aktiven Prozesse auf der GitHub Enterprise Server-Instanz abgeschlossen sind. Weitere Informationen finden Sie unter „Wartungsmodus aktivieren und planen“.

    Hinweis: Wenn Sie in einer Hochverfügbarkeitskonfiguration ein Upgrade der primären Appliance durchführen, sollte sich die Appliance bereits im Wartungsmodus befinden, sofern Sie die unter „Upgrade der primären Instanz durchführen“ beschriebenen Anweisungen befolgen.

  5. Führen Sie den Befehl ghe-upgrade aus, und verwenden Sie dabei den Paketdateinamen:

    admin@HOSTNAME:~$ ghe-upgrade GITHUB-UPGRADE.pkg
    *** verifying upgrade package signature...
  6. Bestätigen Sie, dass Sie das Upgrade fortsetzen möchten, und führen Sie nach der Überprüfung der Paketsignatur einen Neustart durch. Das neue Root-Dateisystem schreibt in die sekundäre Partition, und die Instanz startet automatisch im Wartungsmodus neu:

    *** applying update...
    This package will upgrade your installation to version version-number
    Current root partition: /dev/xvda1 [version-number]
    Target root partition:  /dev/xvda2
    Proceed with installation? [y/N]
  7. Deaktivieren Sie bei einzelnen Appliance-Upgrades den Wartungsmodus, damit Benutzer Ihre GitHub Enterprise Server-Instanz verwenden können.

    Hinweis: Wenn Sie in einer Hochverfügbarkeitskonfiguration ein Upgrade der Appliances durchführen, sollten Sie im Wartungsmodus bleiben, bis ein Upgrade sämtlicher Replikate durchgeführt wurde und die Replikation aktuell ist. Weitere Informationen finden Sie unter „Upgrade einer Replikatinstanz durchführen“.

Upgrade einer über Replikatinstanzen verfügenden Appliance mit einem Upgrade-Paket durchführen

Für die Hochverfügbarkeit und Geo-Replikation konfigurierte Appliances verwenden zusätzlich zu den primären Instanzen Replikatinstanzen. Zum Upgraden dieser Appliances müssen Sie die primäre Instanz und alle Replikatinstanzen nacheinander upgraden.

Upgrade der primären Instanz durchführen

Warnung: Wenn die Replikation angehalten wird, geht im Falle eines Fehlschlagens der primären Instanz die Arbeit verloren, die vor dem Upgrade des Replikats und dem Start der Replikation erledigt wird.

  1. Aktivieren Sie auf der primären Instanz den Wartungsmodus, und warten Sie auf den Abschluss sämtlicher aktiver Prozesse. Weitere Informationen finden Sie unter „Wartungsmodus aktivieren“.

  2. Stellen Sie über die SSH als der Benutzer „admin“ auf Port 122 eine Verbindung zur SSH-Verwaltungsshell her:

    $ ssh -p 122 admin@replica-host
  3. Führen Sie auf der Replikatinstanz oder auf allen Replikatinstanzen, falls Sie als Teil der Geo-Replikation mehrere Replikatinstanzen ausführen, den Befehl ghe-repl-stop zum Anhalten der Replikation aus.

  4. Führen Sie ein Upgrade der primären Instanz durch. Befolgen Sie dazu die unter „Upgrade einer einzelnen Appliance mit einem Upgrade-Paket durchführen“ beschriebenen Anweisungen.

Upgrade einer Replikatinstanz durchführen

Hinweis: Wenn Sie als Teil der Geo-Replikation mehrere Replikatinstanzen ausführen, sollten Sie diese Prozedur für jede Replikatinstanz nacheinander wiederholen.

  1. Führen Sie ein Upgrade der Replikatinstanz durch. Befolgen Sie dazu die unter „Upgrade einer einzelnen Appliance mit einem Upgrade-Paket durchführen“ beschriebenen Anweisungen. Wenn Sie mehrere Replikate für die Geo-Replikation verwenden, müssen Sie diese Prozedur wiederholen, um für jedes Replikat nacheinander ein Upgrade durchzuführen.

  2. Stellen Sie über die SSH als der Benutzer „admin“ auf Port 122 eine Verbindung zur SSH-Verwaltungsshell her:

    $ ssh -p 122 admin@replica-host
  3. Führen Sie Folgendes aus, um das Upgrade zu überprüfen:

    $ ghe-version
  4. Führen Sie auf der Replikatinstanz zum Starten der Replikation den Befehl ghe-repl-start aus.

  5. Führen Sie auf der Replikatinstanz den Befehl ghe-repl-status aus, um sicherzustellen, dass die Replikationsdienste ordnungsgemäß ausgeführt werden. Dieser Befehl gibt für alle Dienste OK zurück, wenn eine erfolgreiche Replikation verarbeitet wird und für das Replikat ein Upgrade durchgeführt wurde. Wenn der Befehl Replication is not running zurückgibt, wird die Replikation möglicherweise noch gestartet. Warten Sie etwa eine Minute, bevor Sie ghe-repl-status erneut ausführen.

    Hinweis: Während die erneute Synchronisierung verarbeitet wird, gibt der Befehl „ghe-repl-status“ ggf. erwartete Meldungen dahingehend zurück, dass die Replikation im Rückstand ist. Zum Beispiel: CRITICAL: git replication is behind the primary by more than 1007 repositories and/or gists

    Falls der Befehl ghe-repl-status nicht den Wert OK zurückgibt, sollten Sie die folgenden Schritte befolgen, um die Replikation manuell neu zu starten.

    1. Führen Sie auf der Replikatinstanz den Befehl ghe-repl-setup <primary-instance-ip> erneut aus.

    2. Führen Sie auf der Replikatinstanz zum Starten der Replikation den Befehl ghe-repl-start aus.

    3. Führen Sie auf der Replikatinstanz den Befehl ghe-repl-status aus, um sicherzustellen, dass die Replikationsdienste ordnungsgemäß ausgeführt werden. Dieser Befehl gibt für alle Dienste OK zurück, wenn eine erfolgreiche Replikation verarbeitet wird und für das Replikat ein Upgrade durchgeführt wurde.

  6. Deaktivieren Sie nach dem Upgrade-Abschluss des letzten Replikats und nach dem Abschluss der erneuten Synchronisierung den Wartungsmodus, damit Benutzer Ihre GitHub Enterprise Server-Instanz verwenden können.

Wiederherstellung nach einem fehlgeschlagenen Upgrade

Wenn ein Upgrade fehlschlägt oder unterbrochen wird, sollten Sie Ihre Instanz in ihren vorherigen Zustand zurücksetzen. Der entsprechende Prozess hängt vom Upgrade-Typ ab.

Rollback einer Patch-Veröffentlichung durchführen

Führen Sie den Befehl ghe-upgrade mit der Option --allow-patch-rollback aus, um ein Rollback einer Patch-Veröffentlichung durchzuführen. Wenn Sie ein Rollback eines Upgrades durchführen, müssen Sie eine Upgrade-Paketdatei mit der Dateinamenerweiterung .pkg verwenden. Hotpatch-Paketdateien mit der Dateinamenerweiterung .hpkg werden nicht unterstützt.

ghe-upgrade --allow-patch-rollback EARLIER-RELEASE-UPGRADE-PACKAGE.pkg

Nach der Ausführung des Befehls ist ein Neustart erforderlich. Der Rollback wirkt sich nicht auf die Datenpartition aus, da Migrationen nicht mit Patch-Veröffentlichung ausgeführt werden.

Weitere Informationen finden Sie unter „Befehlszeilenprogramme“.

Rollback einer Feature-Veröffentlichung durchführen

Um ein Rollback von einer Feature-Veröffentlichung durchzuführen, stellen Sie diese über einen VM-Snapshot wieder her, um sicherzustellen, dass die Root- und Datenpartitionen einen konsistenten Zustand aufweisen. Weitere Informationen finden Sie unter „Snapshot erstellen“.

Menschliche Unterstützung einholen

Sie können das Gesuchte nicht finden?

Kontakt