InfoGrab DocsInfoGrab Docs

러너 관리

요약

- Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated GitLab Runner에는 다음과 같은 유형의 러너가 있으며, 접근 권한을 부여할 대상에 따라 사용 가능합니다:


러너 관리#

  - 
  Tier: Free, Premium, Ultimate

- Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated

GitLab Runner에는 다음과 같은 유형의 러너가 있으며, 접근 권한을 부여할 대상에 따라 사용 가능합니다:

  • 인스턴스 러너는 GitLab 인스턴스의 모든 그룹 및 프로젝트에서 사용할 수 있습니다.

  • 그룹 러너는 그룹의 모든 프로젝트 및 하위 그룹에서 사용할 수 있습니다.

  • 프로젝트 러너는 특정 프로젝트와 연결됩니다. 일반적으로 프로젝트 러너는 한 번에 하나의 프로젝트에서 사용됩니다.

인스턴스 러너#

인스턴스 러너는 GitLab 인스턴스의 모든 프로젝트에서 사용할 수 있습니다.

비슷한 요구사항을 가진 여러 잡이 있을 때 인스턴스 러너를 사용합니다. 많은 프로젝트를 위해 여러 러너가 유휴 상태로 있는 대신, 여러 프로젝트를 처리하는 몇 개의 러너를 가질 수 있습니다.

GitLab Self-Managed를 사용하는 경우, 관리자는:

GitLab.com을 사용하는 경우:

러너 인증 토큰으로 인스턴스 러너 만들기#

사전 조건:

  • 관리자여야 합니다.

러너를 만들면 등록에 사용하는 러너 인증 토큰이 할당됩니다. 러너는 잡 큐에서 잡을 가져올 때 GitLab 인증에 이 토큰을 사용합니다.

인스턴스 러너를 만들려면:

  • 오른쪽 상단 모서리에서 Admin을 선택합니다.

  • 왼쪽 사이드바에서 CI/CD > Runners를 선택합니다.

  • Create instance runner를 선택합니다.

  • GitLab Runner가 설치된 운영 체제를 선택합니다.

  • Tags 섹션의 Tags 필드에 러너가 실행할 수 있는 잡을 지정하는 잡 태그를 입력합니다. 이 러너에 대한 잡 태그가 없는 경우 Run untagged를 선택합니다.

  • 선택 사항. Runner description 필드에 GitLab에 표시될 러너 설명을 추가합니다.

  • 선택 사항. Configuration 섹션에 추가 구성을 추가합니다.

  • Create runner를 선택합니다.

  • 명령줄에서 러너를 등록하려면 화면의 지시를 따릅니다. 명령줄에서 묻는 질문:

GitLab instance URL의 경우, GitLab 인스턴스의 URL을 사용합니다. 예를 들어, 프로젝트가 gitlab.example.com/yourname/yourproject에서 호스팅되는 경우, GitLab 인스턴스 URL은 https://gitlab.example.com입니다.

  • executor의 경우, 실행기 유형을 입력합니다. 실행기는 러너가 잡을 실행하는 환경입니다.

API를 사용하여 러너를 만들 수도 있습니다.

러너 인증 토큰은 등록 중에 제한된 시간 동안 UI에 표시됩니다. 러너를 등록한 후 인증 토큰은 `config.toml`에 저장됩니다.

등록 토큰으로 인스턴스 러너 만들기 (더 이상 사용되지 않음)#

러너 등록 토큰 전달 옵션과 특정 구성 인수에 대한 지원은 레거시로 간주되어 권장되지 않습니다.

러너 생성 워크플로우를 사용하여 러너를 등록할 인증 토큰을 생성합니다. 이 프로세스는 러너 소유권의 완전한 추적 가능성을 제공하고 러너 플릿의 보안을 강화합니다. 자세한 정보는 새 러너 등록 워크플로우로 마이그레이션을 참조하십시오.

사전 조건:

  • 러너 등록 토큰은 Admin 영역에서 활성화되어야 합니다.

  • 관리자여야 합니다.

인스턴스 러너를 만들려면:

  • 오른쪽 상단 모서리에서 Admin을 선택합니다.

  • 왼쪽 사이드바에서 CI/CD > Runners를 선택합니다.

  • Register an instance runner를 선택합니다.

  • 등록 토큰을 복사합니다.

  • 러너를 등록합니다.

인스턴스 러너 일시 중지 또는 재개#

사전 조건:

  • 관리자여야 합니다.

GitLab 인스턴스의 그룹 및 프로젝트에서 잡을 수락하지 않도록 러너를 일시 중지할 수 있습니다.

  • 오른쪽 상단 모서리에서 Admin을 선택합니다.

  • 왼쪽 사이드바에서 CI/CD > Runners를 선택합니다.

  • 검색 상자에 러너 설명을 입력하거나 러너 목록을 필터링합니다.

  • 러너 목록에서 러너 오른쪽:

러너를 일시 중지하려면 Pause ( pause )를 선택합니다.

  • 러너를 재개하려면 Resume ( play )를 선택합니다.

인스턴스 러너 삭제#

사전 조건:

  • 관리자여야 합니다.

인스턴스 러너를 삭제하면 GitLab 인스턴스에서 영구적으로 삭제되어 그룹 및 프로젝트에서 더 이상 사용할 수 없습니다. 러너가 잡을 수락하지 않도록 일시적으로 중지하려면 러너를 일시 중지할 수 있습니다.

단일 또는 여러 인스턴스 러너를 삭제하려면:

  • 오른쪽 상단 모서리에서 Admin을 선택합니다.

  • 왼쪽 사이드바에서 CI/CD > Runners를 선택합니다.

  • 검색 상자에 러너 설명을 입력하거나 러너 목록을 필터링합니다.

  • 인스턴스 러너를 삭제합니다:

단일 러너를 삭제하려면 러너 옆에서 Delete runner ( remove )를 선택합니다.

  • 여러 인스턴스 러너를 삭제하려면 각 러너의 체크박스를 선택하고 Delete selected를 선택합니다.

  • 모든 러너를 삭제하려면 러너 목록 상단의 체크박스를 선택하고 Delete selected를 선택합니다.

  • Permanently delete runner를 선택합니다.

프로젝트에 인스턴스 러너 활성화#

GitLab.com에서는 인스턴스 러너가 모든 프로젝트에서 기본적으로 활성화됩니다.

GitLab Self-Managed에서는 관리자가 모든 새 프로젝트에 대해 활성화할 수 있습니다.

기존 프로젝트의 경우, 관리자가 설치하고 등록해야 합니다.

프로젝트에 인스턴스 러너를 활성화하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Turn on instance runners for this project 토글을 활성화합니다.

그룹에 인스턴스 러너 활성화#

그룹에 인스턴스 러너를 활성화하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Turn on instance runners for this group 토글을 활성화합니다.

프로젝트에 인스턴스 러너 비활성화#

개별 프로젝트 또는 그룹에 대해 인스턴스 러너를 비활성화할 수 있습니다. 프로젝트 또는 그룹의 Owner 권한이 있어야 합니다.

프로젝트에 인스턴스 러너를 비활성화하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Instance runners 영역에서 Turn on runners for this project 토글을 끕니다.

인스턴스 러너는 다음 경우에 프로젝트에 대해 자동으로 비활성화됩니다:

  • 상위 그룹의 인스턴스 러너 설정이 비활성화된 경우, 그리고

  • 프로젝트에서 이 설정을 재정의하는 것이 허용되지 않는 경우.

그룹에 인스턴스 러너 비활성화#

그룹에 인스턴스 러너를 비활성화하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Enable instance runners for this group 토글을 끕니다.

  • 선택 사항. 개별 프로젝트 또는 하위 그룹에서 인스턴스 러너를 활성화할 수 있도록 허용하려면 Allow projects and subgroups to override the group setting을 선택합니다.

인스턴스 러너가 잡을 선택하는 방법#

