Kubernetes 대시보드

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated 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 클러스터와 작동합니다.

Kubernetes 요약 UI

대시보드 구성

  • 네임스페이스별 리소스 필터링이 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 키워드를 사용하여 해당 환경의 프로젝트나 상위 그룹과 공유되어 있어야 합니다.
이미 있는 환경
  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. 운영 > 환경을 선택합니다.
  3. Kubernetes에 연결할 환경을 선택합니다.
  4. 편집을 선택합니다.
  5. GitLab Kubernetes 에이전트를 선택합니다.
  6. Kubernetes 네임스페이스 드롭다운 디렉터리에서 네임스페이스를 선택합니다(선택 사항).
  7. Flux 리소스 드롭다운 디렉터리에서 Flux 리소스를 선택합니다(선택 사항).
  8. 저장을 선택합니다.
환경이 없는 경우
  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. 운영 > 환경을 선택합니다.
  3. 새 환경을 선택합니다.
  4. 이름 필드를 완성합니다.
  5. GitLab Kubernetes 에이전트를 선택합니다.
  6. Kubernetes 네임스페이스 드롭다운 디렉터리에서 네임스페이스를 선택합니다(선택 사항).
  7. Flux 리소스 드롭다운 디렉터리에서 Flux 리소스를 선택합니다(선택 사항).
  8. 저장을 선택합니다.

대시보드 보기

  • Kubernetes watch API 통합이 GitLab 16.6에서 도입되었으며 k8s_watch_api라는 플래그로 지정되었습니다. 기본 설정으로 비활성화됩니다.
  • Kubernetes watch API 통합이 GitLab 16.7에서 기본 설정으로 활성화됩니다.

대시보드를 보고 연결된 클러스터의 상태를 확인합니다. k8s_watch_api 피처 플래그가 활성화된 경우 Kubernetes 리소스와 Flux 조정 업데이트의 상태를 실시간으로 확인할 수 있습니다.

구성된 대시보드를 보려면:

  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. 운영 > 환경을 선택합니다.
  3. Kubernetes 에이전트와 연관된 환경을 선택합니다.
  4. Kubernetes 개요 탭을 선택합니다.

Flux 동기화 상태

  • GitLab 16.3에 도입되었습니다.
  • Flux 리소스의 이름을 사용자화하는 기능이 GitLab 16.3에서 도입되었으며 flux_resource_for_environment라는 플래그로 지정되었습니다.
  • Flux 리소스의 이름을 사용자화하는 기능이 GitLab 16.4에서 일반 사용 가능하게 되었습니다. 피처 플래그 flux_resource_for_environment가 제거되었습니다.

대시보드에서 Flux 배포의 동기화 상태를 검토할 수 있습니다. 배포 상태를 표시하려면 대시보드가 환경에 대해 구성된 KustomizationHelmRelease 리소스를 가져올 수 있어야 하며, 이를 위해 환경 설정에서 네임스페이스를 구성해야 합니다.

대시보드에는 다음과 같은 상태 뱃지 중 하나가 표시됩니다:

상태 설명
조정됨 배포가 환경과 성공적으로 조정되었습니다.
조정 중 조정이 진행 중입니다.
중단됨 해결할 수 없는 오류로 인해 조정이 중단되었습니다.
실패 복구할 수 없는 오류로 인해 배포가 조정되지 않았습니다.
알 수 없음 배포의 동기화 상태를 검색할 수 없습니다.
사용 불가 Kustomization 또는 HelmRelease 리소스를 가져올 수 없습니다.

문제 해결

대시 보드를 사용할 때 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 관리자에게 문의하십시오.