Kubernetes 대시보드
Status: Beta
- 도입됨 GitLab 16.1에서,
environment_settings_to_graphql
,kas_user_access
,kas_user_access_project
, 및expose_authorized_cluster_agents
라는 플래그와 함께. 이 기능은 베타입니다.- 기능 플래그
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
가 환경의 프로젝트 또는 상위 그룹에 대해 구성되어 있어야 합니다.
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 작업 > 환경을 선택합니다.
- Kubernetes 에이전트와 연결할 환경을 선택합니다.
- 편집을 선택합니다.
- Kubernetes용 GitLab 에이전트를 선택합니다.
- 선택 사항. Kubernetes 네임스페이스 드롭다운 목록에서 네임스페이스를 선택합니다.
- 선택 사항. Flux 리소스 드롭다운 목록에서 Flux 리소스를 선택합니다.
- 저장을 선택합니다.
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
- 작업 > 환경을 선택합니다.
- 새 환경을 선택합니다.
- 이름 필드를 작성합니다.
- Kubernetes용 GitLab 에이전트를 선택합니다.
- 선택 사항. Kubernetes 네임스페이스 드롭다운 목록에서 네임스페이스를 선택합니다.
- 선택 사항. Flux 리소스 드롭다운 목록에서 Flux 리소스를 선택합니다.
- 저장을 선택합니다.
대시보드 보기
- Kubernetes watch API 통합은 GitLab 16.6에서 도입되었습니다. 기본적으로 비활성화되어 있습니다.
- Kubernetes watch API 통합은 GitLab 16.7에서 기본적으로 활성화되었습니다.
- GitLab 17.1에서 일반적으로 사용 가능. 기능 플래그
k8s_watch_api
가 제거되었습니다.
대시보드를 보려면 연결된 클러스터의 상태를 확인하세요.
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
리소스를 검색할 수 있어야 하며,
이를 위해 환경에 대한 네임스페이스가 구성되어야 합니다.
GitLab은 환경 설정의 Flux 리소스 드롭다운 목록에 지정된 Kustomization
및 HelmRelease
리소스를 검색합니다.
대시보드는 다음 중 하나의 상태 배지를 표시합니다:
상태 | 설명 |
---|---|
조정 완료 | 배포가 환경과 성공적으로 조정되었습니다. |
조정 중 | 조정이 진행 중입니다. |
멈춤 | 조정이 사람의 개입 없이는 해결할 수 없는 오류로 인해 정지되었습니다. |
실패 | 배포가 복구할 수 없는 오류로 인해 조정할 수 없었습니다. |
알 수 없음 | 배포의 동기화 상태를 검색할 수 없었습니다. |
사용 불가 |
Kustomization 또는 HelmRelease 리소스를 검색할 수 없었습니다. |
Flux 조정 트리거
- GitLab 17.3에서 도입되었습니다.
배포를 Flux 리소스와 수동으로 조정할 수 있습니다.
조정을 트리거하려면:
-
대시보드에서 Flux 배포의 동기화 상태 배지를 선택합니다.
-
작업 () > 조정 트리거 ()를 선택합니다.
Flux 조정 일시 중지 또는 재개
- 도입됨 GitLab 17.5에서.
UI에서 Flux 조정을 수동으로 일시 중지하거나 재개할 수 있습니다.
조정을 일시 중지하거나 재개하려면:
-
대시보드에서 Flux 배포의 동기화 상태 배지를 선택합니다.
-
작업 ()을 선택한 다음 다음 중 하나를 선택합니다:
-
조정 일시 중지 ()를 선택하여 Flux 조정을 일시 중지합니다.
-
조정 재개 ()를 선택하여 Flux 조정을 재시작합니다.
-
포드 로그 보기
- 도입됨 GitLab 17.2에서.
구성된 대시보드에서 환경 전반의 문제를 신속하게 이해하고 문제를 해결하려고 할 때 포드 로그를 확인하세요. 포드의 각 컨테이너에 대한 로그를 볼 수 있습니다.
- 로그 보기를 선택한 다음 로그를 보려는 컨테이너를 선택합니다.
포드 세부정보에서 포드 로그를 볼 수도 있습니다.
포드 삭제
- 도입됨 GitLab 17.3에서.
실패한 포드를 재시작하려면 Kubernetes 대시보드에서 삭제합니다.
포드를 삭제하려면:
-
Kubernetes 개요 탭에서 삭제하려는 포드를 찾습니다.
-
작업 () > 포드 삭제 ()를 선택합니다.
포드 세부정보에서 포드를 삭제할 수도 있습니다.
상세 대시보드
- 도입됨 GitLab 16.4에서,
k8s_dashboard
라는 플래그가 있는 경우. 기본적으로 비활성화되어 있습니다.- GitLab.com에서 활성화됨 GitLab 16.7에서 일부 사용자에게.
플래그: 이 기능의 사용 가능성은 기능 플래그에 의해 제어됩니다.
자세한 내용은 기록을 참조하십시오.
이 기능은 테스트를 위한 것이지만 프로덕션 사용을 위해 준비되지 않았습니다.
상세 대시보드는 다음 Kubernetes 리소스에 대한 정보를 제공합니다:
- 포드
- 서비스
- 배포
- ReplicaSets
- StatefulSets
- DaemonSets
- 작업
- CronJobs
각 대시보드는 리소스의 상태, 네임스페이스 및 연령과 함께 리소스 목록을 표시합니다.
리소스를 선택하여 더 많은 정보(레이블 및 YAML 형식의 상태, 주석 및 스펙 포함)를 가진 드로어를 엽니다.
이 문제에서 설명한 초점 이동으로 인해 상세 대시보드 작업이 일시 중지되었습니다.
상세 대시보드에 대한 피드백을 제공하려면 문제 460279를 참조하세요.
상세 대시보드 보기
전제 조건:
- Kubernetes용 GitLab 에이전트가 구성되어 환경의 프로젝트 또는 해당 상위 그룹과 공유되어 있어야 하며
user_access
키워드를 사용해야 합니다.
상세 대시보드는 사이드바 내비게이션에서 링크되지 않습니다.
상세 대시보드를 보려면:
-
Kubernetes ID를 찾습니다:
-
왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
-
운영 > Kubernetes 클러스터를 선택합니다.
-
접근하려는 에이전트의 숫자 ID를 복사합니다.
-
-
다음 URL 중 하나로 이동하며
<agent_id>
를 귀하의 에이전트 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
ReplicaSets https://myinstance.gitlab.com/-/kubernetes/<agent_id>/replicaSets
StatefulSets https://myinstance.gitlab.com/-/kubernetes/<agent_id>/statefulSets
DaemonSets https://myinstance.gitlab.com/-/kubernetes/<agent_id>/daemonSets
작업 https://myinstance.gitlab.com/-/kubernetes/<agent_id>/jobs
CronJobs 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 액세스를 부여하세요.