인스턴스 러너는 공정 사용 큐를 사용하여 잡을 처리합니다. 이 큐는 프로젝트가 수백 개의 잡을 만들고 사용 가능한 인스턴스 러너 리소스를 모두 사용하는 것을 방지합니다.

공정 사용 큐 알고리즘은 인스턴스 러너에서 이미 실행 중인 잡의 수가 가장 적은 프로젝트를 기준으로 잡을 할당합니다.

예를 들어, 다음 잡이 큐에 있는 경우:

  • 프로젝트 1의 잡 1

  • 프로젝트 1의 잡 2

  • 프로젝트 1의 잡 3

  • 프로젝트 2의 잡 4

  • 프로젝트 2의 잡 5

  • 프로젝트 3의 잡 6

여러 CI/CD 잡이 동시에 실행되는 경우, 공정 사용 알고리즘은 다음 순서로 잡을 할당합니다:

  • 잡 1이 첫 번째입니다. 실행 중인 잡이 없는 프로젝트(즉, 모든 프로젝트)에서 가장 낮은 잡 번호를 가지고 있기 때문입니다.

  • 잡 4가 다음입니다. 실행 중인 잡이 없는 프로젝트(프로젝트 1은 실행 중인 잡이 있음)에서 가장 낮은 잡 번호가 이제 4이기 때문입니다.

  • 잡 6이 다음입니다. 실행 중인 잡이 없는 프로젝트(프로젝트 1과 2는 실행 중인 잡이 있음)에서 가장 낮은 잡 번호가 이제 6이기 때문입니다.

  • 잡 2가 다음입니다. 실행 중인 잡의 수가 가장 적은 프로젝트(각각 1개)에서 가장 낮은 잡 번호이기 때문입니다.

  • 잡 5가 다음입니다. 프로젝트 1은 이제 2개의 잡이 실행 중이고 잡 5는 프로젝트 2와 3 사이에서 가장 낮은 잡 번호이기 때문입니다.

  • 마지막으로 잡 3은 남은 유일한 잡이기 때문입니다.

한 번에 하나의 잡만 실행되는 경우, 공정 사용 알고리즘은 다음 순서로 잡을 할당합니다:

  • 잡 1이 먼저 선택됩니다. 실행 중인 잡이 없는 프로젝트(즉, 모든 프로젝트)에서 가장 낮은 잡 번호를 가지고 있기 때문입니다.

  • 잡 1이 완료됩니다.

  • 잡 2가 다음입니다. 잡 1이 완료되었으므로 모든 프로젝트의 실행 중인 잡이 다시 0이 되었고, 2가 사용 가능한 가장 낮은 잡 번호이기 때문입니다.

  • 잡 4가 다음입니다. 프로젝트 1이 잡을 실행 중이므로, 4는 실행 중인 잡이 없는 프로젝트(프로젝트 2와 3)에서 가장 낮은 번호이기 때문입니다.

  • 잡 4가 완료됩니다.

  • 잡 5가 다음입니다. 잡 4가 완료되었으므로 프로젝트 2에 다시 실행 중인 잡이 없기 때문입니다.

  • 잡 6이 다음입니다. 프로젝트 3이 실행 중인 잡이 없는 유일한 프로젝트이기 때문입니다.

  • 마지막으로 잡 3은 남은 유일한 잡이기 때문입니다.

그룹 러너#

그룹의 모든 프로젝트에서 러너 집합에 접근하려면 그룹 러너를 사용합니다.

그룹 러너는 선입선출(FIFO) 큐를 사용하여 잡을 처리합니다.

러너 인증 토큰으로 그룹 러너 만들기#

사전 조건:

  • 그룹의 Owner 권한이 있어야 합니다.

GitLab Self-Managed 또는 GitLab.com을 위한 그룹 러너를 만들 수 있습니다. 러너를 만들면 등록에 사용하는 러너 인증 토큰이 할당됩니다. 러너는 잡 큐에서 잡을 가져올 때 GitLab 인증에 이 토큰을 사용합니다.

그룹 러너를 만들려면:

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Build > Runners를 선택합니다.

  • Create group runner를 선택합니다.

  • Tags 섹션의 Tags 필드에 러너가 실행할 수 있는 잡을 지정하는 잡 태그를 입력합니다. 이 러너에 대한 잡 태그가 없는 경우 Run untagged를 선택합니다.

  • 선택 사항. Runner description 필드에 GitLab에 표시될 러너 설명을 추가합니다.

  • 선택 사항. Configuration 섹션에 추가 구성을 추가합니다.

  • Create runner를 선택합니다.

  • GitLab Runner가 설치된 플랫폼을 선택합니다.

  • 화면의 지시를 완료합니다:

Linux, macOS, Windows의 경우, 명령줄에서 묻는 질문:

GitLab instance URL의 경우, GitLab 인스턴스의 URL을 사용합니다. 예를 들어, 프로젝트가 gitlab.example.com/yourname/yourproject에서 호스팅되는 경우, GitLab 인스턴스 URL은 https://gitlab.example.com입니다.

API를 사용하여 러너를 만들 수도 있습니다.

러너 인증 토큰은 등록 중에 짧은 시간 동안만 UI에 표시됩니다.

등록 토큰으로 그룹 러너 만들기 (더 이상 사용되지 않음)#

히스토리

  • Settings > CI/CD > Runners에서 경로가 변경되었습니다.

    러너 등록 토큰 전달 옵션과 특정 구성 인수에 대한 지원은 레거시로 간주되어 권장되지 않습니다. 러너 생성 워크플로우를 사용하여 러너를 등록할 인증 토큰을 생성합니다. 이 프로세스는 러너 소유권의 완전한 추적 가능성을 제공하고 러너 플릿의 보안을 강화합니다. 자세한 정보는 새 러너 등록 워크플로우로 마이그레이션을 참조하십시오.

    사전 조건:

  • 최상위 그룹에서 러너 등록 토큰이 활성화되어야 합니다.

  • 그룹의 Owner 권한이 있어야 합니다.

그룹 러너를 만들려면:

  • GitLab Runner를 설치합니다.

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Build > Runners를 선택합니다.

  • 오른쪽 상단 모서리에서 Register a group runner를 선택합니다.

  • Show runner installation and registration instructions를 선택합니다. 이 지침에는 러너를 등록하기 위한 토큰, URL 및 명령이 포함됩니다.

또는 등록 토큰을 복사하고 러너를 등록하는 방법에 대한 문서를 따를 수 있습니다.

그룹 러너 보기#

사전 조건:

  • 그룹의 Maintainer 또는 Owner 권한이 있어야 합니다.

그룹 및 해당 하위 그룹과 프로젝트의 모든 러너를 볼 수 있습니다. GitLab Self-Managed 또는 GitLab.com에서 이 작업을 수행할 수 있습니다.

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Build > Runners를 선택합니다.

상속된 그룹 러너만 표시하도록 필터링#

목록의 모든 러너를 표시하거나 인스턴스 또는 다른 그룹에서 상속된 러너만 표시하도록 선택할 수 있습니다.

기본적으로 상속된 러너만 표시됩니다.

인스턴스 러너 및 다른 그룹의 러너를 포함하여 인스턴스에서 사용 가능한 모든 러너를 표시하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Build > Runners를 선택합니다.

  • 목록 위에서 Show only inherited 토글을 끕니다.

그룹 러너 일시 중지 또는 재개#

사전 조건:

  • 관리자이거나 그룹의 Owner 권한이 있어야 합니다.

GitLab 인스턴스의 하위 그룹 및 프로젝트에서 잡을 수락하지 않도록 러너를 일시 중지할 수 있습니다. 여러 프로젝트에서 사용되는 그룹 러너를 일시 중지하면 러너는 모든 프로젝트에 대해 일시 중지됩니다.

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Build > Runners를 선택합니다.

  • 검색 상자에 러너 설명을 입력하거나 러너 목록을 필터링합니다.

  • 러너 목록에서 러너 오른쪽:

