GitLab 러너를 클러스터 관리 프로젝트와 함께 설치하기

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-Managed, GitLab Dedicated

가정: 이미 관리 프로젝트 템플릿에서 생성된 프로젝트가 있다고 가정하고, GitLab 러너를 설치하려면 helmfile.yaml에서 다음 줄의 주석 처리를 해제해야 합니다.

  - path: applications/gitlab-runner/helmfile.yaml

GitLab 러너는 클러스터의 gitlab-managed-apps 네임스페이스에 기본적으로 설치됩니다.

필수 변수

GitLab 러너가 작동하려면, 반드시 다음을 applications/gitlab-runner/values.yaml.gotmpl 파일에 명시해야 합니다:

  • gitlabUrl: 러너를 등록할 GitLab 서버의 전체 URL(예: https://gitlab.example.com).
  • 러너 토큰: 이는 GitLab 인스턴스에서 검색해야 합니다. 다음 중 하나의 토큰을 사용할 수 있습니다:

    • runnerToken: 러너 구성을 위한 러너 인증 토큰(GitLab UI에서 생성됨).
    • runnerRegistrationToken (GitLab 15.6에서 사용 중단되었으며, GitLab 17.0에서 제거 예정): GitLab에 새 러너를 추가하는 데 사용되는 등록 토큰.

이러한 값들은 CI/CD 변수를 사용하여 명시할 수 있습니다:

  • CI_SERVER_URLgitlabUrl에 사용됩니다. GitLab.com을 사용하는 경우, 이 변수를 설정할 필요가 없습니다.
  • GITLAB_RUNNER_TOKENrunnerToken에 사용됩니다.
  • GITLAB_RUNNER_REGISTRATION_TOKENrunnerRegistrationToken에 사용됩니다 (사용 중단).

이러한 값들의 명시 방법은 상호 배타적입니다. 다음 중 하나를 사용할 수 있습니다:

  • 권장하는 대로, CI 변수로 GITLAB_RUNNER_TOKENCI_SERVER_URL를 명시합니다.
  • applications/gitlab-runner/values.yaml.gotmpl에서 runnerToken:gitlabUrl: 값들을 제공합니다.

러너 등록 토큰은 러너에 의해 프로젝트에 연결을 허용하므로, 악의적인 사용과 러너를 통한 코드 유출을 방지하기 위해 비밀로 다뤄져야 합니다. 이에 따라, 우리는 러너 등록 토큰을 보호된 변수로 명시하고, 가리기 변수로 처리하는 것을 권장하며, values.yaml.gotmpl 파일에 커밋하지 않도록 권장합니다.

GitLab 러너의 설치를 사용 가능한 구성 옵션을 확인하려면, 클러스터 관리 프로젝트에 applications/gitlab-runner/values.yaml.gotmpl 파일을 정의하여 사용자화할 수 있습니다. 차트를 참조하세요.