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라는 플래그로 함께 소개되었습니다. 이 기능은 베타 상태입니다.
  • Feature flag environment_settings_to_graphqlGitLab 16.2에서 제거되었습니다.
  • Feature flags kas_user_access, kas_user_access_project, 그리고 expose_authorized_cluster_agentsGitLab 16.2에서 제거되었습니다.
  • 16.10에서 환경 세부 정보 페이지로 이동되었습니다.

Kubernetes 대시보드를 사용하여 직관적인 시각적 인터페이스로 클러스터 상태를 파악하세요. 대시보드는 CI/CD 또는 GitOps로 배포한 모든 연결된 Kubernetes 클러스터와 함께 작동합니다.

Kubernetes summary UI

대시보드 구성

  • 네임스페이스별 리소스 필터링은 GitLab 16.2에서 kubernetes_namespace_for_environment라는 플래그와 함께 소개되었습니다. 기본적으로 비활성화되어 있습니다.
  • 네임스페이스별 리소스 필터링은 GitLab 16.3에서 기본적으로 활성화되었습니다. Feature flag kubernetes_namespace_for_environment가 제거되었습니다.
  • 관련 Flux 리소스 선택은 GitLab 16.3에서 flux_resource_for_environment라는 플래그와 함께 소개되었습니다.
  • 관련 Flux 리소스 선택은 GitLab 16.4에서 일반 사용 가능해졌습니다. Feature flag flux_resource_for_environment가 제거되었습니다.

특정 환경에 대해 대시보드를 구성하세요. 기존에 있는 환경에 대해 대시보드를 구성하거나, 환경을 만들 때 추가할 수 있습니다.

요구 사항:

  • Kubernetes용 GitLab 에이전트가 구성되었으며, user_access 키워드를 사용하여 해당 환경 프로젝트나 상위 그룹과 공유되었습니다.
이미 있는 환경
  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. 운영 > 환경을 선택합니다.
  3. Kubernetes에 연결된 환경을 선택합니다.
  4. 편집을 선택합니다.
  5. Kubernetes용 GitLab 에이전트를 선택합니다.
  6. 선택적으로 Kubernetes 네임스페이스 드롭다운 목록에서 네임스페이스를 선택합니다.
  7. 선택적으로 Flux 리소스 드롭다운 목록에서 Flux 리소스를 선택합니다.
  8. 저장을 선택합니다.
새로운 환경
  1. 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
  2. 운영 > 환경을 선택합니다.
  3. 새 환경을 선택합니다.
  4. 이름 필드를 작성합니다.
  5. Kubernetes용 GitLab 에이전트를 선택합니다.
  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 리소스를 검색할 수 있어야 하며, 이를 위해 환경에 대한 네임스페이스가 구성되어 있어야 합니다.

GitLab은 환경 설정에서 Flux 리소스 드롭다운 목록에서 지정된 KustomizationHelmRelease 리소스를 검색합니다.

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

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

문제 해결

Kubernetes 대시보드를 사용할 때 다음과 같은 문제가 발생할 수 있습니다.

사용자가 API 그룹에서 리소스를 나열할 수 없음

사용자는 “services is forbidden: User “gitlab:user:" cannot list resource "" in API group "" at the cluster scope"라는 오류를받을 수 있습니다.

이 오류는 사용자가 Kubernetes RBAC에서 지정된 작업을 수행할 수 없는 경우 발생합니다.

해결하려면 RBAC 구성을 확인하십시오. RBAC가 올바르게 구성된 경우 Kubernetes 관리자에게 문의하십시오.