GitLab 패키지를 사용하여 GitLab 업그레이드

Tier: Free, Premium, Ultimate Offering: Self-managed

새로운 버전으로 GitLab를 업그레이드하려면 GitLab 패키지를 사용할 수 있습니다.

전제 조건

  • 업그레이드 계획을 작성합니다. 먼저 테스트 환경에서 업그레이드하고, 롤백 계획을 준비하는 것이 좋습니다. 이렇게 하면 예상치 못한 다운타임과 장시간에 걸친 중단의 위험을 줄일 수 있습니다.
  • 지원되는 업그레이드 경로를 확인하여 업그레이드할 시기를 결정합니다. 주요 버전을 직접 건너뛸 수 없습니다(예: 10.3에서 12.7로 한 번에 이동할 수 없음).
  • 패키지가 아닌 설치에서 GitLab 패키지 설치로 업그레이드하는 경우 패키지가 아닌 설치에서 GitLab 패키지 설치로 업그레이드하는 방법을 참조하세요.
  • 백그라운드 마이그레이션이 완전히 완료되었는지 확인하세요. 백그라운드 마이그레이션이 완료되지 않은 상태로 업그레이드하면 데이터가 손상될 수 있습니다. 주요 버전 및 마이너 버전 간의 업그레이드는 주간에 한 번 이상 하지 않는 것이 좋습니다. 이렇게 하면 백그라운드 마이그레이션이 완료되는 시간을 확보할 수 있습니다.
  • Gitaly 서버는 애플리케이션 서버를 업그레이드하기 전에 더 최신 버전으로 업그레이드되어야 합니다. 이렇게 하면 이전 Gitaly 버전에서 지원하지 않는 RPCs를 애플리케이션 서버의 gRPC 클라이언트가 보내는 것을 방지할 수 있습니다.

다운타임

  • 단일 노드 설치의 경우, 업그레이드 진행 중에 사용자는 GitLab을 사용할 수 없습니다. 사용자의 웹 브라우저에 Deploy in progress 또는 502 오류 메시지가 표시됩니다.
  • 복수 노드 설치의 경우, 다운타임 없는 업그레이드 방법을 참조하세요.
  • 복수 노드 설치의 경우, 다운타임을 포함한 업그레이드를 수행할 수도 있습니다.

버전별 변경 사항

버전을 업그레이드하는 경우 일부 수동 개입이 필요할 수 있습니다. 자세한 정보는 업그레이드할 버전을 확인하세요:

이전 GitLab 버전

이전 GitLab 버전에 대한 버전별 정보는 문서 보관소를 참조하세요. 보관소 문서에는 GitLab의 이전 버전에 대한 버전별 정보가 포함되어 있습니다.

예를 들어, GitLab 15.11 문서에는 GitLab 11로 거슬러 올라가는 정보가 포함되어 있습니다.

업그레이드 전 백업

새로운 GitLab 버전을 설치하기 전에 GitLab 데이터베이스가 백업됩니다. 또한, /etc/gitlab/skip-auto-backup 위치에 빈 파일을 생성하여 자동 데이터베이스 백업을 건너뛸 수 있습니다:

sudo touch /etc/gitlab/skip-auto-backup

그럼에도 불구하고, 최신 및 완전한 백업을 유지하는 것이 매우 권장됩니다.

공식 저장소 사용하여 업그레이드

모든 GitLab 패키지는 GitLab 패키지 서버에 게시됩니다. 6개의 저장소가 유지됩니다:

만약 GitLab Community Edition 또는 Enterprise Edition을 설치한 경우, 공식 GitLab 저장소가 이미 설정되어 있어야 합니다.

공식 저장소를 사용하여 최신 버전으로 업그레이드

예를 들어 매월 업그레이드하는 경우, 패키지 매니저를 사용하여 최신 버전으로 업그레이드할 수 있습니다.

최신 GitLab 버전으로 업그레이드하려면:

# Ubuntu/Debian
sudo apt update && sudo apt install gitlab-ee

# RHEL/CentOS 7 및 Amazon Linux 2
sudo yum install gitlab-ee

# RHEL/Almalinux 8/9 및 Amazon Linux 2023
sudo dnf install gitlab-ee

# SUSE
sudo zypper install gitlab-ee

