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