Geo 사이트 업그레이드

세부 정보: Tier: 프리미엄, 얼티메이트 Offering: Self-managed

경고: Geo 사이트를 업데이트하기 전에 이 섹션들을 주의 깊게 읽으세요. 버전별 업그레이드 단계를 따르지 않으면 예상치 못한 다운타임이 발생할 수 있습니다. 특별한 질문이 있는 경우 지원팀에 문의하십시오. 데이터베이스 주요 버전 업그레이드는 PostgreSQL 복제 초기화를 Geo 세컨더리에 적용해야 합니다. 이는 리눅스 패키지 및 외부 관리 데이터베이스 모두에 적용됩니다. 이로 인해 예상보다 긴 다운타임이 발생할 수 있습니다.

Geo 사이트를 업그레이드하려면 다음을 수행해야 합니다:

  1. 버전별 업그레이드 단계를 수행합니다. 업그레이드하는 버전에 따라 다릅니다.
  2. 모든 업그레이드에 대한 일반적인 업그레이드 단계 수행합니다.

일반 업그레이드 단계

참고: 이러한 일반 업그레이드 단계는 멀티 노드 설정에서 다운 타임이 필요합니다. 다운 타임을 피하려면 다운 타임이 없는 업그레이드를 고려해보세요.

새로운 GitLab 버전이 출시되면 Geo 사이트를 업그레이드하려면 기본과 모든 세컨더리 사이트를 업그레이드합니다:

  1. 선택 사항. 각 세컨더리 사이트에서 복제 일시 중지하여 세컨더리 사이트의 재해 복구 (DR) 기능을 보호합니다.
  2. 기본 사이트의 각 노드에 SSH로 로그인합니다.
  3. 기본 사이트에서 GitLab을 업그레이드합니다.
  4. 특히 단계 1에서 DR을 보호하기 위해 복제를 일시 중지한 경우 기본 사이트에서 테스트를 수행합니다. 업그레이드 문서에는 업그레이드 후 테스트를 위한 몇 가지 제안이 있습니다.
  5. 기본 사이트와 세컨더리 사이트의 /etc/gitlab/gitlab-secrets.json 파일에서 비밀 정보가 동일한지 확인합니다. 해당 파일은 사이트의 모든 노드에서 동일해야 합니다.
  6. 세컨더리 사이트의 각 노드에 SSH로 로그인합니다.
  7. 세컨더리 사이트에서 GitLab을 업그레이드합니다.
  8. 단계 1에서 복제를 일시 중지한 경우 세컨더리에서 복제를 재개하십시오. 그런 다음, 각 세컨더리 사이트에서 Puma와 Sidekiq를 재시작합니다. 이는 이제 업그레이드된 기본 사이트로부터 복제된 새로운 데이터베이스 스키마에 대해 초기화되도록 하는 것입니다.

    sudo gitlab-ctl restart sidekiq
    sudo gitlab-ctl restart puma
    
  9. 업그레이드 후 상태 확인하고 각 기본세컨더리 사이트의 버전을 확인합니다.

업그레이드 후 상태 확인

업그레이드 프로세스가 완료되었으므로 모든 것이 올바르게 작동하는지 확인하려면 다음을 수행할 수 있습니다:

  1. 기본 및 세컨더리 사이트의 애플리케이션 노드에서 Geo Rake 작업을 실행합니다. 모든 것이 올바르게 표시되어야 합니다:

    sudo gitlab-rake gitlab:geo:check
    
  2. 기본 사이트의 Geo 대시보드에서 오류를 확인합니다.
  3. 코드를 기본 사이트에 푸시하여 데이터 복제를 테스트하고 세컨더리 사이트에서 수신되는지 확인합니다.

문제가 발생하는 경우 Geo 문제 해결 가이드를 참조하십시오.