참고: GitLab Community Edition의 경우, gitlab-eegitlab-ce로 대체하세요.

공식 저장소를 사용하여 특정 버전으로 업그레이드

리눅스 패키지 매니저는 일반적으로 설치 및 업그레이드를 위해 사용 가능한 패키지의 최신 버전을 설치합니다. 최신 주요 버전으로 직접 업그레이드하는 것은 다단계 업그레이드 경로를 요구하는 오래된 GitLab 버전에 문제가 될 수 있습니다. 업그레이드 경로는 여러 버전에 걸칠 수 있으므로 각 업그레이드마다 특정 GitLab 패키지를 지정해야 합니다.

패키지 관리자의 설치 또는 업그레이드 명령에 의도한 GitLab 버전 번호를 지정하는 방법:

  1. 설치된 패키지의 버전 번호를 식별합니다:

    # Ubuntu/Debian
    sudo apt-cache madison gitlab-ee
    
    # RHEL/CentOS 7 및 Amazon Linux 2
    yum --showduplicates list gitlab-ee
    
    # RHEL/Almalinux 8/9 및 Amazon Linux 2023
    dnf --showduplicates list gitlab-ee
    
    # SUSE
    zypper search -s gitlab-ee
    
  2. 패키지 관리자의 설치 또는 업그레이드 명령에 다음 중 하나를 사용하여 특정 gitlab-ee 패키지를 설치합니다. <version>을 다음으로 지원되는 원하는 버전으로 바꾸어 사용하세요 (설치할 버전이 지원되는 경로에 포함되어 있는지 확인하려면 업그레이드 경로를 확인하세요):

    # Ubuntu/Debian
    sudo apt install gitlab-ee=<version>-ee.0
    
    # RHEL/CentOS 7 및 Amazon Linux 2
    sudo yum install gitlab-ee-<version>-ee.0.el7
    
    # RHEL/Almalinux 8/9
    sudo dnf install gitlab-ee-<version>-ee.0.el8
    
    # Amazon Linux 2023
    sudo dnf install gitlab-ee-<version>-ee.0.amazon2023
    
    # OpenSUSE Leap 15.5
    sudo zypper install gitlab-ee=<version>-ee.sles15
    
    # SUSE Enterprise Server 12.2/12.5
    sudo zypper install gitlab-ee=<version>-ee.0.sles12
    

참고: GitLab Community Edition의 경우, ee를 대신하여 ce를 사용하세요.

패키지 수동으로 다운로드

참고: 패키지 저장소는 수동 설치보다 권장됩니다.

공식 저장소를 사용하지 않는 경우, 패키지를 다운로드하여 수동으로 설치할 수 있습니다. 이 방법은 GitLab을 처음 설치하거나 업그레이드하는 데 사용할 수 있습니다.

GitLab을 다운로드하고 설치하거나 업그레이드하려면 다음을 수행하세요:

  1. 패키지의 공식 저장소를 방문합니다.
  2. 원하는 버전을 검색하여 목록을 필터링합니다(예: 14.1.8). 단일 버전에 대해 여러 패키지가 존재할 수 있으며, 각 지원 배포 및 아키텍처에 대해 하나씩입니다. 파일 이름 옆에는 배포를 나타내는 레이블이 있습니다. 파일 이름이 동일할 수 있습니다.
  3. 원하는 패키지 버전을 찾고 목록에서 파일 이름을 선택합니다.
  4. 오른쪽 상단에서 다운로드를 선택합니다.
  5. 패키지를 다운로드한 후 다음 중 하나의 명령을 사용하여 설치합니다. <package_name>은 다운로드한 패키지 이름으로 바꿉니다:

    # Debian/Ubuntu
    dpkg -i <package_name>
    
    # RHEL/CentOS 7 및 Amazon Linux 2
    rpm -Uvh <package_name>
    
    # RHEL/Almalinux 8/9 및 Amazon Linux 2023
    dnf install <package_name>
    
    # SUSE
    zypper install <package_name>
    

참고: GitLab Community Edition의 경우, gitlab-eegitlab-ce로 대체합니다.

제품 문서 업그레이드

이 단계는 선택 사항입니다. 제품 문서를 설치한 경우, 나중 버전으로 업그레이드하는 방법을 확인하세요.

문제 해결

자세한 정보는 문제 해결을 참조하십시오.