러너를 일시 중지하려면 Pause ( pause )를 선택합니다.

  • 러너를 재개하려면 Resume ( play )를 선택합니다.

그룹 러너 삭제#

사전 조건:

  • 관리자이거나 그룹의 Owner 권한이 있어야 합니다.

그룹 러너를 삭제하면 GitLab 인스턴스에서 영구적으로 삭제되어 하위 그룹 및 프로젝트에서 더 이상 사용할 수 없습니다. 러너가 잡을 수락하지 않도록 일시적으로 중지하려면 러너를 일시 중지할 수 있습니다.

단일 또는 여러 그룹 러너를 삭제하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Build > Runners를 선택합니다.

  • 검색 상자에 러너 설명을 입력하거나 러너 목록을 필터링합니다.

  • 그룹 러너를 삭제합니다:

단일 러너를 삭제하려면 러너 옆에서 Delete runner ( remove )를 선택합니다.

  • 여러 인스턴스 러너를 삭제하려면 각 러너의 체크박스를 선택하고 Delete selected를 선택합니다.

  • 모든 러너를 삭제하려면 러너 목록 상단의 체크박스를 선택하고 Delete selected를 선택합니다.

  • Permanently delete runner를 선택합니다.

오래된 그룹 러너 정리#

사전 조건:

  • 그룹의 Owner 권한이 있어야 합니다.

7일 이상 비활성 상태인 그룹 러너를 정리할 수 있습니다.

그룹 러너는 특정 그룹에서 만들어진 러너입니다.

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Enable stale runner cleanup 토글을 활성화합니다.

오래된 러너 정리 로그 보기#

Sidekiq 로그를 확인하여 정리 결과를 볼 수 있습니다. Kibana에서 다음 쿼리를 사용할 수 있습니다:

{
  "query": {
    "match_phrase": {
      "json.class.keyword": "Ci::Runners::StaleGroupRunnersPruneCronWorker"
    }
  }
}

오래된 러너가 제거된 항목을 필터링합니다:

{
  "query": {
    "range": {
      "json.extra.ci_runners_stale_group_runners_prune_cron_worker.total_pruned": {
        "gte": 1,
        "lt": null
      }
    }
  }
}

프로젝트 러너#

특정 프로젝트에 러너를 사용하려면 프로젝트 러너를 사용합니다. 예를 들어, 다음과 같은 경우:

  • 자격 증명이 필요한 배포 잡과 같은 특정 요구사항을 가진 잡이 있는 경우.

  • 다른 러너와 분리됨으로써 이점을 얻을 수 있는 CI 활동이 많은 프로젝트.

프로젝트 러너를 여러 프로젝트에서 사용하도록 설정할 수 있습니다. 프로젝트 러너는 각 프로젝트에 대해 명시적으로 활성화되어야 합니다.

프로젝트 러너는 선입선출(FIFO) 큐를 사용하여 잡을 처리합니다.

프로젝트 러너는 포크된 프로젝트에서 자동으로 인스턴스와 함께 제공되지 않습니다.

포크는 복제된 리포지터리의 CI/CD 설정을 복사합니다.

프로젝트 러너 소유권#

러너가 프로젝트에 처음 연결되면 해당 프로젝트가 러너의 소유자가 됩니다.

소유자 프로젝트를 삭제하면:

  • GitLab은 러너를 공유하는 다른 모든 프로젝트를 찾습니다.

  • GitLab은 가장 오래된 연결을 가진 프로젝트에 소유권을 할당합니다.

  • 다른 프로젝트가 러너를 공유하지 않으면 GitLab은 러너를 자동으로 삭제합니다.

소유자 프로젝트에서 러너 할당을 해제할 수 없습니다. 대신 러너를 삭제하십시오.

러너 인증 토큰으로 프로젝트 러너 만들기#

사전 조건:

  • 프로젝트의 Maintainer 권한이 있어야 합니다.

GitLab Self-Managed 또는 GitLab.com을 위한 프로젝트 러너를 만들 수 있습니다. 러너를 만들면 러너를 등록하는 데 사용하는 러너 인증 토큰이 할당됩니다. 러너는 잡 큐에서 잡을 가져올 때 GitLab 인증에 이 토큰을 사용합니다.

프로젝트 러너를 만들려면:

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners 섹션을 펼칩니다.

  • Create project runner를 선택합니다.

  • GitLab Runner가 설치된 운영 체제를 선택합니다.

  • Tags 섹션의 Tags 필드에 러너가 실행할 수 있는 잡을 지정하는 잡 태그를 입력합니다. 이 러너에 대한 잡 태그가 없는 경우 Run untagged를 선택합니다.

  • 선택 사항. Runner description 필드에 GitLab에 표시될 러너 설명을 추가합니다.

  • 선택 사항. Configuration 섹션에 추가 구성을 추가합니다.

  • Create runner를 선택합니다.

  • GitLab Runner가 설치된 플랫폼을 선택합니다.

  • 화면의 지시를 완료합니다:

Linux, macOS, Windows의 경우, 명령줄에서 묻는 질문:

GitLab instance URL의 경우, GitLab 인스턴스의 URL을 사용합니다. 예를 들어, 프로젝트가 gitlab.example.com/yourname/yourproject에서 호스팅되는 경우, GitLab 인스턴스 URL은 https://gitlab.example.com입니다.

API를 사용하여 러너를 만들 수도 있습니다.

러너 인증 토큰은 등록 중에 짧은 시간 동안만 UI에 표시됩니다.

등록 토큰으로 프로젝트 러너 만들기 (더 이상 사용되지 않음)#

러너 등록 토큰 전달 옵션과 특정 구성 인수에 대한 지원은 레거시로 간주되어 권장되지 않습니다.

러너 생성 워크플로우를 사용하여 러너를 등록할 인증 토큰을 생성합니다. 이 프로세스는 러너 소유권의 완전한 추적 가능성을 제공하고 러너 플릿의 보안을 강화합니다. 자세한 정보는 새 러너 등록 워크플로우로 마이그레이션을 참조하십시오.

사전 조건:

  • 최상위 그룹에서 러너 등록 토큰이 활성화되어야 합니다.

  • 프로젝트의 Maintainer 또는 Owner 권한이 있어야 합니다.

프로젝트 러너를 만들려면:

  • GitLab Runner를 설치합니다.

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Project runners 섹션에서 URL과 토큰을 확인합니다.

  • 러너를 등록합니다.

이제 러너가 프로젝트에 대해 활성화됩니다.

프로젝트 러너 일시 중지 또는 재개#

사전 조건:

  • 관리자이거나 프로젝트의 Maintainer 권한이 있어야 합니다.

GitLab 인스턴스에서 할당된 프로젝트에서 잡을 수락하지 않도록 프로젝트 러너를 일시 중지할 수 있습니다.

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Assigned project runners 섹션에서 러너를 찾습니다.

  • 러너 오른쪽:

러너를 일시 중지하려면 Pause ( pause )를 선택한 다음 Pause를 선택합니다.

  • 러너를 재개하려면 Resume ( play )를 선택합니다.

프로젝트 러너 삭제#

사전 조건:

  • 관리자이거나 프로젝트의 Maintainer 권한이 있어야 합니다.

  • 두 개 이상의 프로젝트에 할당된 프로젝트 러너는 삭제할 수 없습니다. 러너를 삭제하기 전에 활성화된 모든 프로젝트에서 비활성화해야 합니다.

프로젝트 러너를 삭제하면 GitLab 인스턴스에서 영구적으로 삭제되어 프로젝트에서 더 이상 사용할 수 없습니다. 러너가 잡을 수락하지 않도록 일시적으로 중지하려면 러너를 일시 중지할 수 있습니다.

러너를 삭제해도 구성은 여전히 러너 호스트의 config.toml 파일에 존재합니다. 삭제된 러너의 구성이 이 파일에 여전히 있으면 러너 호스트는 계속 GitLab에 연결합니다. 불필요한 API 트래픽을 방지하려면 삭제된 러너의 등록을 해제해야 합니다.

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Assigned project runners 섹션에서 러너를 찾습니다.

  • 러너 오른쪽에서 Remove runner를 선택합니다.

  • 러너를 삭제하려면 Remove를 선택합니다.

