Kubernetes 대시보드
Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
Kubernetes 대시보드를 사용하여 직관적인 시각적 인터페이스로 클러스터 상태를 파악하세요. 특정 환경에 대시보드를 사용하도록 구성합니다. 동적 환경에 대한 대시보드를 구성하려면: 자세한 내용은 CI/CD YAML 구문 레퍼런스를 참조하세요.
히스토리
- GitLab 16.1에서
environment_settings_to_graphql,kas_user_access,kas_user_access_project,expose_authorized_cluster_agents라는 플래그와 함께 도입됨. 이 기능은 베타 버전입니다. - GitLab 16.2에서 기능 플래그
environment_settings_to_graphql이 제거됨. - GitLab 16.2에서 기능 플래그
kas_user_access,kas_user_access_project,expose_authorized_cluster_agents이 제거됨. - GitLab 16.10에서 환경 세부 정보 페이지로 이동됨.
Kubernetes 대시보드를 사용하여 직관적인 시각적 인터페이스로 클러스터 상태를 파악하세요. 대시보드는 CI/CD 또는 GitOps로 배포한 모든 연결된 Kubernetes 클러스터에서 작동합니다.

대시보드 구성#
히스토리
- GitLab 16.2에서
kubernetes_namespace_for_environment라는 플래그와 함께 네임스페이스별 리소스 필터링이 도입됨. 기본적으로 비활성화됨. - GitLab 16.3에서 네임스페이스별 리소스 필터링이 기본적으로 활성화됨. 기능 플래그
kubernetes_namespace_for_environment제거됨. - GitLab 16.3에서
flux_resource_for_environment라는 플래그와 함께 관련 Flux 리소스 선택이 도입됨. - GitLab 16.4에서 관련 Flux 리소스 선택이 일반적으로 사용 가능해짐. 기능 플래그
flux_resource_for_environment제거됨.
특정 환경에 대시보드를 사용하도록 구성합니다. 이미 존재하는 환경에 대시보드를 구성하거나, 환경을 생성할 때 추가할 수 있습니다.
사전 조건:
- Kubernetes용 GitLab 에이전트가 설치되고,
user_access가 환경의 프로젝트 또는 그 상위 그룹에 대해 구성되어 있어야 합니다.
- 상단 바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 왼쪽 사이드바에서 운영 > 환경을 선택합니다.
- Kubernetes 에이전트와 연결할 환경을 선택합니다.
- 편집을 선택합니다.
- Kubernetes용 GitLab 에이전트를 선택합니다.
- 선택 사항. Kubernetes 네임스페이스 드롭다운 목록에서 네임스페이스를 선택합니다.
- 선택 사항. Flux 리소스 드롭다운 목록에서 Flux 리소스를 선택합니다.
- 저장을 선택합니다.
- 상단 바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 왼쪽 사이드바에서 운영 > 환경을 선택합니다.
- 새 환경을 선택합니다.
- 이름 필드를 완성합니다.
- Kubernetes용 GitLab 에이전트를 선택합니다.
- 선택 사항. Kubernetes 네임스페이스 드롭다운 목록에서 네임스페이스를 선택합니다.
- 선택 사항. Flux 리소스 드롭다운 목록에서 Flux 리소스를 선택합니다.
- 저장을 선택합니다.
동적 환경에 대한 대시보드 구성#
히스토리
- GitLab 17.6에서 도입됨.
동적 환경에 대한 대시보드를 구성하려면:
.gitlab-ci.yml파일에서 에이전트를 지정합니다. 에이전트 구성 프로젝트의 전체 경로를 지정하고, 콜론과 에이전트 이름이 이어져야 합니다.
예를 들어:
deploy_review_app:
stage: deploy
script: make deploy
environment:
name: review/$CI_COMMIT_REF_SLUG
kubernetes:
agent: path/to/agent/project:agent-name
자세한 내용은 CI/CD YAML 구문 레퍼런스를 참조하세요.
대시보드 보기#
히스토리
- GitLab 16.6에서
k8s_watch_api라는 플래그와 함께 Kubernetes watch API 통합이 도입됨. 기본적으로 비활성화됨. - GitLab 16.7에서 Kubernetes watch API 통합이 기본적으로 활성화됨.
- GitLab 17.1에서 일반적으로 사용 가능해짐. 기능 플래그
k8s_watch_api제거됨.
대시보드를 보고 연결된 클러스터의 상태를 확인합니다. Kubernetes 리소스 및 Flux 조정 상태가 실시간으로 업데이트됩니다.
구성된 대시보드를 보려면:
- 상단 바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 왼쪽 사이드바에서 운영 > 환경을 선택합니다.
- Kubernetes 에이전트와 연결된 환경을 선택합니다.
- Kubernetes 개요 탭을 선택합니다.
Pod 목록이 표시됩니다. Pod를 선택하면 세부 정보를 볼 수 있습니다.
Flux 동기화 상태#
히스토리
- GitLab 16.3에서 도입됨.
- GitLab 16.3에서
flux_resource_for_environment라는 플래그와 함께 Flux 리소스 이름 커스터마이즈가 도입됨. - GitLab 16.4에서 Flux 리소스 이름 커스터마이즈가 일반적으로 사용 가능해짐. 기능 플래그
flux_resource_for_environment제거됨.
대시보드에서 Flux 배포의 동기화 상태를 검토할 수 있습니다.
배포 상태를 표시하려면 대시보드가 Kustomization 및 HelmRelease 리소스를 검색할 수 있어야 하며,
이를 위해서는 환경에 네임스페이스가 구성되어 있어야 합니다.
GitLab은 환경 설정의 Flux 리소스 드롭다운 목록에서 지정된 Kustomization 및 HelmRelease 리소스를 검색합니다.
대시보드에는 다음 상태 뱃지 중 하나가 표시됩니다:
| 상태 | 설명 |
|---|---|
| 조정됨(Reconciled) | 배포가 환경과 성공적으로 조정되었습니다. |
| 조정 중(Reconciling) | 조정이 진행 중입니다. |
| 정지됨(Stalled) | 사람의 개입 없이는 해결할 수 없는 오류로 인해 조정이 중단되었습니다. |
| 실패(Failed) | 복구할 수 없는 오류로 인해 배포가 조정되지 못했습니다. |
| 알 수 없음(Unknown) | 배포의 동기화 상태를 검색할 수 없었습니다. |
| 사용 불가(Unavailable) | Kustomization 또는 HelmRelease 리소스를 검색할 수 없었습니다. |
Flux 조정 트리거#
히스토리
- GitLab 17.3에서 도입됨.
배포를 Flux 리소스와 수동으로 조정할 수 있습니다.
조정을 트리거하려면:
- 대시보드에서 Flux 배포의 동기화 상태 뱃지를 선택합니다.
- 작업 (⋮) > 조정 트리거 ([retry])를 선택합니다.
Flux 조정 일시 중지 또는 재개#
히스토리
- GitLab 17.5에서 도입됨.
UI에서 Flux 조정을 수동으로 일시 중지하거나 재개할 수 있습니다.
조정을 일시 중지하거나 재개하려면:
- 대시보드에서 Flux 배포의 동기화 상태 뱃지를 선택합니다.
- 작업 (⋮)을 선택한 다음 다음 중 하나를 선택합니다:
- 조정 일시 중지 ([stop]) - Flux 조정을 일시 중지합니다.
- 조정 재개 ([play]) - Flux 조정을 다시 시작합니다.
Pod 로그 보기#
히스토리
- GitLab 17.2에서 도입됨.
구성된 대시보드에서 환경 전반의 문제를 빠르게 파악하고 해결하기 위해 Pod 로그를 봅니다. Pod의 각 컨테이너에 대한 로그를 볼 수 있습니다.
- 로그 보기를 선택한 다음 로그를 보려는 컨테이너를 선택합니다.
Pod 세부 정보에서도 Pod 로그를 볼 수 있습니다.
Pod 삭제#
히스토리
- GitLab 17.3에서 도입됨.
실패한 Pod를 재시작하려면 Kubernetes 대시보드에서 삭제합니다.
Pod를 삭제하려면:
- Kubernetes 개요 탭에서 삭제할 Pod를 찾습니다.
- 작업 (⋮) > Pod 삭제 ([remove])를 선택합니다.
Pod 세부 정보에서도 Pod를 삭제할 수 있습니다.
상세 대시보드#
히스토리
- GitLab 16.4에서
k8s_dashboard라는 플래그와 함께 도입됨. 기본적으로 비활성화됨. - GitLab 16.7에서 일부 사용자를 위해 GitLab.com에서 활성화됨.
이 기능의 가용성은 기능 플래그로 제어됩니다. 자세한 내용은 히스토리를 참조하세요. 이 기능은 테스트용으로 사용 가능하지만 프로덕션 사용에는 준비되지 않았습니다.
상세 대시보드는 다음 Kubernetes 리소스에 대한 정보를 제공합니다:
- Pod
- 서비스
- 배포
- ReplicaSet
- StatefulSet
- DaemonSet
- 잡
- CronJob
각 대시보드에는 리소스의 상태, 네임스페이스, 사용 기간이 포함된 목록이 표시됩니다. 리소스를 선택하면 레이블, YAML 형식의 상태, 주석 및 사양을 포함한 자세한 정보가 있는 드로어가 열립니다.

