소개
GitLab Runner는 GitLab CI/CD 파이프라인을 실행하는 애플리케이션입니다.
GitLab에서 CI/CD 파이프라인을 실행하려면, 하나 이상의 GitLab Runner를 설치하고 GitLab에 등록해야 합니다.
GitLab Runner는 GNU/Linux, macOS, FreeBSD 및 Windows 등 다양한 OS에 설치하여 사용할 수 있으며, Docker 컨테이너 내에서 실행하거나 Kubernetes 클러스터에 배포할 수도 있습니다.
이번 실습에서는 Runner를 Helm 차트로 Kubernetes 클러스터에 배포합니다. 이렇게 하면 Runner가 Kubernetes executor를 사용하고, GitLab CI/CD에서 수신하는 각각의 새 Job에 대해 지정된 네임스페이스 내에 새 Pod를 프로비저닝하여 실행할 수 있습니다.
학습의 결과로 GitLab Runner를 Kubernetes 클러스터에 배포하고 GitLab에 등록합니다. 이후 GitLab을 이용하여 CI/CD 파이프라인을 만들고 실행할 수 있습니다.
GitLab Runner란?
GitLab Runner는 GitLab CI/CD와 함께 작동하여 파이프라인에서 Job을 실행하는 애플리케이션입니다. 이는 GitLab CI/CD의 코디네이터 API로 CI Job을 선택하고 Job을 실행한 다음, 결과를 GitLab 인스턴스로 다시 보내는 가벼우면서도 확장성이 뛰어난 에이전트입니다.
GitLab Runner에는 다음과 같은 특징이 있습니다.
•
여러 Job을 동시에 실행 가능
•
구성 정보를 수정하고 다시 시작하지 않아도 이를 자동으로 로드
•
다양한 실행 환경 지원
•
다양한 OS 지원
•
통합 및 확장성
학습 내용
•
MinIO에서 Runner 캐시 데이터를 저장할 버킷과 액세스 키를 생성하고 구성하는 방법
•
GitLab에서 Runner 토큰을 발급하는 방법
•
GitLab Runner Helm 차트 리포지터리를 구성하는 방법
•
GitLab Runner Helm 차트의 구성 정보를 배포 환경에 맞게 설정하는 방법
•
Helm 차트로 GitLab Runner를 배포하고 확인하는 방법
워크플로
사전 준비사항
기본 요건
•
Kubernetes에 대한 기본 개념
•
Helm, kubectl에 대한 기본 개념
•
GitLab에 대한 이해
필요 항목
•
GitLab Runner를 배포할 Kubernetes 클러스터가 구축되어 있어야 합니다.
•
Runner 캐시 데이터를 저장할 오브젝트 스토리지를 사용할 수 있도록 MinIO가 구축되어 있어야 합니다.
•
GitLab이 구축되어 있어야 합니다.