Skip to main content

Konfigurieren des Sicherungsdiensts

So aktivierst und konfigurierst du den integrierten Sicherungsdienst in Verwaltungskonsole und migrierst optional Legacyeinstellungen.

Stelle vor dem Konfigurieren des Sicherungsdiensts sicher, dass Folgendes vorhanden ist:

  • Eine GitHub Enterprise Server-Instanz mit Version 3.17 oder höher
  • Ein dediziertes Speichervolume, das für die Verwendung als Sicherungsziel bereitgestellt wurde und verwaltet wird

Speicheranforderungen

Um zuverlässige und leistungsfähige Sicherungen sicherzustellen, muss dein Speicher die folgenden Anforderungen erfüllen:

  • Kapazität: Weise mindestens fünfmal so viel Speicherplatz zu wie der von deinem primären GitHub-Appliancedatenträger verbrauchte. Dadurch ist für Verlaufsmomentaufnahmen und zukünftiges Wachstum vorgesorgt.

  • Dateisystemunterstützung: Der Sicherungsdienst verwendet Hardlinks für effizienten Speicher, und deine GitHub-Instanz verwendet symbolische Links. Das Sicherungsziel muss sowohl symbolische Links als auch Hardlinks unterstützen, und es muss ein Dateisystem mit Berücksichtigung von Groß-/Kleinschreibung verwenden, um Konflikte zu vermeiden.

    Du kannst testen, ob dein Dateisystem die Generierung von Hardlinks aus symbolischen Links unterstützt, indem du Folgendes ausführst:

    touch file
    ln -s file symlink
    ln symlink hardlink
    ls -la
    

    Wenn der Befehl ln symlink hardlink erfolgreich abgeschlossen ist, wird das Dateisystem unterstützt.

  • Leistung: Verwende leistungsstarken Speicher mit geringer Latenz und hohen IOPS, um langsame Sicherungen und Wiederherstellungen zu vermeiden.

  • NFS: Vermeide die Verwendung einer NFS-Bereitstellung für das Sicherungsverzeichnis (in der Regel /data/backup), da dies zu Timeouts und beeinträchtigter Leistung führen kann.

Konfigurieren des Sicherungsdiensts

Du kannst GitHub Enterprise Server Backup Service über Verwaltungskonsole konfigurieren.

Einrichten des Sicherungsziels

Bevor du den Dienst konfigurierst, musst du das Speichervolume vorbereiten, in dem Sicherungen gespeichert werden.

Verwenden eines neuen Blockgeräts

Wenn du ein dediziertes Blockgerät als Sicherungsziel verwendest, musst du es über SSH initialisieren, bevor du mit Verwaltungskonsole fortfährst. Dieser Vorgang formatiert das Gerät und löscht alle vorhandenen Daten.

  1. Stelle eine Verbindung mit deiner Instanz über SSH als admin-Benutzer her. Weitere Informationen findest du unter Auf die Verwaltungsshell (SSH) zugreifen.

  2. Füge das Sicherungsblockgerät an die Instanz an.

  3. Ermittle den Gerätenamen mithilfe von lsblk, um verfügbare Blockgeräte aufzulisten. Stelle sicher, dass du das richtige Gerät auswählst, um Datenverlust zu vermeiden.

    lsblk
    
  4. Führe den Initialisierungsbefehl aus, und ersetze YOUR_DEVICE_NAME durch den tatsächlichen Gerätenamen, der im vorherigen Schritt ermittelt wurde.

    Warnung

    Mit diesem Befehl werden alle Daten auf dem angegebenen Gerät endgültig gelöscht. Überprüfe den Gerätenamen, und sichere alle wichtigen Daten, bevor du fortfährst.

    /usr/local/share/enterprise/ghe-storage-init-backup /dev/YOUR_DEVICE_NAME
    

    Dieser Befehl:

    • formatiert das Gerät (löscht alle Daten)
    • bereitet es auf die Verwendung durch den Sicherungsdienst vor
    • legt fest, dass es beim Start automatisch in /data/backup eingebunden wird

Wiederverwenden eines zuvor initialisierten Datenträgers

Wenn das Gerät bereits mit ghe-storage-init-backup initialisiert wurde, kannst du es ohne Neuformatierung wiederverwenden:

  1. Stelle eine Verbindung mit deiner Instanz über SSH als admin-Benutzer her.

  2. Füge den Datenträger an die Instanz an.

  3. Erstelle den Bereitstellungspunkt, falls keiner vorhanden ist.

    sudo mkdir -p /data/backup
    
  4. Aktiviere und starte den Bereitstellungsdienst.

    sudo systemctl enable ghe-backup-disk.service
    sudo systemctl start ghe-backup-disk.service
    

    Dadurch wird das Gerät in /data/backup eingebunden, und es wird sichergestellt, dass es in Zukunft automatisch eingebunden wird.

Konfigurieren von Sicherungseinstellungen

Nachdem das Sicherungsziel eingebunden wurde, wird die Seite „Backup Service“ in Verwaltungskonsole verfügbar. Wenn du ein Blockgerät verwendest, müssen die oben beschriebenen Initialisierungs- oder Bereitstellungsschritte abgeschlossen werden.

Hinweis

Die Einstellungsseite wird erst angezeigt, wenn der Sicherungsspeicher in /data/backup eingebunden ist.

Wenn du von GitHub Enterprise Server Backup Utilities migrierst, kannst du deine Konfiguration auf eine von zwei Arten übertragen:

  1. Manuelle Konfiguration: Erstelle deine Einstellungen direkt in Verwaltungskonsole neu.

  2. Migration über die Befehlszeile: Stelle eine SSH-Verbindung mit deiner Instanz her, kopiere deine backup.config-Datei aus den Sicherungshilfsprogrammen, und führe Folgendes aus:

    ghe-migrate-backup-config /path/to/your/backup.config
    

    Verwende das --dry-run-Flag, um Änderungen in der Vorschau anzuzeigen, ohne sie anzuwenden.

Planen automatisierter Sicherungen

Nachdem der Dienst konfiguriert wurde, kannst du einen Sicherungszeitplan definieren.

  1. Öffne in Verwaltungskonsole die Seite „Backup Service“.
  2. Wähle im Abschnitt „Backup Schedule“ einen vordefinierten Zeitplan aus (z. B. „Daily“), oder gib einen benutzerdefinierten Cron-Ausdruck ein.
  3. Klicken Sie auf Speichern, um die Änderungen zu übernehmen.

Die erste Ausführung ist eine vollständige Sicherung. Zukünftige Ausführungen sind inkrementell. Wenn ein neuer Sicherungsversuch gestartet wird, während noch ein vorheriger ausgeführt wird, wird er ggf. übersprungen oder schlägt fehl. Passe in diesem Fall den Zeitplan an, um Überlappungen zu vermeiden.