클러스터 관리 프로젝트 (사용 중지됨)
- Self-managed에서 사용 중지됨 (GitLab 15.0).
클러스터 애플리케이션을 관리하려면, GitLab 에이전트를 사용하세요
클러스터 관리 프로젝트 템플릿와 함께.
Self-managed GitLab에서는 기본적으로 이 기능이 제공되지 않습니다.
사용 가능하도록 하려면, 관리자가
certificate_based_clusters
라는 기능 플래그를 활성화할 수 있습니다.프로젝트는 클러스터의 관리 프로젝트로 지정될 수 있습니다.
관리 프로젝트는 Kubernetes
cluster-admin
권한으로 배포 작업을 실행하는 데 사용할 수 있습니다.
이는 다음에 유용할 수 있습니다:
- 클러스터 전체 애플리케이션을 클러스터에 설치하는 파이프라인 생성,
관리 프로젝트 템플릿을 참조하세요. -
cluster-admin
권한이 필요한 모든 작업.
권한
오직 관리 프로젝트만 cluster-admin
권한을 받습니다.
모든 다른 프로젝트는 네임스페이스 범위의 edit
레벨 권한을 계속 받습니다.
관리 프로젝트는 다음과 같이 제한됩니다:
- 프로젝트 수준의 클러스터의 경우, 관리 프로젝트는 클러스터 프로젝트와 동일한
네임스페이스에 있어야 합니다 (또는 하위 항목). - 그룹 수준의 클러스터의 경우, 관리 프로젝트는 클러스터 그룹과 동일한
그룹에 있어야 합니다 (또는 하위 항목). - 인스턴스 수준의 클러스터의 경우, 그러한 제한은 없습니다.
클러스터 관리 프로젝트 생성 및 구성 방법
클러스터를 관리하기 위해 클러스터 관리 프로젝트를 사용하려면:
- 클러스터의 클러스터 관리 프로젝트로 사용할 새로운 프로젝트를 생성합니다.
- 클러스터를 관리 프로젝트와 연결합니다.
- 클러스터의 파이프라인을 구성합니다.
- 환경 범위를 설정합니다.
클러스터 관리 프로젝트와 클러스터 연결하기
클러스터 관리 프로젝트를 클러스터와 연결하려면:
- 적절한 구성 페이지로 이동합니다.
-
프로젝트 수준 클러스터의 경우,
프로젝트의 Operate > Kubernetes clusters 페이지로 이동합니다. -
그룹 수준 클러스터의 경우,
그룹의 Kubernetes 페이지로 이동합니다. -
인스턴스 수준 클러스터:
- 왼쪽 사이드바에서 가장 아래에 있는 Admin을 선택합니다.
- Kubernetes를 선택합니다.
-
프로젝트 수준 클러스터의 경우,
- 고급 설정을 확장합니다.
-
클러스터 관리 프로젝트 드롭다운 목록에서
이전 단계에서 생성한 클러스터 관리 프로젝트를 선택합니다.
파이프라인 구성하기
클러스터에 대한 관리 프로젝트로 프로젝트를 지정한 후,
해당 프로젝트에 .gitlab-ci.yml
파일을 추가합니다.
예를 들어:
클러스터 구성:
단계: 배포
스크립트: kubectl get namespaces
환경:
이름: production
환경 범위 설정하기
환경 범위는
동일한 관리 프로젝트에 여러 클러스터를 연결할 때 사용할 수 있습니다.
각 범위는 관리 프로젝트에 대해 단일 클러스터에서만 사용할 수 있습니다.
예를 들어, 다음 Kubernetes 클러스터가 관리 프로젝트에 연결되어 있다고 가정해 보겠습니다:
클러스터 | 환경 범위 |
---|---|
Development | * |
Staging | staging |
Production | production |
.gitlab-ci.yml
파일에 설정된 환경은 Development, Staging, 및 Production 클러스터에 배포됩니다.
단계:
- 배포
개발 클러스터 구성:
단계: 배포
스크립트: kubectl get namespaces
환경:
이름: development
스테이징 클러스터 구성:
단계: 배포
스크립트: kubectl get namespaces
환경:
이름: staging
생산 클러스터 구성:
단계: 배포
스크립트: kubectl get namespaces
환경:
이름: production