Obnovení zálohy GitLab-CE
Když už jsme si minule obnovili soubor se zálohou Gitlabu, je na čase obnovit samotný gitlab.
Postup vyžaduje:
- Čistou instalaci Gitlab-ce v konkrétní verzi pořízení zálohy
- Soubor se zálohou
- Volitelně konfiguraci gitlabu
Jak zjistit verzi zálohy
Pokud nevíme, ve které verzi Gitlabu jsme pořídili, můžeme si z archivu zálohy
vytáhout soubor backup_information.yml
, takže například:
cd /var/bacula-restores
cd var/opt/gitlab/backups
tar xf 1493467484_2017_04_29_gitlab_backup.tar backup_information.yml
A prohlédneme si soubor:
$ cat backup_information.yml
:db_version: '20170423064036'
:backup_created_at: 2017-04-29 14:04:44.762632215 +02:00
:gitlab_version: 9.1.1
:tar_version: tar (GNU tar) 1.29
:skipped:
Musíme tedy obnovovat do verze 9.1.1. Pokud nemáme schovaný balíček, můžeme jej stáhnout z repositáře.
Obnova
Postup
spočívá v nahrání zálohy do adresáře /var/opt/gitlab/backups/
, vypnutí služeb
a spuštění skriptu.
Do adresáře /var/opt/gitlab/backups/
umístíme soubor se zálohou:
mv 1493467484_2017_04_29_gitlab_backup.tar /var/opt/gitlab/backups/
Pokud jsme zálohovali též adresář /etc
, obnovíme konfiguraci gitlabu v /etc/gitlab
. A spustíme
gitlab-ctl reconfigure
Vypneme služby:
sudo gitlab-ctl stop unicorn
sudo gitlab-ctl stop sidekiq
# Verify
sudo gitlab-ctl status
A spustíme obnovu:
sudo gitlab-rake gitlab:backup:restore BACKUP=1493467484_2017_04_29
Potom zbývá jen služby opět sputit a zkontrolovat stav gitlabu:
sudo gitlab-ctl start
sudo gitlab-rake gitlab:check SANITIZE=true
Pokud vše proběhlo ok, můžeme se nalogovat do našeho čerstvě obnoveného gitlabu.