Kubernetes 대시 보드
- GitLab 16.1에서 소개되었으며
environment_settings_to_graphql
,kas_user_access
,kas_user_access_project
, 및expose_authorized_cluster_agents
라는 플래그로 구분됩니다. 이 기능은 Beta 상태입니다.environment_settings_to_graphql
GitLab 16.2에서 제거되었습니다.kas_user_access
,kas_user_access_project
, 및expose_authorized_cluster_agents
GitLab 16.2에서 제거되었습니다.- 16.10에서 환경 세부 정보 페이지로 이동되었습니다.
Kubernetes 대시 보드를 사용하여 직관적인 시각적 인터페이스로 클러스터 상태를 이해하세요. 대시 보드는 CI/CD 또는 GitOps로 배포한 모든 연결된 Kubernetes 클러스터와 함께 작동합니다.
대시 보드 구성
- 네임스페이스별로 리소스 필터링이 GitLab 16.2에서
kubernetes_namespace_for_environment
라는 플래그로 도입되었습니다. 기본적으로 비활성화됩니다.- 네임스페이스별로 리소스 필터링이 GitLab 16.3에서 기본적으로 활성화되었습니다. 피처 플래그
kubernetes_namespace_for_environment
가 제거되었습니다.- 관련된 Flux 리소스 선택이 GitLab 16.3에서
flux_resource_for_environment
라는 플래그로 도입되었습니다.- 관련된 Flux 리소스 선택이 GitLab 16.4에서 일반적으로 사용 가능해졌습니다. 피처 플래그
flux_resource_for_environment
가 제거되었습니다.
특정 환경에 대해 대시 보드를 구성하세요. 이미 있는 환경 또는 새로운 환경에 대한 대시 보드를 구성할 수 있습니다.
전제 조건:
- Kubernetes용 GitLab 에이전트가 구성되어 있고, 환경의 프로젝트나 상위 그룹에서
user_access
(../../user/clusters/agent/user_access.md) 키워드를 사용하여 공유되었습니다.
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 운영 > 환경을 선택합니다.
- Kubernetes와 연결할 환경을 선택합니다.
- 편집을 선택합니다.
- Kubernetes용 GitLab 에이전트를 선택합니다.
- Kubernetes 네임스페이스 드롭다운 디렉터리에서 namespace를 선택합니다.
- Flux 리소스 드롭다운 디렉터리에서 Flux 리소스를 선택합니다.
- 저장을 선택합니다.
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 운영 > 환경을 선택합니다.
- 새 환경을 선택합니다.
- 이름 필드를 작성합니다.
- Kubernetes용 GitLab 에이전트를 선택합니다.
- Kubernetes 네임스페이스 드롭다운 디렉터리에서 namespace를 선택합니다.
- Flux 리소스 드롭다운 디렉터리에서 Flux 리소스를 선택합니다.
- 저장을 선택합니다.
대시 보드 보기
- Kubernetes watch API 통합이 GitLab 16.6에서
k8s_watch_api
라는 플래그로 도입되었습니다. 기본적으로 비활성화됩니다.- Kubernetes watch API 통합이 GitLab 16.7에서 기본적으로 활성화되었습니다.
연결된 클러스터의 상태를 확인하기 위해 대시 보드를 보세요.
k8s_watch_api
피처 플래그가 활성화되면 Kubernetes 리소스의 상태 및 Flux 조정 업데이트를 실시간으로 확인할 수 있습니다.
구성된 대시 보드를 보려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 운영 > 환경을 선택합니다.
- Kubernetes용 에이전트와 연관된 환경을 선택합니다.
- Kubernetes 개요 탭을 선택합니다.
Flux 동기화 상태
- GitLab 16.3에서 도입되었습니다.
- Flux 리소스의 이름을 사용자 정의하는 것이 GitLab 16.3에서
flux_resource_for_environment
라는 플래그로 도입되었습니다.- Flux 리소스의 이름을 사용자 정의하는 것이 GitLab 16.4에서 일반적으로 사용 가능해졌습니다. 피처 플래그
flux_resource_for_environment
가 제거되었습니다.
대시 보드에서 Flux 배포의 동기화 상태를 검토할 수 있습니다.
배포 상태를 표시하려면 대시 보드에서 Kustomization
및 HelmRelease
리소스를 검색할 수 있어야 하며,
이를 위해서 환경 설정에 대해 namespace가 구성되어 있어야 합니다.
대시 보드에는 다음과 같은 상태 뱃지 중 하나가 표시됩니다:
상태 | 설명 |
---|---|
조정됨 | 배포가 환경과 성공적으로 조정되었습니다. |
조정 중 | 조정이 진행 중입니다. |
중단됨 | 해결될 수 없는 오류로 인해 조정이 중단되었습니다. |
실패 | 복구할 수 없는 오류로 인해 배포가 조정되지 않았습니다. |
알 수 없음 | 배포의 동기화 상태를 검색할 수 없습니다. |
사용불가 |
Kustomization 또는 HelmRelease 리소스를 가져올 수 없습니다.
|
자세한 대시 보드
- GitLab 16.4에서 도입되었으며,
k8s_dashboard
라는 플래그로 비활성화되었습니다.- 에 대해 몇 명의 사용자를 위해 GitLab 16.7에서 GitLab.com에 활성화되었습니다.
플래그: 이 기능의 가용성은 피처 플래그에 의해 제어됩니다. 자세한 내용은 이력을 확인하세요. 이 기능은 테스트용으로 제공되지만 프로덕션 환경에서 사용하기에 적합하지 않습니다.
자세한 대시 보드는 다음과 같은 Kubernetes 리소스에 대한 정보를 제공합니다:
- 파드
- 서비스
- 배포
- 레플리카셋
- 스테이트풀셋
- 데몬셋
- 작업
- 크론 작업
각 대시 보드에는 상태, 네임스페이스, 연령과 함께 리소스 디렉터리이 표시됩니다. 추가 정보와 레이블, YAML 형식의 상태, 주석, 사양을 포함한 자세한 정보를 보기 위해 리소스를 선택할 수 있습니다.
이 이슈에 설명된 포커스 전환이 있어 자세한 대시 보드 작업이 일시 중단되었습니다.
자세한 대시 보드에 대한 피드백은 이슈 460279를 참조하세요.
상세 대시보드 보기
필수 조건:
- Kubernetes를 위한 GitLab 에이전트가 구성되어 있으며,
user_access
키워드를 사용하여 해당 환경의 프로젝트 또는 상위 그룹과 공유되어 있어야 합니다.
상세 대시보드는 측면 내비게이션에서 링크되어 있지 않습니다. 상세 대시보드를 보려면 다음 단계를 따르세요:
- Kubernetes 에이전트 ID를 찾습니다:
- 왼쪽 측면 표시줄에서 검색 또는 이동을 선택하여 프로젝트를 찾습니다.
- 운영 > Kubernetes 클러스터를 선택합니다.
- 액세스하려는 에이전트의 숫자 ID를 복사합니다.
-
다음 URL 중 하나로 이동하여
<agent_id>
를 교체합니다:자원 유형 URL 포드 https://myinstance.gitlab.com/-/kubernetes/<agent_id>/pods
서비스 https://myinstance.gitlab.com/-/kubernetes/<agent_id>/services
배포 https://myinstance.gitlab.com/-/kubernetes/<agent_id>/deployments
레플리카세트 https://myinstance.gitlab.com/-/kubernetes/<agent_id>/replicaSets
스테이트풀셋 https://myinstance.gitlab.com/-/kubernetes/<agent_id>/statefulSets
데몬셋 https://myinstance.gitlab.com/-/kubernetes/<agent_id>/daemonSets
작업 https://myinstance.gitlab.com/-/kubernetes/<agent_id>/jobs
크론 작업 https://myinstance.gitlab.com/-/kubernetes/<agent_id>/cronJobs
상세 대시보드가 표시됩니다.
문제 해결
Kubernetes 대시보드를 사용할 때 다음 문제가 발생할 수 있습니다.
사용자가 API 그룹에서 자원을 나열할 수 없음
Error: services is forbidden: User "gitlab:user:<user-name>" cannot list resource "<resource-name>" in API group "" at the cluster scope
라는 오류가 발생할 수 있습니다.
이 오류는 사용자가 Kubernetes RBAC에서 지정된 작업을 수행할 수 없을 때 발생합니다.
해결하려면 RBAC 구성을 확인하십시오. RBAC가 올바르게 구성된 경우 Kubernetes 관리자에게 문의하십시오.
GitLab 에이전트 드롭다운 디렉터리이 비어 있음
새로운 환경을 구성할 때 GitLab 에이전트 드롭다운 디렉터리에 항목이 표시되지 않을 수 있습니다. 심지어 Kubernetes 클러스터를 구성했더라도 말이죠.
GitLab 에이전트 드롭다운 디렉터리을 채우려면 user_access
키워드를 사용하여 에이전트에 Kubernetes 액세스를 부여하십시오.