이 이슈에 설명된 집중 변경으로 인해 상세 대시보드 작업이 일시 중지되었습니다.
상세 대시보드에 대한 피드백을 제공하려면 이슈 460279를 참조하세요.
상세 대시보드 보기#
사전 조건:
- Kubernetes용 GitLab 에이전트가 구성되고,
user_access키워드를 사용하여 환경의 프로젝트 또는 그 상위 그룹과 공유되어 있어야 합니다.
상세 대시보드는 사이드바 탐색에서 연결되어 있지 않습니다. 상세 대시보드를 보려면:
-
Kubernetes 에이전트 ID를 찾습니다:
- 상단 바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 운영 > Kubernetes 클러스터를 선택합니다.
- 액세스하려는 에이전트의 숫자 ID를 복사합니다.
-
다음 URL 중 하나로 이동하여
<agent_id>를 에이전트 ID로 교체합니다:리소스 유형 URL Pod https://myinstance.gitlab.com/-/kubernetes/<agent_id>/pods서비스 https://myinstance.gitlab.com/-/kubernetes/<agent_id>/services배포 https://myinstance.gitlab.com/-/kubernetes/<agent_id>/deploymentsReplicaSet https://myinstance.gitlab.com/-/kubernetes/<agent_id>/replicaSetsStatefulSet https://myinstance.gitlab.com/-/kubernetes/<agent_id>/statefulSetsDaemonSet https://myinstance.gitlab.com/-/kubernetes/<agent_id>/daemonSets잡 https://myinstance.gitlab.com/-/kubernetes/<agent_id>/jobsCronJob 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 에이전트 드롭다운 목록이 비어 있음#
새 환경을 구성할 때 Kubernetes 클러스터를 구성한 경우에도 GitLab 에이전트 드롭다운 목록이 비어 있을 수 있습니다.
GitLab 에이전트 드롭다운 목록을 채우려면 user_access 키워드로 에이전트 Kubernetes 액세스 권한을 부여합니다.
