Diese Version von GitHub Enterprise wurde eingestellt am 2021-06-09. Es wird keine Patch-Freigabe vorgenommen, auch nicht für kritische Sicherheitsprobleme. Für eine bessere Leistung, verbesserte Sicherheit und neue Features nimm ein Upgrade auf die neueste Version von GitHub Enterprise vor. Wende Dich an den GitHub Enterprise-Support, um Hilfe beim Upgrade zu erhalten.

Backups auf Ihrer Appliance konfigurieren

Im Rahmen eines Disaster Recovery-Plans können Sie die Produktionsdaten auf your GitHub Enterprise Server instance schützen, indem Sie automatisierte Backups konfigurieren.

Informationen zu GitHub Enterprise Server Backup-Dienstprogramme

GitHub Enterprise Server Backup-Dienstprogramme ist ein Backup-System, das Sie auf einem separaten Host installieren, der in regelmäßigen Intervallen über eine sichere SSH-Netzwerkverbindung Backup-Snapshots von your GitHub Enterprise Server instance erstellt. Mit einem Snapshot können Sie eine vorhandene GitHub Enterprise Server-Instanz in einem vorherigen Zustand auf dem Backup-Host wiederherstellen.

Nur die seit dem letzten Snapshot hinzugefügten Daten werden über das Netzwerk übertragen und belegen zusätzlichen physischen Speicherplatz. Zum Minimieren der Auswirkung auf die Leistung werden Backups online unter der niedrigsten CPU-/E/A-Priorität durchgeführt. Zum Durchführen eines Backups muss kein Wartungsfenster geplant werden.

Ausführlichere Informationen zu Features, Anforderungen und zur erweiterten Nutzung finden Sie in der GitHub Enterprise Server Backup-Dienstprogramme README.

Vorrausetzungen

Sie müssen über ein von your GitHub Enterprise Server instance getrenntes Linux- oder Unix-Hostsystem verfügen, um GitHub Enterprise Server Backup-Dienstprogramme verwenden zu können.

Sie können GitHub Enterprise Server Backup-Dienstprogramme auch zur langfristigen dauerhaften Speicherung von kritischen Daten in eine vorhandene Umgebung integrieren.

Es wird empfohlen, dass der Backup-Host und your GitHub Enterprise Server instance geografisch voneinander getrennt sind. Dadurch wird gewährleistet, dass Backups wiederhergestellt werden können, falls am Hauptstandort eine schwere Katastrophe oder ein Netzwerkausfall auftritt.

Die Anforderungen an den physischen Speicher variieren basierend auf der Git-Repository-Festplattennutzung und den erwarteten Wachstumsmustern:

HardwareEmpfehlung
vCPUs2
Arbeitsspeicher2 GB
SpeicherDas Fünffache des zugeordneten Speichers der primären Instanz

Entsprechend Ihrer Nutzung, beispielsweise in Bezug auf die Benutzeraktivität und die ausgewählten Integrationen, sind möglicherweise mehr Ressourcen erforderlich.

GitHub Enterprise Server Backup-Dienstprogramme installieren

Hinweis: Um sicherzustellen, dass eine wiederhergestellte Appliance sofort verfügbar ist, sollten Sie Backups durchführen, die selbst in einer Geo-Replikationskonfiguration auf die primäre Instanz abzielen.

  1. Laden Sie die neueste GitHub Enterprise Server Backup-Dienstprogramme-Version herunter, und extrahieren Sie die Datei mit dem Befehl tar.
    $ tar -xzvf /path/to/github-backup-utils-vMAJOR.MINOR.PATCH.tar.gz     
  2. Kopieren Sie die enthaltene Datei backup.config-example nach backup.config, und öffnen Sie sie in einem Editor.
  3. Legen Sie den Wert GHE_HOSTNAME auf den Hostnamen oder die IP-Adresse Ihrer primären GitHub Enterprise Server-Instanz fest.
  4. Legen Sie den Wert GHE_DATA_DIR auf den Dateisystempfad fest, unter dem Sie Backup-Snapshots speichern möchten.
  5. Öffnen Sie unter https://HOSTNAME/setup/settings die Seite mit den Einstellungen Ihrer primären Instanz, und fügen Sie der Liste der autorisierten SSH-Schlüssel den SSH-Schlüssel des Backup-Hosts hinzu. Weitere Informationen finden Sie unter „Auf die Verwaltungsshell (SSH) zugreifen“.
  6. Führen Sie den Befehl ghe-host-check aus, um die SSH-Konnektivität mit your GitHub Enterprise Server instance zu verifizieren.
    $ bin/ghe-host-check        
  7. Führen Sie den Befehl ghe-backup aus, um ein anfängliches vollständiges Backup zu erstellen.
    $ bin/ghe-backup        

