GitLab Runner Helm 차트

상세 정보:
Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed

GitLab Runner Helm 차트는 GitLab Runner 인스턴스를 Kubernetes 클러스터에 배포하는 공식 방법입니다.
이 차트는 GitLab Runner를 다음과 같이 구성합니다:

  • GitLab Runner에 대한 Kubernetes executor를 사용하여 실행합니다.
  • 각 CI/CD 작업을 위해 지정된 네임스페이스에 새 포드를 프로비저닝합니다.

Helm 차트로 GitLab Runner 구성하기

GitLab Runner 구성 변경 사항을 values.yaml에 저장하세요. 이 파일을 구성하는 데 도움이 필요하면 다음을 참조하세요:

  • 차트 저장소에 있는 기본 values.yaml 구성입니다.
  • 기본 값을 오버라이드하는 방법을 설명하는 Helm 문서의 Values Files입니다.

GitLab Runner가 제대로 실행되려면 구성 파일에 다음 값을 설정해야 합니다:

  • gitlabUrl: 러너를 등록할 GitLab 서버의 전체 URL (예: https://gitlab.example.com)입니다.
  • rbac: { create: true }: GitLab Runner가 작업을 실행하기 위해 포드를 생성할 수 있도록 RBAC(역할 기반 액세스 제어) 규칙을 생성합니다.
    • 기존 serviceAccount를 사용하시겠습니까? rbac: { serviceAccountName: "SERVICE_ACCOUNT_NAME" }도 설정해야 합니다.
    • serviceAccount가 필요로 하는 최소 권한에 대해 알아보려면 러너 API 권한 구성을 참조하세요.
  • runnerToken: GitLab UI에서 러너를 생성할 때 얻은 인증 토큰입니다.
    • 이 토큰을 직접 설정하거나 비밀에 저장하세요.

더 많은 선택적 구성 설정을 사용할 수 있습니다.

이제 GitLab Runner를 설치할 준비가 되었습니다!

Helm 차트로 GitLab Runner 설치하기

사전 요구 사항:

Helm 차트에서 GitLab Runner를 설치하려면:

  1. GitLab Helm 저장소를 추가하세요:

    helm repo add gitlab https://charts.gitlab.io
    
  2. Helm 2를 사용하는 경우, helm init으로 Helm을 초기화하세요.
  3. 어떤 GitLab Runner 버전에 접근할 수 있는지 확인하세요:

    helm search repo -l gitlab/gitlab-runner
    
  4. GitLab Runner의 최신 버전에 접근할 수 없다면, 다음 명령으로 차트를 업데이트하세요:

    helm repo update gitlab
    
  5. values.yaml 파일에서 구성한 후, 필요한 매개 변수를 변경하여 다음 명령을 실행하세요:

    # Helm 2의 경우
    helm install --namespace <NAMESPACE> --name gitlab-runner -f <CONFIG_VALUES_FILE> gitlab/gitlab-runner
    
    # Helm 3의 경우
    helm install --namespace <NAMESPACE> gitlab-runner -f <CONFIG_VALUES_FILE> gitlab/gitlab-runner
    
    • <NAMESPACE>: GitLab Runner를 설치하려는 Kubernetes 네임스페이스입니다.
    • <CONFIG_VALUES_FILE>: 사용자 정의 구성이 포함된 값 파일의 경로입니다. 이를 생성하려면 Helm 차트로 GitLab Runner 구성하기를 참조하세요.
    • 특정 버전의 GitLab Runner Helm 차트를 설치하려면, helm install 명령에 --version <RUNNER_HELM_CHART_VERSION>를 추가하세요. 차트의 모든 버전을 설치할 수 있지만, 최근의 values.yml은 이전 버전의 차트와 호환되지 않을 수 있습니다.

사용 가능한 GitLab Runner Helm 차트 버전 확인

Helm 차트와 GitLab Runner는 동일한 버전 관리를 따르지 않습니다. 두 사이의 버전 매핑을 보려면 사용 중인 Helm 버전에 대해 다음 명령을 실행하세요:

# Helm 2용
helm search -l gitlab/gitlab-runner

# Helm 3용
helm search repo -l gitlab/gitlab-runner

출력의 예시:

NAME                  CHART VERSION APP VERSION DESCRIPTION
gitlab/gitlab-runner  0.64.0        16.11.0     GitLab Runner
gitlab/gitlab-runner  0.63.0        16.10.0     GitLab Runner
gitlab/gitlab-runner  0.62.1        16.9.1      GitLab Runner
gitlab/gitlab-runner  0.62.0        16.9.0      GitLab Runner
gitlab/gitlab-runner  0.61.3        16.8.1      GitLab Runner
gitlab/gitlab-runner  0.61.2        16.8.0      GitLab Runner
...

Helm 차트를 사용하여 GitLab Runner 업그레이드

필수 조건:

  • GitLab Runner 차트를 설치했습니다.
  • GitLab에서 러너를 일시 중지했습니다. 이는 작업 완료 시 발생하는 문제를 방지합니다, 권한 오류와 같은.
  • 모든 작업이 완료되었음을 확인했습니다.

구성 변경이나 차트를 업데이트하려면 helm upgrade를 사용하고, 필요한 매개변수를 변경하세요:

helm upgrade --namespace <NAMESPACE> -f <CONFIG_VALUES_FILE> <RELEASE-NAME> gitlab/gitlab-runner
  • <NAMESPACE>: GitLab Runner를 설치한 Kubernetes 네임스페이스입니다.
  • <CONFIG_VALUES_FILE>: 사용자 맞춤 구성을 포함하는 값 파일의 경로입니다. 이를 생성하려면, Helm 차트를 사용하여 GitLab Runner 구성하기를 참조하세요.
  • <RELEASE-NAME>: 설치 시 차트에 지정한 이름입니다. 설치 섹션에서 gitlab-runner로 명명했습니다.
  • 최신 버전이 아닌 특정 버전의 GitLab Runner Helm 차트로 업데이트하려면, --version <RUNNER_HELM_CHART_VERSION>helm upgrade 명령에 추가하세요.

Helm 차트를 사용하여 GitLab Runner 제거

GitLab Runner를 제거하려면:

  1. GitLab에서 러너를 일시 중지하고, 모든 작업이 완료되었는지 확인하세요. 이는 작업 관련 문제를 방지합니다, 완료 시 권한 오류와 같은.
  2. 이 명령을 실행하되, 필요에 따라 수정하세요:

    helm delete --namespace <NAMESPACE> <RELEASE-NAME>
    
    • <NAMESPACE>는 GitLab Runner가 설치된 Kubernetes 네임스페이스입니다.
    • <RELEASE-NAME>은 설치 시 차트에 지정한 이름입니다. 이 페이지의 Helm 차트를 사용하여 GitLab Runner 설치하기 섹션에서 gitlab-runner로 명명했습니다.