Skip to main content

Enterprise Server 3.20 ist derzeit als Release Candidate verfügbar.

Konfigurieren des Sicherungsdiensts

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

In diesem Artikel

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 das Fünffache des von deinem primären GitHub-Appliance-Datenträger verwendeten Speicherplatzes zu. Dies berücksichtigt historische Momentaufnahmen und zukünftiges Wachstum.
    
  •         **Dateisystemunterstützung:** Der Sicherungsdienst verwendet Hardlinks für effizienten Speicher, und deine GitHub-Instanz verwendet symbolische Links. Das Sicherungsziel muss sowohl symbolische als auch feste Links unterstützen und ein Dateisystem mit Berücksichtigung der 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:

    cd /data/backup
    sudo touch file
    sudo ln -s file symlink
    sudo 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 eines NFS-Einhängepunkts 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.

Backup-Ziel einrichten

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. Verbinden Sie Ihr Sicherungsblockgerät mit der Instanz.

  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.

    ghe-storage-init-backup /dev/YOUR_DEVICE_NAME
    

    Dieser Befehl:

    • formatiert das Gerät (löscht alle Daten)

    • Bereitet es für die Verwendung durch den Sicherungsdienst vor.

    • Legt fest, dass es beim Start automatisch unter /data/backup eingebunden wird.

    • Falls in einer Clusterumgebung, konfiguriert er den Knoten in cluster.conf mit der Rolle backup-server.

Trennen eines Sicherungsdatenträgers

Warnung

Stellen Sie vor dem Trennen eines Sicherungsdatenträgers sicher, dass derzeit keine Sicherungen oder Wiederherstellungen ausgeführt werden. Das Trennen eines Datenträgers während der Verwendung kann zu Datenverlusten oder Dienstunterbrechungen führen.

Falls Sie den Sicherungsdatenträger von GitHub Enterprise Server trennen müssen, befolgen Sie die folgenden Schritte.

  1. Listen Sie Blockgeräte auf, und heben Sie die Einbindung von /data/backup auf.

    sudo lsblk
    sudo umount /data/backup
    
  2. Listen Sie logische Volumes auf, und deaktivieren Sie das logische Volume.

    sudo lvs
    sudo lvchange -an <backup_VG>/<backup_LV>
    
  3. Trennen Sie den Datenträger mithilfe der Konsole oder CLI, die vom Cloudanbieter oder Hypervisor bereitgestellt wird.

  4. Entfernen Sie den Bereitstellungspunkt.

    sudo rmdir /data/backup
    

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. Aktivieren und starten Sie den Mountdienst.

    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 des Sicherungsdiensts in der Verwaltungskonsole im Abschnitt „Sicherung“ verfügbar sein. Wenn Ihre Instanz Teil einer gruppierten Umgebung ist, ist die Seite „Backup-Dienst“ nach ghe-config-apply verfügbar.

Hinweis

Die Einstellungsseite wird erst angezeigt, nachdem der Sicherungsspeicher bei /data/backup eingehängt wird, indem die oben aufgeführten Initialisierungs- oder Einhängeschritte ausgeführt werden.

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.

Sicherung übernehmen

Nachdem der Dienst konfiguriert wurde, können Sie eine Sicherung manuell ausführen, indem Sie die folgenden Schritte ausführen:

  1. Öffne in der Verwaltungskonsole im oberen Menü die Registerkarte „Backups“.
  2. Klicken Sie auf "Jetzt sichern".

Eine GitHub Enterprise Server-Sicherung wird erstellt und in einer Liste angezeigt.

Planen automatisierter Sicherungen

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

  1. Öffnen Sie in der Verwaltungskonsole die Registerkarte „Einstellungen“ im oberen Menü.
  2. Wählen Sie im Abschnitt "Sicherung" einen vordefinierten Zeitplan (z. B. "Täglich") aus, oder geben Sie einen benutzerdefinierten Cron-Ausdruck ein.
  3. Klicken Sie auf " Einstellungen speichern" , um die Änderungen anzuwenden.

Die erste Ausführung ist eine vollständige Sicherung. Zukünftige Durchläufe werden inkrementell sein. 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.