Geo 사이트 업그레이드
버전별 업그레이드 단계를 따르지 않으면 예상치 못한 다운타임이 발생할 수 있습니다.
특정 질문이 있는 경우, 지원팀에 문의하세요.
데이터베이스의 주요 버전 업그레이드에는 Geo 2차 노드로 PostgreSQL 복제를 재초기화해야 합니다.
이는 Linux 패키지 및 외부에서 관리되는 데이터베이스 모두에 적용됩니다.
이로 인해 예상보다 긴 다운타임이 발생할 수 있습니다.
Geo 사이트를 업그레이드하는 것은 다음을 수행하는 것을 포함합니다:
- 업그레이드할 버전 또는 이전 버전에 따라 버전별 업그레이드 단계:
- 모든 업그레이드에 대한 일반 업그레이드 단계.
일반 업그레이드 단계
다운타임을 피하고 싶다면 제로 다운타임 업그레이드를 사용하는 것을 고려하세요.
새 GitLab 버전이 릴리스될 때 Geo 사이트를 업그레이드하기 위해 주 노드 및 모든 보조 사이트를 업그레이드하세요:
- 선택 사항. 각 보조 사이트에서 복제를 일시 중지하여 보조 사이트의 재해 복구(DR) 기능을 보호합니다.
- 주 노드의 각 노드에 SSH로 접속합니다.
- 주 노드에서 GitLab 업그레이드.
- 주 노드에서 테스트를 수행합니다. 특히 1단계에서 DR을 보호하기 위해 복제를 일시 중지한 경우에는 더더욱 그렇습니다. 업그레이드 문서에 업그레이드 후 테스트를 위한 몇 가지 제안이 있습니다.
-
주 노드와 보조 사이트의
/etc/gitlab/gitlab-secrets.json
파일에 있는 비밀이 동일한지 확인합니다. 파일은 모든 노드에서 동일해야 합니다. - 보조 사이트의 각 노드에 SSH로 접속합니다.
- 각 보조 사이트에서 GitLab 업그레이드.
-
1단계에서 복제를 일시 중지한 경우, 각 보조 사이트에서 복제를 재개합니다.
그 후 각 보조 사이트에서 Puma와 Sidekiq를 재시작합니다. 이는 이전에 업그레이드된 주 노드에서 현재 복제된 최신 데이터베이스 스키마에 대해 초기화되도록 하기 위함입니다.sudo gitlab-ctl restart sidekiq sudo gitlab-ctl restart puma
- 테스트 주 노드와 보조 사이트를 확인하고 각 버전을 확인합니다.
업그레이드 후 상태 확인
업그레이드 프로세스가 완료된 후, 모든 것이 제대로 작동하는지 확인하고 싶을 수 있습니다:
-
주 노드 및 보조 사이트의 애플리케이션 노드에서 Geo Rake 작업을 실행합니다. 모든 것이 초록색이어야 합니다:
sudo gitlab-rake gitlab:geo:check
- 주 노드의 Geo 대시보드에서 오류를 확인합니다.
- 주 노드에 코드를 푸시하여 데이터 복제가 제대로 이루어지는지 보조 사이트에서 확인합니다.
문제가 발생하면 Geo 문제 해결 가이드를 참조하세요.