Kubernetes 클러스터
GitLab에 클러스터를 연결하려면 GitLab 에이전트를 사용하십시오.
인증 기반 Kubernetes 통합 (폐기 예정)
경고: GitLab 14.5에서 Kubernetes 클러스터를 GitLab에 연결하는 인증 기반 방법이 폐기 예정되었으며 관련 기능도 마찬가지입니다. self-managed GitLab 17.0부터는 기본적으로 이 기능이 비활성화되어 있습니다. GitLab SaaS 사용자의 경우, 네임스페이스 계층 구조에서 적어도 하나의 인증 기반 클러스터가 활성화된 사용자는 GitLab 15.9까지 이 기능을 사용할 수 있습니다. 이 기능을 이전에 사용하지 않은 GitLab SaaS 사용자는 더 이상 사용할 수 없습니다.
GitLab과의 인증 기반 Kubernetes 통합은 폐기되었습니다. 다음과 같은 문제가 있었습니다.
- GitLab에 의해 쿠버네티스 API에 직접 액세스가 필요하여 보안 문제가 있었습니다.
- 구성 옵션이 유연하지 않았습니다.
- 통합이 불안정했습니다.
- 이 모델을 기반으로 한 기능에 대한 사용자들의 지속적인 문제가 보고되었습니다.
이러한 이유로 새로운 모델, GitLab 에이전트를 기반으로 한 기능을 구축하기 시작했습니다. 병렬로 두 가지 방법을 유지하는 것은 혼란을 야기시키고, 사용, 개발, 유지 및 문서화의 복잡성을 크게 증가시켰습니다. 이러한 이유로 우리는 새로운 모델에 집중하기 위해 이러한 방법들을 폐기하기로 결정했습니다.
인증 기반 기능은 계속해서 보안 및 중요한 수정 사항을 받게 되며 이를 기반으로 한 기능들은 지원되는 Kubernetes 버전과 계속 작동할 것입니다. GitLab에서 이러한 기능들을 제거하는 것은 아직 예정되지 않았습니다. 업데이트를 위해 이 epic을 참조하세요.
우리가 클러스터 인증서를 GitLab 에이전트 모델로 옮긴 이유에 대한 기술적 정보를 에이전트의 설계 문서에서 찾을 수 있습니다.
GitLab 에이전트로 마이그레이션하는 데 더 많은 시간이 필요한 경우 GitLab 15.0에서 도입된 certificate_based_clusters
라는 기능 플래그를 활성화할 수 있습니다. 이 기능 플래그는 인증 기반 Kubernetes 통합을 다시 활성화합니다.
폐기된 기능
- 기존 클러스터 연결을 클러스터 인증서로 제공
- 액세스 제어
- GitLab 관리 클러스터
- 인증서 기반 연결을 통한 응용 프로그램 배포
- 클러스터 관리 프로젝트
- 클러스터 환경
- 배포 보드에서 카나리아 Ingress 배포 표시
- 배포 보드
- 웹 터미널
클러스터 레벨
프로젝트 수준, 그룹 수준, 및 인스턴스 수준 클러스터 개념은 새로운 모델에서 사라지지만 일부 기능은 어느 정도 남아 있습니다.
에이전트는 항상 단일 GitLab 프로젝트에서 구성되며 클러스터 연결을 GitLab CI/CD에서 액세스할 수 있도록 다른 프로젝트 및 그룹에 노출시킬 수 있습니다. 이렇게 함으로써, 이러한 프로젝트와 그룹에 동일한 클러스터 액세스를 부여하게 되며 이는 그룹 수준 클러스터의 사용 사례와 유사합니다.