Benutzer-Werkzeuge

Webseiten-Werkzeuge


de:technische-dokumentationen:tutorials:einrichten_eines_gitlab-backup_mit_backup-suite_backuppc

Tutorial

Version Status Datum Author URL
0.1 Erster Entwurf TT.MM.JJJJ Vorname Nachname
0.2 Ergänzungen TT.MM.JJJJ Vorname Nachname
1.0 Review und Freigabe TT.MM.JJJJ Vorname Nachname

1. Kurzfassung

Mit diesem Tutorial soll ersichtlich werden wie man eine Gitlab-Umgebung mit der Backup-Suite backuppc sichert. Mit Sudoers und Rsync werden alle wichtigen Befehle ausgeführt. Es wird ein Dump erstellt und extra Konfigurationsdatei zusätzlich abgespeichert. Mit dem Dump kann man einen einfachen Restore durchführen. Um einen Bare-Metal-Restore durchzuführen muss man sich aber an die offizielle Dokumentation wenden.

2. Tutorial

Vorbereitung: Um ein Backup einer Gitlab-Umgebung durchführen zu können, braucht man zuerst eine Gitlab-Maschine sowie ein Backup-Server.

-Anleitung Gitlab Installation-

-Anleitung backuppc Installation-

Backup von Gitlab

Es wird angenommen das man Sudoers installiert hat und man jegliche Rsync-Konfigurationen schon umgesetzt hat (sudoers, ssh-keys, DNS). Da der Backup-Befehl als Git-User ausgeführt wird muss man dem Git-User die Berechtigungen per Sudoer verteilen.

Auf dem Backup-Server richtet man den Pre-Dump wie folgt ein: „$sshPath -q -x -l sysadmin $host sudo gitlab-backup create BACKUP=dump“ Mit diesem Befehl wird unter /var/opt/gitlab/backups ein Backup erstellt. Mit Rsync speichert man zwei Verzeichnisse ab: Wichtig ist, dass man beim RsyncClientPath sudo -u git eingibt. Da nur der Git-User auf die Backup-Datei Zugriff hat. Das Redis-Verzeichnis ist wichtig für den Bare-Metal-Restore.

Da der Dump keine wichtigen Konfigurations-Files abspeichert muss man einen zweiten Backup-Job einrichten der das /etc/gitlab Verzeichnis sichert. Dieser ist aufgebaut wie ein simpler Rsync-Job.

Restore von Gitlab

Beim Restore vom einem Bare-Metal-Gitlab folgt man am besten der offiziellen Dokumentation: https://docs.gitlab.com/ee/administration/backup_restore/

WICHTIG: Bis jetzt konnte ich nicht auf die Datenbank-Verzeichnisse zugreifen. Dies hat höchst wahrscheinlich mit dem Git-Datenbank-User zu tun.

3. Testing

3.1 Test 1 (Beispiel)

Testfall Nr. #1
Beschreibung Die Namensauflösung im Netzwerk funktioniert
Vorgehen mit nslookup die Namen von internen und externen Hosts auflösen:
nslookup srv-zh-01.dotcom.intern
nslookup pc-zh-01.dotcom.intern
Voraussetzung / Umfeld Auf dem AD-Server srv-zh-01 ist der DNS-Dienst aktiviert
Erwartetes Resultat Die Namen werden richtig aufgelöst
OK / nicht OK OK
Aufgetretene Fehler / Bemerkungen Keine

3.2 Test 2

Testfall Nr. #2
Beschreubung
Vorgehen
Voraussetzung / Umfeld
Erwartetes Resultat
OK / nicht OK
Aufgetretene Fehler / Bemerkungen

3.3 Test 3

Testfall Nr. #3
Beschreubung
Vorgehen
Voraussetzung / Umfeld
Erwartetes Resultat
OK / nicht OK
Aufgetretene Fehler / Bemerkungen

4. Auswertung

Was hat funktiniert[(ref note example)], was nicht, was waren die grössten Herausforderungen/Probleme, wie habe ich die Probleme gelöst, was mache ich beim nächsten Mal besser, Reflexion

5. Quellenverzeichnis

de/technische-dokumentationen/tutorials/einrichten_eines_gitlab-backup_mit_backup-suite_backuppc.txt · Zuletzt geändert: 2023/08/11 16:21 von y.nay