백업에서 복원
GitLab은 백업 파일을 이용하여 복원 할 수 있습니다. 이번 페이지에서는 GitLab의 백업 파일로 복원하는 방법에 대해 설명합니다.
복원 시 gitlab.rb 과 gitlab-secrets.json 파일은 백업 파일에 포함되지 않기 때문에 별도로 복원해야 합니다.
SSH(Secure Shell)을 이용하여 GitLab 서버에 로그인 합니다. 이때, root권한을 사용해야 합니다.
백업 tar 파일이 /var/opt/gitlab/backups 디렉토리에 있는지 확인 합니다. 만약 백업 파일이 없다면 백업 생성 에서 설명된 내용으로 백업 파일을 생성할 수 있습니다. 백업 파일의 소유자는 git이어야 합니다.
sudo chown git:git /var/opt/gitlab/backups/1692860994_2023_08_24_15.7.5-ee_gitlab_backup.tar
데이터베이스에 연결된 프로세스를 중지합니다. GitLab의 나머지 부분은 실행 상태로 둡니다.
# sudo gitlab-ctl stop unicorn ### 14버전부터 puma로 변경
sudo gitlab-ctl stop puma
sudo gitlab-ctl stop sidekiq
sudo gitlab-ctl status
백업 파일을 이용하여 복원합니다.
sudo gitlab-rake gitlab:backup:restore BACKUP=1692860994_2023_08_24_15.7.5-ee
ERROR: must be owner of extension pg_trgm
ERROR: must be owner of extension btree_gist
ERROR: must be owner of extension btree_gist
ERROR: must be owner of extension pg_trgm
위 에러가 발생하고 복원이 실패하였다면 당황하지 말고 다시 복원 명령어를 입력합니다. (고질병 )
다시 복원하면 정상적으로 복원 됩니다.
GitLab을 재시작 합니다.
sudo gitlab-ctl restart
sudo gitlab-rake gitlab:check SANITIZE=true
추가 보증을 위해 업로드된 파일에 대해 무결성 검사를 수행할 수 있습니다 .
sudo gitlab-rake gitlab:doctor:secrets
sudo gitlab-rake gitlab:artifacts:check
sudo gitlab-rake gitlab:lfs:check
sudo gitlab-rake gitlab:uploads:check