GitLab 호스팅 러너

자세한 정보:
Tier: Free, Premium, Ultimate
Offering: GitLab.com

GitLab.com과 GitLab Dedicated에서 GitLab 호스팅 러너를 사용하여 응용 프로그램을 다양한 환경에 맞게 원활하게 빌드, 테스트 및 배포할 수 있습니다.

GitLab.com용 호스팅 러너

이러한 러너는 GitLab.com과 완전히 통합되어 있으며 모든 프로젝트에 대해 기본적으로 활성화되어 있으며 구성이 필요하지 않습니다.
작업을 다음에서 실행할 수 있습니다:

GitLab.com용 호스팅 러너 작동 방식

호스팅 러너를 사용하면:

  • 각 작업은 특정 작업에 전용된 새로운 가상 머신(VM)에서 실행됩니다.
  • 작업이 실행되는 가상 머신은 패스워드 없이 sudo 액세스 권한을 갖습니다.
  • 작업이 실행되는 가상 머신의 저장 공간은 운영 체제, 사전 설치된 소프트웨어 이미지 및 복제된 리포지터리의 사본으로 공유됩니다. 이는 작업에서 사용할 수 있는 무료 디스크 공간을 줄이게 됨을 의미합니다.
  • 태그되지 않은 작업은 small Linux x86-64 러너에서 실행됩니다.
note
GitLab.com의 호스팅 러너에서 작업은 프로젝트에서 구성된 타임아웃과 관계없이 3시간 후에 타임아웃됩니다.

GitLab.com용 호스팅 러너의 보안

다음은 GitLab.com의 호스팅 러너에 내장된 추가 내부 계층의 개요를 제공합니다.

GitLab.com의 호스팅 러너는 다음과 같이 구성됩니다:

  • 방화벽 규칙은 일시적인 VM에서 인터넷으로의 외부 통신만 허용합니다.
  • 공개 인터넷에서 일시적인 VM으로의 들어오는 통신은 허용되지 않습니다.
  • 방화벽 규칙은 VM간의 통신을 허용하지 않습니다.
  • 일시적인 VM에 허용된 유일한 내부 통신은 러너 관리자에서 진행됩니다.
  • 작업 실행간의 VM 격리
  • 일시적인 러너 VM은 하나의 작업에만 사용되며 해당 작업 실행 후에 바로 삭제됩니다.

GitLab.com용 호스팅 러너의 아키텍처 다이어그램

다음 이미지는 GitLab.com의 호스팅 러너의 아키텍처 다이어그램을 보여줍니다.

GitLab.com용 호스팅 러너 아키텍처

러너의 인증 및 작업 페이로드 실행 방법과 관련한 자세한 정보는 러너 실행 흐름을 참조하세요.

GitLab.com용 호스팅 러너의 작업 격리

네트워크에서 러너를 격리하는 것 외에, 각 일시적인 러너 VM은 하나의 작업에만 사용되며 작업 실행 후에 바로 삭제됩니다.
다음 예에서 프로젝트의 파이프라인에서 세 개의 작업이 실행됩니다. 이러한 각 작업은 전용 일시적인 VM에서 실행됩니다.

작업 격리

빌드 작업은 runner-ns46nmmj-project-43717858, 테스트 작업은 f131a6a2runner-new2m-od-project-43717858, 그리고 배포 작업은 runner-tmand5m-project-43717858에서 실행되었습니다.

GitLab은 CI 작업이 완료된 직후 일시적인 러너 VM 삭제 명령을 Google Compute API로 전송합니다. Google Compute Engine 하이퍼바이저 는 가상 머신 및 관련 데이터를 안전하게 삭제하는 과정을 즉시 처리합니다.

GitLab.com의 호스팅 러너의 보안에 대한 자세한 내용은 Google Cloud Infrastructure Security Design Overview 화이트페이퍼, GitLab Trust Center 또는 GitLab 보안 규정 준수 자료를 참조하십시오.

GitLab.com용 호스팅 러너의 캐싱