Weitere Informationen zur erweiterten Nutzung finden Sie in der GitHub Enterprise Server Backup-Dienstprogramme-Datei 'README.md'.

Backup planen

Mithilfe des Befehls cron(8) oder eines ähnlichen Diensts zum Planen von Befehlen können Sie regelmäßige Backups auf dem Backup-Host planen. Die konfigurierte Backup-Häufigkeit schreibt das Worst Case Recovery Point Objective (RPO) in Ihrem Wiederherstellungsplan vor. Angenommen, Sie haben das Backup so geplant, dass es täglich um Mitternacht ausgeführt wird. In diesem Fall könnten Sie in einem Notfallszenario bis zu 24 Stunden an Daten verlieren. Es wird empfohlen, mit einem stündlichen Backup-Plan zu beginnen. Dadurch wird garantiert, dass schlimmstenfalls maximal eine Stunde an Daten am Hauptstandort vernichtet wird.

Wenn sich Backup-Versuche überschneiden, wird der Befehl ghe-backup mit einer Fehlermeldung abgebrochen. Diese gibt an, dass ein gleichzeitiges Backup vorhanden ist. In diesem Fall wird empfohlen, die Häufigkeit Ihrer geplanten Backups zu verringern. Weitere Informationen finden Sie im Abschnitt „Backups planen“ der GitHub Enterprise Server Backup-Dienstprogramme README.

Backup wiederherstellen

Im Falle eines längeren Ausfalls oder einer Katastrophe am Hauptstandort können Sie your GitHub Enterprise Server instance wiederherstellen. Stellen Sie dazu eine andere GitHub Enterprise-Appliance bereit, und führen Sie auf dem Backup-Host eine Wiederherstellung aus. Sie müssen der Ziel-GitHub Enterprise-Appliance den SSH-Schlüssel des Backup-Hosts als einen autorisierten SSH-Schlüssel hinzufügen, bevor Sie eine Appliance wiederherstellen.

Führen Sie den Befehl ghe-restore aus, um den letzten erfolgreichen your GitHub Enterprise Server instance-Snapshot wiederherzustellen. Es sollte in etwa folgende Ausgabe angezeigt werden:

$ ghe-restore -c 169.154.1.1
> Checking for leaked keys in the backup snapshot that is being restored ...
> * No leaked keys found
> Connect 169.154.1.1:122 OK (v2.9.0)

> WARNING: All data on GitHub Enterprise appliance 169.154.1.1 (v2.9.0)
>          will be overwritten with data from snapshot 20170329T150710.
> Please verify that this is the correct restore host before continuing.
> Type 'yes' to continue: yes

> Starting restore of 169.154.1.1:122 from snapshot 20170329T150710
# ...Ausgabe gekürzt
> Completed restore of 169.154.1.1:122 from snapshot 20170329T150710
> Visit https://169.154.1.1/setup/settings to review appliance configuration.

Hinweis: Die Netzwerkeinstellungen sind aus dem Backup-Snapshot ausgeschlossen. Sie müssen das Netzwerk auf der Ziel-GitHub Enterprise Server-Appliance manuell konfigurieren, wie dies für Ihre Umgebung erforderlich ist.

Sie können diese zusätzlichen Optionen mit dem Befehl ghe-restore verwenden:

  • Das Flag -c überschreibt die Einstellungen, Zertifikate und Lizenzdaten auf dem Ziel-Host, selbst wenn es bereits konfiguriert ist. Lassen Sie dieses Flag weg, wenn Sie eine Testinstanz für Testzwecke einrichten und Sie die vorhandene Konfiguration auf dem Ziel beibehalten möchten. Weitere Informationen finden Sie unter „Backup- und Wiederherstellungsbefehle verwenden“ der GitHub Enterprise Server Backup-Dienstprogramme README.
  • Mit dem Flag -s können Sie einen anderen Backup-Snapshot auswählen.