GitLab 업그레이드
GitLab의 업그레이드는 비교적 간단한 프로세스이지만, 복잡성은 다음과 같은 요소에 따라 증가할 수 있습니다.
- 사용한 설치 방법
- GitLab 버전의 오래된 정도
- 주 버전으로 업그레이드하는 경우
모든 업그레이드 방법에 관련된 정보가 포함된 전체 페이지를 반드시 읽어보십시오.
GitLab을 업그레이드하려면:
- 유지 관리 정책 문서를 숙지하십시오.
- 건너뛰는 버전에 대한 릴리스 게시물을 읽으십시오. 특히, 폐기 예정, 제거 사항 및 업그레이드에 관한 중요 사항을 확인하십시오.
- 백그라운드 마이그레이션을 확인하십시오.
- 업그레이드를 계획하십시오.
- 호환성을 확인하기 위해 다양한 GitLab 버전의 변경 사항을 확인하고 업그레이드하기 전에 다음을 참조하십시오.
- 설치 방법에 따른 업그레이드 단계를 따르십시오.
설치 방법에 따른 업그레이드
설치 방법 및 GitLab 버전에 따라, GitLab을 업그레이드할 수 있는 여러 공식 방법이 있습니다.
패키지 업그레이드 가이드 는 공식 GitLab 저장소에서 설치된 패키지를 업그레이드하는 데 필요한 단계를 포함하고 있습니다.
또한, 특정 버전으로 업그레이드하는 방법에 대한 지침이 있습니다.
GitLab은 Helm을 사용하여 Kubernetes 클러스터에 배포할 수 있습니다. 프로덕션 배포의 경우, Cloud Native Hybrid 지침을 준수하여 GitLab의 상태가 없는 구성 요소가 Kubernetes에서 실행되고 있는 동안, 상태가 있는 구성 요소는 Linux 패키지가 있는 컴퓨팅 VM에 배포됩니다.
차트 버전에서 GitLab 버전으로의 버전 매핑을 사용하여 업그레이드 경로를 결정하십시오.
클라우드 네이티브 배포는 프로덕션에서 지원되지 않습니다. 그러나 해당 환경을 업그레이드하는 방법에 대한 지침은 별도 문서에서 확인할 수 있습니다.
GitLab은 Community 및 Enterprise 에디션용 공식 Docker 이미지를 제공하며, Omnibus 패키지를 기반으로 합니다. Docker를 사용하여 GitLab을 설치하는 방법을 확인하십시오.
- 소스로부터 Community Edition 및 Enterprise Edition 업그레이드 - 소스에서 Community Edition 및 Enterprise Edition를 업그레이드하는 지침입니다.
- 패치 버전 가이드는 15.2.0에서 15.2.1과 같은 패치 버전에 필요한 단계를 포함하며, Community 및 Enterprise Edition에 적용됩니다.
과거에는 업그레이드 지침을 위해 별도 문서를 사용했지만, 지금은 단일 문서를 사용하도록 전환했습니다. 이전 업그레이드 지침은 여전히 Git 저장소에서 찾을 수 있습니다:
실행 중인 CI/CD 파이프라인 및 잡 다루기
GitLab Runner가 작업을 처리하는 동안 GitLab 인스턴스를 업그레이드하면 추적 업데이트가 실패합니다. GitLab이 온라인 상태로 돌아오면 추적 업데이트가 자체 복구됩니다. 그러나 오류에 따라 GitLab Runner가 재시도하거나 결국 작업 처리를 종료할 수 있습니다.
아티팩트의 경우, GitLab Runner는 세 번 시도한 후 작업이 최종적으로 실패합니다.
위 두 시나리오를 처리하려면 업그레이드 전 다음을 수행하는 것이 좋습니다.
- 유지 보수를 계획하십시오.
-
다음을
/etc/gitlab/gitlab.rb
에 추가하여 러너를 일시 중단하거나 새 작업이 시작하는 것을 방지하십시오:nginx['custom_gitlab_server_config'] = "location ^~ /api/v4/jobs/request {\n deny all;\n return 503;\n}\n"
그리고 다음과 같이 GitLab을 다시 구성하십시오.
sudo gitlab-ctl reconfigure
- 모든 작업이 완료될 때까지 기다립니다.
- GitLab을 업그레이드하십시오.
- GitLab Runner를 동일한 버전으로 업그레이드하십시오. 두 버전은 동일해야합니다.
- 이전의
/etc/gitlab/gitlab.rb
변경을 되돌려 러너를 다시 시작하고 새 작업을 시작할 수 있도록 해제하십시오.
에디션 간 업그레이드
GitLab은 커뮤니티 에디션(MIT 라이센스) 및 엔터프라이즈 에디션 두 가지로 제공됩니다. 엔터프라이즈 에디션은 주로 100명 이상의 사용자를 대상으로 한 추가 기능을 포함한 커뮤니티 에디션을 기반으로하여 제작됩니다.
아래에서 GitLab 에디션을 변경하는 데 도움이 되는 몇 가지 가이드를 찾을 수 있습니다.
커뮤니티 에디션에서 엔터프라이즈 에디션으로
참고: 다음 가이드는 엔터프라이즈 에디션 구독자를 위한 것입니다.
GitLab 설치를 커뮤니티 에디션에서 엔터프라이즈 에디션으로 업그레이드하려면 다음 가이드를 따르십시오. 방법은 설치 방법에 따라 달라집니다.
- 소스 CE에서 EE로 업그레이드 가이드 - 단계는 버전 업그레이드와 매우 유사합니다. 서버를 중지하고 코드를 가져와서 새 기능을 위한 구성 파일을 업데이트하고 라이브러리를 설치하고 마이그레이션을 수행하며, init 스크립트를 업데이트하고 응용 프로그램을 시작하여 상태를 확인하십시오.
- Omnibus CE에서 EE로 - Omnibus GitLab 커뮤니티 에디션을 엔터프라이즈 에디션으로 업그레이드하려면 이 가이드를 따르십시오.
- Docker CE에서 EE로 - GitLab 커뮤니티 에디션 컨테이너를 엔터프라이즈 에디션 컨테이너로 업그레이드하려면 이 가이드를 따르십시오.
- Helm 차트 (Kubernetes) CE에서 EE로 - GitLab 커뮤니티 에디션 Helm 배포를 엔터프라이즈 에디션으로 업그레이드하려면 이 가이드를 따르십시오.
기업용에서 커뮤니티 에디션으로
기업용 에디션 설치를 커뮤니티 에디션으로 다운그레이드하려면 가능한 한 원활하게 진행하기 위해 이 안내서에 따를 수 있습니다.