호스팅 러너는 Google Cloud Storage (GCS) 버킷에 저장된 분산 캐시를 공유합니다. 지난 14일 동안 업데이트되지 않은 캐시 내용은 객체 수명 주기 관리 정책에 따라 자동으로 삭제됩니다. 업로드된 캐시 아티팩트의 최대 크기는 캐시가 압축된 아카이브가 된 후 5GB입니다.

캐싱 작동 방식 등에 대한 자세한 정보는 GitLab.com용 호스팅 러너 아키텍처 다이어그램GitLab CI/CD의 캐싱을 참조하십시오.

GitLab.com용 호스팅 러너의 요금

GitLab.com용 호스팅 러너에서 실행되는 작업은 귀하의 네임스페이스에 할당된 컴퓨팅 분을 사용합니다. 이러한 러너에서 사용할 수 있는 분의 수는 귀하의 구독 요금제 또는 추가로 구매한 컴퓨팅 분에 따라 다릅니다.

기계 종류를 기반으로 한 가격 요인에 대한 자세한 정보는 가격 요인을 참조하십시오.

GitLab.com용 호스팅 러너의 SLO 및 릴리스 주기

우리의 SLO 목표는 CI/CD 작업의 90%가 실행 시작 후 120초 이내에 실행되도록 하는 것입니다. 오류율은 0.5% 미만이어야 합니다.

우리는 GitLab Runner의 최신 버전으로의 업데이트를 릴리스 후 1주일 이내에 목표로 하고 있습니다.
Deprecations and removals에서 모든 GitLab Runner 변경 사항을 찾을 수 있습니다.

GitLab 커뮤니티 기여용 호스팅 러너

만약 GitLab에 기여하고 싶다면, 작업은 GitLab 프로젝트 및 관련 커뮤니티 포크를 위한 전용 gitlab-shared-runners-manager-X.gitlab.com 러너 그룹에서 수행됩니다.

이러한 러너는 우리의 small Linux x86-64 러너와 동일한 기계 유형으로 지원됩니다.
GitLab.com용 호스팅 러너와 달리, GitLab 커뮤니티 기여용 호스팅 러너는 최대 40번까지 재사용됩니다.

우리는 사람들이 기여할 수 있도록 장려하기를 원하므로, 이러한 러너는 무료로 제공됩니다.

GitLab Dedicated용 호스팅 러너

이러한 러너는 GitLab Dedicated 고객을 위해 요청 시 생성되며 귀하의 GitLab Dedicated 인스턴스와 완전히 통합됩니다.
작업을 다음에서 실행할 수 있습니다:

지원되는 이미지 수명주기

macOS 및 Windows용 호스팅 러너는 지원되는 이미지에서만 작업을 실행할 수 있습니다. 별도의 이미지를 사용할 수 없습니다.
지원되는 이미지에는 다음 수명주기가 있습니다:

Beta

새 이미지는 Beta로 릴리스됩니다. 이를 통해 일반 사용 가능(GA) 이전에 피드백을 수렴하고 잠재적인 문제를 해결할 수 있습니다.
Beta 이미지에서 실행되는 작업은 서비스 수준 계약(SLA)에 포함되지 않습니다.
Beta 이미지 사용 시 이슈를 생성하여 피드백을 제공할 수 있습니다.

일반 사용 가능 (GA)

이미지가 안정된 상태로 간주되어야만 이미지가 일반 사용 가능 상태가 됩니다.
일반 사용 가능 상태로 전환하기 위해 이미지는 다음 조건을 충족해야 합니다:

  • 모든 신고된 중대한 버그를 해결함으로써 Beta 단계를 성공적으로 완료
  • 설치된 소프트웨어의 호환성으로 기존 운영 체제와의 충돌을 해소함

GA 이미지에서 실행되는 작업은 정의된 서비스 수준 계약으로 보장됩니다.

Deprecated

한 번에 두 개의 일반 사용 가능(GA) 이미지가 지원됩니다. 새로운 GA 이미지가 출시되면 가장 오래된 GA 이미지가 폐기됩니다. 폐기된 이미지는 더 이상 업데이트되지 않으며 폐기 지침에 따라 3개월 후에 삭제됩니다.