InfoGrab Docs

GitLab 복원

GitLab 복원에 대해 설명합니다.

GitLab 복원 작업은 시스템 연속성을 유지하고 데이터 손실에서 복구하기 위해 백업에서 데이터를 복구합니다. 복원 작업: 데이터베이스 레코드 및 구성 복구 Git 저장소, 컨테이너 레지스트리 이미지 및 업로드된 콘텐츠 복원 패키지 레지스트리 데이터 및 CI/CD 아티팩트 복원 계정 및 그룹 설정 복원 프로젝트 및 그룹 위키 복구 프로젝트 수준 보안 파일 복원 외부 병합 요청 차이점 복구 복원 프로세스에는 백업과 동일한 버전의 기존 GitLab 설치가 필요합니다. 전제 조건 을 따르고 프로덕션에서 사용하기 전에 전체 복원 프로세스를 테스트하세요. 복원 전제 조건 # 대상 GitLab 인스턴스가 이미 작동 중이어야 합니다 # 복원을 수행하기 전에 작동 중인 GitLab 설치가 있어야 합니다. 이는 복원 작업을 수행하는 시스템 사용자( git )가 일반적으로 데이터를 가져오는 데 필요한 SQL 데이터베이스( gitlabhq_production )를 만들거나 삭제할 수 없기 때문입니다. 대상 GitLab 인스턴스에 기존 데이터가 없어야 합니다 # 복원 프로세스는 데이터 유형에 따라 기존 데이터를 다르게 처리합니다: PostgreSQL 데이터는 복원 프로세스 중에 자동으로 지워집니다. Git 저장소: 같은 이름의 저장소가 이미 존재하면 복원이 "저장소가 이미 존재합니다" 오류로 실패합니다. 자세한 내용은 이슈 118459 를 참조하세요. 파일 시스템 데이터는 복원 전에 별도의 디렉토리로 이동하려고 시도됩니다. 개체 저장소 데이터는 자동으로 지워지지 않습니다. 고아 데이터가 남지 않도록 복원 전에 개체 저장소 버킷을 수동으로 지워야 합니다. 예를 들어 프로덕션에서 스테이징으로 복원을 자동화할 때 신뢰할 수 있는 복원 프로세스를 위해 백업과 동일한 버전에서 새 GitLab 설치를 사용하세요. SQL 데이터 복원은 PostgreSQL 확장이 소유한 뷰를 건너뜁니다. 대상 GitLab 인스턴스는 정확히 동일한 버전이어야 합니다 # 백업이 생성된 것과 정확히 동일한 버전 및 유형(CE 또는 EE)의 GitLab에만 백업을 복원할 수 있습니다. 예를 들어 CE 15.1.4. 백업이 현재 설치와 다른 버전인 경우 백업을 복원하기 전에 GitLab 설치를 다운그레이드 하거나 업그레이드 해야 합니다. GitLab 시크릿을 복원해야 합니다 # 백업을 복원하려면 GitLab 시크릿도 복원해야 합니다. 새 GitLab 인스턴스로 마이그레이션하는 경우 이전 서버에서 GitLab 시크릿 파일을 복사해야 합니다. 여기에는 데이터베이스 암호화 키, CI/CD 변수 및 이중 인증에 사용되는 변수가 포함됩니다. 키 없이는 이중 인증이 활성화된 사용자의 액세스 손실, GitLab Runner 로그인 불가 등 여러 문제가 발생합니다. Warning 다른 FQDN으로 복원할 때 WebAuthn 장치가 비활성화됩니다: WebAuthn 등록(예: YubiKey)은 생성된 출처(도메인/호스트명)에 암호화 방식으로 바인딩됩니다. 원본 인스턴스와 다른 FQDN이 있는 GitLab 인스턴스로