다른 프로젝트에 프로젝트 러너 활성화#

프로젝트 러너가 만들어지면 다른 프로젝트에 대해 활성화할 수 있습니다.

사전 조건: 다음 프로젝트에 대해 Maintainer 또는 Owner 권한이 있어야 합니다:

  • 러너가 이미 활성화된 프로젝트.

  • 러너를 활성화하려는 프로젝트.

  • 프로젝트 러너는 잠금되지 않아야 합니다.

프로젝트에 프로젝트 러너를 활성화하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Project runners 영역에서 원하는 러너 옆에 Enable for this project를 선택합니다.

활성화된 모든 프로젝트에서 프로젝트 러너를 편집할 수 있습니다. 잠금 해제 및 태그와 설명 편집을 포함한 수정 사항은 러너를 사용하는 모든 프로젝트에 영향을 미칩니다.

관리자는 여러 프로젝트에 대해 러너를 활성화할 수 있습니다.

프로젝트 러너가 다른 프로젝트에 활성화되지 않도록 방지#

프로젝트 러너를 "잠금" 상태로 구성하여 다른 프로젝트에 활성화될 수 없도록 할 수 있습니다. 이 설정은 처음 러너를 등록할 때 활성화할 수 있지만 나중에 변경할 수도 있습니다.

프로젝트 러너를 잠금 또는 잠금 해제하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • 잠금 또는 잠금 해제할 프로젝트 러너를 찾습니다. 활성화되어 있는지 확인합니다. 인스턴스 또는 그룹 러너는 잠금할 수 없습니다.

  • Edit ( pencil )를 선택합니다.

  • Lock to current projects 체크박스를 선택합니다.

  • Save changes를 선택합니다.

러너 상태#

러너는 다음 상태 중 하나를 가질 수 있습니다.

상태 설명
online 러너가 지난 2시간 내에 GitLab에 연락했으며 잡을 실행할 수 있습니다.
offline 러너가 2시간 이상 GitLab에 연락하지 않았으며 잡을 실행할 수 없습니다. 러너를 온라인 상태로 전환할 수 있는지 확인하십시오.
stale 러너가 7일 이상 GitLab에 연락하지 않았습니다. 러너가 7일 이상 전에 만들어졌지만 인스턴스에 연락한 적이 없는 경우도 오래됨으로 간주됩니다.
never_contacted 러너가 GitLab에 연락한 적이 없습니다. 러너가 GitLab에 연락하도록 하려면 gitlab-runner run을 실행하십시오.

오래된 러너 관리자 정리#

GitLab은 데이터베이스를 효율적으로 유지하기 위해 오래된 러너 관리자를 주기적으로 삭제합니다. 러너가 GitLab 인스턴스에 연락하면 연결이 다시 생성됩니다.

러너 성능 통계 보기#

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

관리자로서 러너 통계를 보고 러너 플릿의 성능에 대해 알아볼 수 있습니다.

잡 큐 중간 시간 값은 인스턴스 러너가 실행한 가장 최근 100개의 잡의 큐 대기 시간을 샘플링하여 계산됩니다. 최신 5000개의 러너에서의 잡만 고려됩니다.

중간값은 50번째 백분위수에 해당하는 값입니다. 잡의 절반은 중간값보다 더 오래 큐에 있고, 절반은 중간값보다 짧게 큐에 있습니다.

러너 통계를 보려면:

  • 오른쪽 상단 모서리에서 Admin을 선택합니다.

  • 왼쪽 사이드바에서 CI/CD > Runners를 선택합니다.

  • View metrics를 선택합니다.

업그레이드가 필요한 러너 확인#

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

사전 조건:

  • 인스턴스 러너를 보기 위한 관리자 접근 권한.

  • 그룹 러너를 보기 위한 Maintainer 또는 Owner 권한.

러너에서 사용되는 GitLab Runner 버전은 최신 상태로 유지되어야 합니다.

업그레이드가 필요한 러너를 확인하려면:

러너 목록을 봅니다:

그룹의 경우:

상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • Build > Runners를 선택합니다.

  • 인스턴스의 경우:

오른쪽 상단 모서리에서 Admin을 선택합니다.

  • CI/CD > Runners를 선택합니다.

러너 목록 위에서 상태를 봅니다:

Outdated - recommended: 러너에 최신 PATCH 버전이 없어 보안 또는 높은 심각도 버그에 취약할 수 있습니다. 또는 러너가 GitLab 인스턴스보다 하나 이상의 MAJOR 버전이 뒤처져 있어 일부 기능이 사용 불가능하거나 제대로 작동하지 않을 수 있습니다.

  • Outdated - available: 최신 버전이 사용 가능하지만 업그레이드가 긴급하지 않습니다.

상태별로 목록을 필터링하여 업그레이드가 필요한 개별 러너를 확인합니다.

러너의 IP 주소 확인#

러너 문제를 해결하려면 러너의 IP 주소를 알아야 할 수 있습니다. GitLab은 러너가 잡을 폴링할 때 HTTP 요청의 소스를 보고 IP 주소를 저장하고 표시합니다. GitLab은 업데이트될 때마다 러너의 IP 주소를 자동으로 업데이트합니다.

인스턴스 러너와 프로젝트 러너의 IP 주소는 서로 다른 위치에서 찾을 수 있습니다.

인스턴스 러너의 IP 주소 확인#

사전 조건:

  • 인스턴스에 대한 관리자 접근 권한이 있어야 합니다.

인스턴스 러너의 IP 주소를 확인하려면:

  • 오른쪽 상단 모서리에서 Admin을 선택합니다.

  • 왼쪽 사이드바에서 CI/CD > Runners를 선택합니다.

  • 테이블에서 러너를 찾아 IP Address 열을 봅니다.

[

](/19.2/ci/runners/img/shared_runner_ip_address_v14_5.png)

프로젝트 러너의 IP 주소 확인#

프로젝트 러너의 IP 주소를 찾으려면 해당 프로젝트의 Owner 권한이 있어야 합니다.

  • 프로젝트의 Settings > CI/CD로 이동하여 Runners 섹션을 펼칩니다.

  • 러너 이름을 선택하고 IP Address 행을 찾습니다.

[

](/19.2/ci/runners/img/project_runner_ip_address_v17_6.png)

러너 구성에 유지 관리 메모 추가#

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

히스토리

  • GitLab 18.2에서 그룹 및 프로젝트에 대해 도입됨.

러너를 문서화하기 위해 유지 관리 메모를 추가할 수 있습니다. 러너를 편집할 수 있는 사용자는 러너 세부 정보를 볼 때 메모를 볼 수 있습니다.

이 기능을 사용하여 러너 구성 변경과 관련된 결과 또는 문제를 다른 사람에게 알릴 수 있습니다.

프로젝트 및 그룹에서 러너 등록 토큰 사용 활성화#

러너 등록 토큰 전달 옵션과 특정 구성 인수에 대한 지원은 레거시로 간주되어 권장되지 않습니다.

러너 생성 워크플로우를 사용하여 러너를 등록할 인증 토큰을 생성합니다. 이 프로세스는 러너 소유권의 완전한 추적 가능성을 제공하고 러너 플릿의 보안을 강화합니다. 자세한 정보는 새 러너 등록 워크플로우로 마이그레이션을 참조하십시오.

GitLab 17.0에서는 모든 GitLab 인스턴스에서 러너 등록 토큰 사용이 비활성화됩니다.

사전 조건:

프로젝트 및 그룹에서 러너 등록 토큰 사용을 활성화하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Allow members of projects and groups to create runners with runner registration tokens 토글을 활성화합니다.

러너 관리

GitLab v19.2
Tier: Ultimate
Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
원문 보기
요약

- Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated GitLab Runner에는 다음과 같은 유형의 러너가 있으며, 접근 권한을 부여할 대상에 따라 사용 가능합니다:


러너 관리#

  - 
  Tier: Free, Premium, Ultimate

- Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated

GitLab Runner에는 다음과 같은 유형의 러너가 있으며, 접근 권한을 부여할 대상에 따라 사용 가능합니다:

  • 인스턴스 러너는 GitLab 인스턴스의 모든 그룹 및 프로젝트에서 사용할 수 있습니다.

  • 그룹 러너는 그룹의 모든 프로젝트 및 하위 그룹에서 사용할 수 있습니다.

  • 프로젝트 러너는 특정 프로젝트와 연결됩니다. 일반적으로 프로젝트 러너는 한 번에 하나의 프로젝트에서 사용됩니다.

인스턴스 러너#

인스턴스 러너는 GitLab 인스턴스의 모든 프로젝트에서 사용할 수 있습니다.

비슷한 요구사항을 가진 여러 잡이 있을 때 인스턴스 러너를 사용합니다. 많은 프로젝트를 위해 여러 러너가 유휴 상태로 있는 대신, 여러 프로젝트를 처리하는 몇 개의 러너를 가질 수 있습니다.

GitLab Self-Managed를 사용하는 경우, 관리자는:

GitLab.com을 사용하는 경우:

러너 인증 토큰으로 인스턴스 러너 만들기#

사전 조건:

  • 관리자여야 합니다.

러너를 만들면 등록에 사용하는 러너 인증 토큰이 할당됩니다. 러너는 잡 큐에서 잡을 가져올 때 GitLab 인증에 이 토큰을 사용합니다.

인스턴스 러너를 만들려면:

  • 오른쪽 상단 모서리에서 Admin을 선택합니다.

  • 왼쪽 사이드바에서 CI/CD > Runners를 선택합니다.

  • Create instance runner를 선택합니다.

  • GitLab Runner가 설치된 운영 체제를 선택합니다.

  • Tags 섹션의 Tags 필드에 러너가 실행할 수 있는 잡을 지정하는 잡 태그를 입력합니다. 이 러너에 대한 잡 태그가 없는 경우 Run untagged를 선택합니다.

  • 선택 사항. Runner description 필드에 GitLab에 표시될 러너 설명을 추가합니다.

  • 선택 사항. Configuration 섹션에 추가 구성을 추가합니다.

  • Create runner를 선택합니다.

  • 명령줄에서 러너를 등록하려면 화면의 지시를 따릅니다. 명령줄에서 묻는 질문:

GitLab instance URL의 경우, GitLab 인스턴스의 URL을 사용합니다. 예를 들어, 프로젝트가 gitlab.example.com/yourname/yourproject에서 호스팅되는 경우, GitLab 인스턴스 URL은 https://gitlab.example.com입니다.

  • executor의 경우, 실행기 유형을 입력합니다. 실행기는 러너가 잡을 실행하는 환경입니다.

API를 사용하여 러너를 만들 수도 있습니다.

러너 인증 토큰은 등록 중에 제한된 시간 동안 UI에 표시됩니다. 러너를 등록한 후 인증 토큰은 `config.toml`에 저장됩니다.

등록 토큰으로 인스턴스 러너 만들기 (더 이상 사용되지 않음)#

러너 등록 토큰 전달 옵션과 특정 구성 인수에 대한 지원은 레거시로 간주되어 권장되지 않습니다.

러너 생성 워크플로우를 사용하여 러너를 등록할 인증 토큰을 생성합니다. 이 프로세스는 러너 소유권의 완전한 추적 가능성을 제공하고 러너 플릿의 보안을 강화합니다. 자세한 정보는 새 러너 등록 워크플로우로 마이그레이션을 참조하십시오.

사전 조건:

  • 러너 등록 토큰은 Admin 영역에서 활성화되어야 합니다.

  • 관리자여야 합니다.

인스턴스 러너를 만들려면:

  • 오른쪽 상단 모서리에서 Admin을 선택합니다.

  • 왼쪽 사이드바에서 CI/CD > Runners를 선택합니다.

  • Register an instance runner를 선택합니다.

  • 등록 토큰을 복사합니다.

  • 러너를 등록합니다.

인스턴스 러너 일시 중지 또는 재개#

사전 조건:

  • 관리자여야 합니다.

GitLab 인스턴스의 그룹 및 프로젝트에서 잡을 수락하지 않도록 러너를 일시 중지할 수 있습니다.

  • 오른쪽 상단 모서리에서 Admin을 선택합니다.

  • 왼쪽 사이드바에서 CI/CD > Runners를 선택합니다.

  • 검색 상자에 러너 설명을 입력하거나 러너 목록을 필터링합니다.

  • 러너 목록에서 러너 오른쪽:

러너를 일시 중지하려면 Pause ( pause )를 선택합니다.

  • 러너를 재개하려면 Resume ( play )를 선택합니다.

인스턴스 러너 삭제#

사전 조건:

  • 관리자여야 합니다.

인스턴스 러너를 삭제하면 GitLab 인스턴스에서 영구적으로 삭제되어 그룹 및 프로젝트에서 더 이상 사용할 수 없습니다. 러너가 잡을 수락하지 않도록 일시적으로 중지하려면 러너를 일시 중지할 수 있습니다.

단일 또는 여러 인스턴스 러너를 삭제하려면:

  • 오른쪽 상단 모서리에서 Admin을 선택합니다.

  • 왼쪽 사이드바에서 CI/CD > Runners를 선택합니다.

  • 검색 상자에 러너 설명을 입력하거나 러너 목록을 필터링합니다.

  • 인스턴스 러너를 삭제합니다:

단일 러너를 삭제하려면 러너 옆에서 Delete runner ( remove )를 선택합니다.

  • 여러 인스턴스 러너를 삭제하려면 각 러너의 체크박스를 선택하고 Delete selected를 선택합니다.

  • 모든 러너를 삭제하려면 러너 목록 상단의 체크박스를 선택하고 Delete selected를 선택합니다.

  • Permanently delete runner를 선택합니다.

프로젝트에 인스턴스 러너 활성화#

GitLab.com에서는 인스턴스 러너가 모든 프로젝트에서 기본적으로 활성화됩니다.

GitLab Self-Managed에서는 관리자가 모든 새 프로젝트에 대해 활성화할 수 있습니다.

기존 프로젝트의 경우, 관리자가 설치하고 등록해야 합니다.

프로젝트에 인스턴스 러너를 활성화하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Turn on instance runners for this project 토글을 활성화합니다.

그룹에 인스턴스 러너 활성화#

그룹에 인스턴스 러너를 활성화하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Turn on instance runners for this group 토글을 활성화합니다.

프로젝트에 인스턴스 러너 비활성화#

개별 프로젝트 또는 그룹에 대해 인스턴스 러너를 비활성화할 수 있습니다. 프로젝트 또는 그룹의 Owner 권한이 있어야 합니다.

프로젝트에 인스턴스 러너를 비활성화하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Instance runners 영역에서 Turn on runners for this project 토글을 끕니다.

인스턴스 러너는 다음 경우에 프로젝트에 대해 자동으로 비활성화됩니다:

  • 상위 그룹의 인스턴스 러너 설정이 비활성화된 경우, 그리고

  • 프로젝트에서 이 설정을 재정의하는 것이 허용되지 않는 경우.

그룹에 인스턴스 러너 비활성화#

그룹에 인스턴스 러너를 비활성화하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Enable instance runners for this group 토글을 끕니다.

  • 선택 사항. 개별 프로젝트 또는 하위 그룹에서 인스턴스 러너를 활성화할 수 있도록 허용하려면 Allow projects and subgroups to override the group setting을 선택합니다.

인스턴스 러너가 잡을 선택하는 방법#

인스턴스 러너는 공정 사용 큐를 사용하여 잡을 처리합니다. 이 큐는 프로젝트가 수백 개의 잡을 만들고 사용 가능한 인스턴스 러너 리소스를 모두 사용하는 것을 방지합니다.

공정 사용 큐 알고리즘은 인스턴스 러너에서 이미 실행 중인 잡의 수가 가장 적은 프로젝트를 기준으로 잡을 할당합니다.

예를 들어, 다음 잡이 큐에 있는 경우:

  • 프로젝트 1의 잡 1

  • 프로젝트 1의 잡 2

  • 프로젝트 1의 잡 3

  • 프로젝트 2의 잡 4

  • 프로젝트 2의 잡 5

  • 프로젝트 3의 잡 6

여러 CI/CD 잡이 동시에 실행되는 경우, 공정 사용 알고리즘은 다음 순서로 잡을 할당합니다:

  • 잡 1이 첫 번째입니다. 실행 중인 잡이 없는 프로젝트(즉, 모든 프로젝트)에서 가장 낮은 잡 번호를 가지고 있기 때문입니다.

  • 잡 4가 다음입니다. 실행 중인 잡이 없는 프로젝트(프로젝트 1은 실행 중인 잡이 있음)에서 가장 낮은 잡 번호가 이제 4이기 때문입니다.

  • 잡 6이 다음입니다. 실행 중인 잡이 없는 프로젝트(프로젝트 1과 2는 실행 중인 잡이 있음)에서 가장 낮은 잡 번호가 이제 6이기 때문입니다.

  • 잡 2가 다음입니다. 실행 중인 잡의 수가 가장 적은 프로젝트(각각 1개)에서 가장 낮은 잡 번호이기 때문입니다.

  • 잡 5가 다음입니다. 프로젝트 1은 이제 2개의 잡이 실행 중이고 잡 5는 프로젝트 2와 3 사이에서 가장 낮은 잡 번호이기 때문입니다.

  • 마지막으로 잡 3은 남은 유일한 잡이기 때문입니다.

한 번에 하나의 잡만 실행되는 경우, 공정 사용 알고리즘은 다음 순서로 잡을 할당합니다:

  • 잡 1이 먼저 선택됩니다. 실행 중인 잡이 없는 프로젝트(즉, 모든 프로젝트)에서 가장 낮은 잡 번호를 가지고 있기 때문입니다.

  • 잡 1이 완료됩니다.

  • 잡 2가 다음입니다. 잡 1이 완료되었으므로 모든 프로젝트의 실행 중인 잡이 다시 0이 되었고, 2가 사용 가능한 가장 낮은 잡 번호이기 때문입니다.

  • 잡 4가 다음입니다. 프로젝트 1이 잡을 실행 중이므로, 4는 실행 중인 잡이 없는 프로젝트(프로젝트 2와 3)에서 가장 낮은 번호이기 때문입니다.

  • 잡 4가 완료됩니다.

  • 잡 5가 다음입니다. 잡 4가 완료되었으므로 프로젝트 2에 다시 실행 중인 잡이 없기 때문입니다.

  • 잡 6이 다음입니다. 프로젝트 3이 실행 중인 잡이 없는 유일한 프로젝트이기 때문입니다.

  • 마지막으로 잡 3은 남은 유일한 잡이기 때문입니다.

그룹 러너#

그룹의 모든 프로젝트에서 러너 집합에 접근하려면 그룹 러너를 사용합니다.

그룹 러너는 선입선출(FIFO) 큐를 사용하여 잡을 처리합니다.

러너 인증 토큰으로 그룹 러너 만들기#

사전 조건:

  • 그룹의 Owner 권한이 있어야 합니다.

GitLab Self-Managed 또는 GitLab.com을 위한 그룹 러너를 만들 수 있습니다. 러너를 만들면 등록에 사용하는 러너 인증 토큰이 할당됩니다. 러너는 잡 큐에서 잡을 가져올 때 GitLab 인증에 이 토큰을 사용합니다.

그룹 러너를 만들려면:

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Build > Runners를 선택합니다.

  • Create group runner를 선택합니다.

  • Tags 섹션의 Tags 필드에 러너가 실행할 수 있는 잡을 지정하는 잡 태그를 입력합니다. 이 러너에 대한 잡 태그가 없는 경우 Run untagged를 선택합니다.

  • 선택 사항. Runner description 필드에 GitLab에 표시될 러너 설명을 추가합니다.

  • 선택 사항. Configuration 섹션에 추가 구성을 추가합니다.

  • Create runner를 선택합니다.

  • GitLab Runner가 설치된 플랫폼을 선택합니다.

  • 화면의 지시를 완료합니다:

Linux, macOS, Windows의 경우, 명령줄에서 묻는 질문:

GitLab instance URL의 경우, GitLab 인스턴스의 URL을 사용합니다. 예를 들어, 프로젝트가 gitlab.example.com/yourname/yourproject에서 호스팅되는 경우, GitLab 인스턴스 URL은 https://gitlab.example.com입니다.

API를 사용하여 러너를 만들 수도 있습니다.

러너 인증 토큰은 등록 중에 짧은 시간 동안만 UI에 표시됩니다.

등록 토큰으로 그룹 러너 만들기 (더 이상 사용되지 않음)#

히스토리

  • Settings > CI/CD > Runners에서 경로가 변경되었습니다.

    러너 등록 토큰 전달 옵션과 특정 구성 인수에 대한 지원은 레거시로 간주되어 권장되지 않습니다. 러너 생성 워크플로우를 사용하여 러너를 등록할 인증 토큰을 생성합니다. 이 프로세스는 러너 소유권의 완전한 추적 가능성을 제공하고 러너 플릿의 보안을 강화합니다. 자세한 정보는 새 러너 등록 워크플로우로 마이그레이션을 참조하십시오.

    사전 조건:

  • 최상위 그룹에서 러너 등록 토큰이 활성화되어야 합니다.

  • 그룹의 Owner 권한이 있어야 합니다.

그룹 러너를 만들려면:

  • GitLab Runner를 설치합니다.

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Build > Runners를 선택합니다.

  • 오른쪽 상단 모서리에서 Register a group runner를 선택합니다.

  • Show runner installation and registration instructions를 선택합니다. 이 지침에는 러너를 등록하기 위한 토큰, URL 및 명령이 포함됩니다.

또는 등록 토큰을 복사하고 러너를 등록하는 방법에 대한 문서를 따를 수 있습니다.

그룹 러너 보기#

사전 조건:

  • 그룹의 Maintainer 또는 Owner 권한이 있어야 합니다.

그룹 및 해당 하위 그룹과 프로젝트의 모든 러너를 볼 수 있습니다. GitLab Self-Managed 또는 GitLab.com에서 이 작업을 수행할 수 있습니다.

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Build > Runners를 선택합니다.

상속된 그룹 러너만 표시하도록 필터링#

목록의 모든 러너를 표시하거나 인스턴스 또는 다른 그룹에서 상속된 러너만 표시하도록 선택할 수 있습니다.

기본적으로 상속된 러너만 표시됩니다.

인스턴스 러너 및 다른 그룹의 러너를 포함하여 인스턴스에서 사용 가능한 모든 러너를 표시하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Build > Runners를 선택합니다.

  • 목록 위에서 Show only inherited 토글을 끕니다.

그룹 러너 일시 중지 또는 재개#

사전 조건:

  • 관리자이거나 그룹의 Owner 권한이 있어야 합니다.

GitLab 인스턴스의 하위 그룹 및 프로젝트에서 잡을 수락하지 않도록 러너를 일시 중지할 수 있습니다. 여러 프로젝트에서 사용되는 그룹 러너를 일시 중지하면 러너는 모든 프로젝트에 대해 일시 중지됩니다.

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Build > Runners를 선택합니다.

  • 검색 상자에 러너 설명을 입력하거나 러너 목록을 필터링합니다.

  • 러너 목록에서 러너 오른쪽:

러너를 일시 중지하려면 Pause ( pause )를 선택합니다.

  • 러너를 재개하려면 Resume ( play )를 선택합니다.

그룹 러너 삭제#

사전 조건:

  • 관리자이거나 그룹의 Owner 권한이 있어야 합니다.

그룹 러너를 삭제하면 GitLab 인스턴스에서 영구적으로 삭제되어 하위 그룹 및 프로젝트에서 더 이상 사용할 수 없습니다. 러너가 잡을 수락하지 않도록 일시적으로 중지하려면 러너를 일시 중지할 수 있습니다.

단일 또는 여러 그룹 러너를 삭제하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Build > Runners를 선택합니다.

  • 검색 상자에 러너 설명을 입력하거나 러너 목록을 필터링합니다.

  • 그룹 러너를 삭제합니다:

단일 러너를 삭제하려면 러너 옆에서 Delete runner ( remove )를 선택합니다.

  • 여러 인스턴스 러너를 삭제하려면 각 러너의 체크박스를 선택하고 Delete selected를 선택합니다.

  • 모든 러너를 삭제하려면 러너 목록 상단의 체크박스를 선택하고 Delete selected를 선택합니다.

  • Permanently delete runner를 선택합니다.

오래된 그룹 러너 정리#

사전 조건:

  • 그룹의 Owner 권한이 있어야 합니다.

7일 이상 비활성 상태인 그룹 러너를 정리할 수 있습니다.

그룹 러너는 특정 그룹에서 만들어진 러너입니다.

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Enable stale runner cleanup 토글을 활성화합니다.

오래된 러너 정리 로그 보기#

Sidekiq 로그를 확인하여 정리 결과를 볼 수 있습니다. Kibana에서 다음 쿼리를 사용할 수 있습니다:

{
  "query": {
    "match_phrase": {
      "json.class.keyword": "Ci::Runners::StaleGroupRunnersPruneCronWorker"
    }
  }
}

오래된 러너가 제거된 항목을 필터링합니다:

{
  "query": {
    "range": {
      "json.extra.ci_runners_stale_group_runners_prune_cron_worker.total_pruned": {
        "gte": 1,
        "lt": null
      }
    }
  }
}

프로젝트 러너#

특정 프로젝트에 러너를 사용하려면 프로젝트 러너를 사용합니다. 예를 들어, 다음과 같은 경우:

  • 자격 증명이 필요한 배포 잡과 같은 특정 요구사항을 가진 잡이 있는 경우.

  • 다른 러너와 분리됨으로써 이점을 얻을 수 있는 CI 활동이 많은 프로젝트.

프로젝트 러너를 여러 프로젝트에서 사용하도록 설정할 수 있습니다. 프로젝트 러너는 각 프로젝트에 대해 명시적으로 활성화되어야 합니다.

프로젝트 러너는 선입선출(FIFO) 큐를 사용하여 잡을 처리합니다.

프로젝트 러너는 포크된 프로젝트에서 자동으로 인스턴스와 함께 제공되지 않습니다.

포크는 복제된 리포지터리의 CI/CD 설정을 복사합니다.

프로젝트 러너 소유권#

러너가 프로젝트에 처음 연결되면 해당 프로젝트가 러너의 소유자가 됩니다.

소유자 프로젝트를 삭제하면:

  • GitLab은 러너를 공유하는 다른 모든 프로젝트를 찾습니다.

  • GitLab은 가장 오래된 연결을 가진 프로젝트에 소유권을 할당합니다.

  • 다른 프로젝트가 러너를 공유하지 않으면 GitLab은 러너를 자동으로 삭제합니다.

소유자 프로젝트에서 러너 할당을 해제할 수 없습니다. 대신 러너를 삭제하십시오.

러너 인증 토큰으로 프로젝트 러너 만들기#

사전 조건:

  • 프로젝트의 Maintainer 권한이 있어야 합니다.

GitLab Self-Managed 또는 GitLab.com을 위한 프로젝트 러너를 만들 수 있습니다. 러너를 만들면 러너를 등록하는 데 사용하는 러너 인증 토큰이 할당됩니다. 러너는 잡 큐에서 잡을 가져올 때 GitLab 인증에 이 토큰을 사용합니다.

프로젝트 러너를 만들려면:

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners 섹션을 펼칩니다.

  • Create project runner를 선택합니다.

  • GitLab Runner가 설치된 운영 체제를 선택합니다.

  • Tags 섹션의 Tags 필드에 러너가 실행할 수 있는 잡을 지정하는 잡 태그를 입력합니다. 이 러너에 대한 잡 태그가 없는 경우 Run untagged를 선택합니다.

  • 선택 사항. Runner description 필드에 GitLab에 표시될 러너 설명을 추가합니다.

  • 선택 사항. Configuration 섹션에 추가 구성을 추가합니다.

  • Create runner를 선택합니다.

  • GitLab Runner가 설치된 플랫폼을 선택합니다.

  • 화면의 지시를 완료합니다:

Linux, macOS, Windows의 경우, 명령줄에서 묻는 질문:

GitLab instance URL의 경우, GitLab 인스턴스의 URL을 사용합니다. 예를 들어, 프로젝트가 gitlab.example.com/yourname/yourproject에서 호스팅되는 경우, GitLab 인스턴스 URL은 https://gitlab.example.com입니다.

API를 사용하여 러너를 만들 수도 있습니다.

러너 인증 토큰은 등록 중에 짧은 시간 동안만 UI에 표시됩니다.

등록 토큰으로 프로젝트 러너 만들기 (더 이상 사용되지 않음)#

러너 등록 토큰 전달 옵션과 특정 구성 인수에 대한 지원은 레거시로 간주되어 권장되지 않습니다.

러너 생성 워크플로우를 사용하여 러너를 등록할 인증 토큰을 생성합니다. 이 프로세스는 러너 소유권의 완전한 추적 가능성을 제공하고 러너 플릿의 보안을 강화합니다. 자세한 정보는 새 러너 등록 워크플로우로 마이그레이션을 참조하십시오.

사전 조건:

  • 최상위 그룹에서 러너 등록 토큰이 활성화되어야 합니다.

  • 프로젝트의 Maintainer 또는 Owner 권한이 있어야 합니다.

프로젝트 러너를 만들려면:

  • GitLab Runner를 설치합니다.

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Project runners 섹션에서 URL과 토큰을 확인합니다.

  • 러너를 등록합니다.

이제 러너가 프로젝트에 대해 활성화됩니다.

프로젝트 러너 일시 중지 또는 재개#

사전 조건:

  • 관리자이거나 프로젝트의 Maintainer 권한이 있어야 합니다.

GitLab 인스턴스에서 할당된 프로젝트에서 잡을 수락하지 않도록 프로젝트 러너를 일시 중지할 수 있습니다.

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Assigned project runners 섹션에서 러너를 찾습니다.

  • 러너 오른쪽:

러너를 일시 중지하려면 Pause ( pause )를 선택한 다음 Pause를 선택합니다.

  • 러너를 재개하려면 Resume ( play )를 선택합니다.

프로젝트 러너 삭제#

사전 조건:

  • 관리자이거나 프로젝트의 Maintainer 권한이 있어야 합니다.

  • 두 개 이상의 프로젝트에 할당된 프로젝트 러너는 삭제할 수 없습니다. 러너를 삭제하기 전에 활성화된 모든 프로젝트에서 비활성화해야 합니다.

프로젝트 러너를 삭제하면 GitLab 인스턴스에서 영구적으로 삭제되어 프로젝트에서 더 이상 사용할 수 없습니다. 러너가 잡을 수락하지 않도록 일시적으로 중지하려면 러너를 일시 중지할 수 있습니다.

러너를 삭제해도 구성은 여전히 러너 호스트의 config.toml 파일에 존재합니다. 삭제된 러너의 구성이 이 파일에 여전히 있으면 러너 호스트는 계속 GitLab에 연결합니다. 불필요한 API 트래픽을 방지하려면 삭제된 러너의 등록을 해제해야 합니다.

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Assigned project runners 섹션에서 러너를 찾습니다.

  • 러너 오른쪽에서 Remove runner를 선택합니다.

  • 러너를 삭제하려면 Remove를 선택합니다.

다른 프로젝트에 프로젝트 러너 활성화#

프로젝트 러너가 만들어지면 다른 프로젝트에 대해 활성화할 수 있습니다.

사전 조건: 다음 프로젝트에 대해 Maintainer 또는 Owner 권한이 있어야 합니다:

  • 러너가 이미 활성화된 프로젝트.

  • 러너를 활성화하려는 프로젝트.

  • 프로젝트 러너는 잠금되지 않아야 합니다.

프로젝트에 프로젝트 러너를 활성화하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Project runners 영역에서 원하는 러너 옆에 Enable for this project를 선택합니다.

활성화된 모든 프로젝트에서 프로젝트 러너를 편집할 수 있습니다. 잠금 해제 및 태그와 설명 편집을 포함한 수정 사항은 러너를 사용하는 모든 프로젝트에 영향을 미칩니다.

관리자는 여러 프로젝트에 대해 러너를 활성화할 수 있습니다.

프로젝트 러너가 다른 프로젝트에 활성화되지 않도록 방지#

프로젝트 러너를 "잠금" 상태로 구성하여 다른 프로젝트에 활성화될 수 없도록 할 수 있습니다. 이 설정은 처음 러너를 등록할 때 활성화할 수 있지만 나중에 변경할 수도 있습니다.

프로젝트 러너를 잠금 또는 잠금 해제하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 프로젝트를 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • 잠금 또는 잠금 해제할 프로젝트 러너를 찾습니다. 활성화되어 있는지 확인합니다. 인스턴스 또는 그룹 러너는 잠금할 수 없습니다.

  • Edit ( pencil )를 선택합니다.

  • Lock to current projects 체크박스를 선택합니다.

  • Save changes를 선택합니다.

러너 상태#

러너는 다음 상태 중 하나를 가질 수 있습니다.

상태 설명
online 러너가 지난 2시간 내에 GitLab에 연락했으며 잡을 실행할 수 있습니다.
offline 러너가 2시간 이상 GitLab에 연락하지 않았으며 잡을 실행할 수 없습니다. 러너를 온라인 상태로 전환할 수 있는지 확인하십시오.
stale 러너가 7일 이상 GitLab에 연락하지 않았습니다. 러너가 7일 이상 전에 만들어졌지만 인스턴스에 연락한 적이 없는 경우도 오래됨으로 간주됩니다.
never_contacted 러너가 GitLab에 연락한 적이 없습니다. 러너가 GitLab에 연락하도록 하려면 gitlab-runner run을 실행하십시오.

오래된 러너 관리자 정리#

GitLab은 데이터베이스를 효율적으로 유지하기 위해 오래된 러너 관리자를 주기적으로 삭제합니다. 러너가 GitLab 인스턴스에 연락하면 연결이 다시 생성됩니다.

러너 성능 통계 보기#

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

관리자로서 러너 통계를 보고 러너 플릿의 성능에 대해 알아볼 수 있습니다.

잡 큐 중간 시간 값은 인스턴스 러너가 실행한 가장 최근 100개의 잡의 큐 대기 시간을 샘플링하여 계산됩니다. 최신 5000개의 러너에서의 잡만 고려됩니다.

중간값은 50번째 백분위수에 해당하는 값입니다. 잡의 절반은 중간값보다 더 오래 큐에 있고, 절반은 중간값보다 짧게 큐에 있습니다.

러너 통계를 보려면:

  • 오른쪽 상단 모서리에서 Admin을 선택합니다.

  • 왼쪽 사이드바에서 CI/CD > Runners를 선택합니다.

  • View metrics를 선택합니다.

업그레이드가 필요한 러너 확인#

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

사전 조건:

  • 인스턴스 러너를 보기 위한 관리자 접근 권한.

  • 그룹 러너를 보기 위한 Maintainer 또는 Owner 권한.

러너에서 사용되는 GitLab Runner 버전은 최신 상태로 유지되어야 합니다.

업그레이드가 필요한 러너를 확인하려면:

러너 목록을 봅니다:

그룹의 경우:

상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • Build > Runners를 선택합니다.

  • 인스턴스의 경우:

오른쪽 상단 모서리에서 Admin을 선택합니다.

  • CI/CD > Runners를 선택합니다.

러너 목록 위에서 상태를 봅니다:

Outdated - recommended: 러너에 최신 PATCH 버전이 없어 보안 또는 높은 심각도 버그에 취약할 수 있습니다. 또는 러너가 GitLab 인스턴스보다 하나 이상의 MAJOR 버전이 뒤처져 있어 일부 기능이 사용 불가능하거나 제대로 작동하지 않을 수 있습니다.

  • Outdated - available: 최신 버전이 사용 가능하지만 업그레이드가 긴급하지 않습니다.

상태별로 목록을 필터링하여 업그레이드가 필요한 개별 러너를 확인합니다.

러너의 IP 주소 확인#

러너 문제를 해결하려면 러너의 IP 주소를 알아야 할 수 있습니다. GitLab은 러너가 잡을 폴링할 때 HTTP 요청의 소스를 보고 IP 주소를 저장하고 표시합니다. GitLab은 업데이트될 때마다 러너의 IP 주소를 자동으로 업데이트합니다.

인스턴스 러너와 프로젝트 러너의 IP 주소는 서로 다른 위치에서 찾을 수 있습니다.

인스턴스 러너의 IP 주소 확인#

사전 조건:

  • 인스턴스에 대한 관리자 접근 권한이 있어야 합니다.

인스턴스 러너의 IP 주소를 확인하려면:

  • 오른쪽 상단 모서리에서 Admin을 선택합니다.

  • 왼쪽 사이드바에서 CI/CD > Runners를 선택합니다.

  • 테이블에서 러너를 찾아 IP Address 열을 봅니다.

[

](/19.2/ci/runners/img/shared_runner_ip_address_v14_5.png)

프로젝트 러너의 IP 주소 확인#

프로젝트 러너의 IP 주소를 찾으려면 해당 프로젝트의 Owner 권한이 있어야 합니다.

  • 프로젝트의 Settings > CI/CD로 이동하여 Runners 섹션을 펼칩니다.

  • 러너 이름을 선택하고 IP Address 행을 찾습니다.

[

](/19.2/ci/runners/img/project_runner_ip_address_v17_6.png)

러너 구성에 유지 관리 메모 추가#

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

히스토리

  • GitLab 18.2에서 그룹 및 프로젝트에 대해 도입됨.

러너를 문서화하기 위해 유지 관리 메모를 추가할 수 있습니다. 러너를 편집할 수 있는 사용자는 러너 세부 정보를 볼 때 메모를 볼 수 있습니다.

이 기능을 사용하여 러너 구성 변경과 관련된 결과 또는 문제를 다른 사람에게 알릴 수 있습니다.

프로젝트 및 그룹에서 러너 등록 토큰 사용 활성화#

러너 등록 토큰 전달 옵션과 특정 구성 인수에 대한 지원은 레거시로 간주되어 권장되지 않습니다.

러너 생성 워크플로우를 사용하여 러너를 등록할 인증 토큰을 생성합니다. 이 프로세스는 러너 소유권의 완전한 추적 가능성을 제공하고 러너 플릿의 보안을 강화합니다. 자세한 정보는 새 러너 등록 워크플로우로 마이그레이션을 참조하십시오.

GitLab 17.0에서는 모든 GitLab 인스턴스에서 러너 등록 토큰 사용이 비활성화됩니다.

사전 조건:

프로젝트 및 그룹에서 러너 등록 토큰 사용을 활성화하려면:

  • 상단 표시줄에서 Search or go to를 선택하고 그룹을 찾습니다.

  • 왼쪽 사이드바에서 Settings > CI/CD를 선택합니다.

  • Runners를 펼칩니다.

  • Allow members of projects and groups to create runners with runner registration tokens 토글을 활성화합니다.