InfoGrab Docs

Kubernetes 대시보드

요약

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 클러스터에서 작동합니다.

Kubernetes Pod 및 서비스 상태를 표시하는 대시보드.

대시보드 구성#

히스토리
  • 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가 환경의 프로젝트 또는 그 상위 그룹에 대해 구성되어 있어야 합니다.
  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. 저장을 선택합니다.

동적 환경에 대한 대시보드 구성#

히스토리

동적 환경에 대한 대시보드를 구성하려면:

  • .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 구문 레퍼런스를 참조하세요.

대시보드 보기#

히스토리

대시보드를 보고 연결된 클러스터의 상태를 확인합니다. Kubernetes 리소스 및 Flux 조정 상태가 실시간으로 업데이트됩니다.

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

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

Pod 목록이 표시됩니다. Pod를 선택하면 세부 정보를 볼 수 있습니다.

Flux 동기화 상태#

히스토리
  • GitLab 16.3에서 도입됨.
  • GitLab 16.3에서 flux_resource_for_environment라는 플래그와 함께 Flux 리소스 이름 커스터마이즈가 도입됨.
  • GitLab 16.4에서 Flux 리소스 이름 커스터마이즈가 일반적으로 사용 가능해짐. 기능 플래그 flux_resource_for_environment 제거됨.

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

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

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

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

Flux 조정 트리거#

히스토리

배포를 Flux 리소스와 수동으로 조정할 수 있습니다.

조정을 트리거하려면:

  1. 대시보드에서 Flux 배포의 동기화 상태 뱃지를 선택합니다.
  2. 작업 (⋮) > 조정 트리거 ([retry])를 선택합니다.

Flux 조정 일시 중지 또는 재개#

히스토리

UI에서 Flux 조정을 수동으로 일시 중지하거나 재개할 수 있습니다.

조정을 일시 중지하거나 재개하려면:

  1. 대시보드에서 Flux 배포의 동기화 상태 뱃지를 선택합니다.
  2. 작업 (⋮)을 선택한 다음 다음 중 하나를 선택합니다:
    • 조정 일시 중지 ([stop]) - Flux 조정을 일시 중지합니다.
    • 조정 재개 ([play]) - Flux 조정을 다시 시작합니다.

Pod 로그 보기#

히스토리

구성된 대시보드에서 환경 전반의 문제를 빠르게 파악하고 해결하기 위해 Pod 로그를 봅니다. Pod의 각 컨테이너에 대한 로그를 볼 수 있습니다.

  • 로그 보기를 선택한 다음 로그를 보려는 컨테이너를 선택합니다.

Pod 세부 정보에서도 Pod 로그를 볼 수 있습니다.

Pod 삭제#

히스토리

실패한 Pod를 재시작하려면 Kubernetes 대시보드에서 삭제합니다.

Pod를 삭제하려면:

  1. Kubernetes 개요 탭에서 삭제할 Pod를 찾습니다.
  2. 작업 (⋮) > Pod 삭제 ([remove])를 선택합니다.

Pod 세부 정보에서도 Pod를 삭제할 수 있습니다.

상세 대시보드#

히스토리
Feature flag

이 기능의 가용성은 기능 플래그로 제어됩니다. 자세한 내용은 히스토리를 참조하세요. 이 기능은 테스트용으로 사용 가능하지만 프로덕션 사용에는 준비되지 않았습니다.

상세 대시보드는 다음 Kubernetes 리소스에 대한 정보를 제공합니다:

  • Pod
  • 서비스
  • 배포
  • ReplicaSet
  • StatefulSet
  • DaemonSet
  • CronJob

각 대시보드에는 리소스의 상태, 네임스페이스, 사용 기간이 포함된 목록이 표시됩니다. 리소스를 선택하면 레이블, YAML 형식의 상태, 주석 및 사양을 포함한 자세한 정보가 있는 드로어가 열립니다.

연결된 클러스터에 대한 자세한 정보가 있는 대시보드.

이 이슈에 설명된 집중 변경으로 인해 상세 대시보드 작업이 일시 중지되었습니다.

상세 대시보드에 대한 피드백을 제공하려면 이슈 460279를 참조하세요.

상세 대시보드 보기#

사전 조건:

  • Kubernetes용 GitLab 에이전트가 구성되고, user_access 키워드를 사용하여 환경의 프로젝트 또는 그 상위 그룹과 공유되어 있어야 합니다.

상세 대시보드는 사이드바 탐색에서 연결되어 있지 않습니다. 상세 대시보드를 보려면:

  1. Kubernetes 에이전트 ID를 찾습니다:

    1. 상단 바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
    2. 운영 > Kubernetes 클러스터를 선택합니다.
    3. 액세스하려는 에이전트의 숫자 ID를 복사합니다.
  2. 다음 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>/deployments
    ReplicaSet https://myinstance.gitlab.com/-/kubernetes/<agent_id>/replicaSets
    StatefulSet https://myinstance.gitlab.com/-/kubernetes/<agent_id>/statefulSets
    DaemonSet https://myinstance.gitlab.com/-/kubernetes/<agent_id>/daemonSets
    https://myinstance.gitlab.com/-/kubernetes/<agent_id>/jobs
    CronJob 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 액세스 권한을 부여합니다.

Kubernetes 대시보드

Tier: Free, Premium, Ultimate
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 클러스터에서 작동합니다.

Kubernetes Pod 및 서비스 상태를 표시하는 대시보드.

대시보드 구성#

히스토리
  • 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가 환경의 프로젝트 또는 그 상위 그룹에 대해 구성되어 있어야 합니다.
  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. 저장을 선택합니다.

동적 환경에 대한 대시보드 구성#

히스토리

동적 환경에 대한 대시보드를 구성하려면:

  • .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 구문 레퍼런스를 참조하세요.

대시보드 보기#

히스토리

대시보드를 보고 연결된 클러스터의 상태를 확인합니다. Kubernetes 리소스 및 Flux 조정 상태가 실시간으로 업데이트됩니다.

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

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

Pod 목록이 표시됩니다. Pod를 선택하면 세부 정보를 볼 수 있습니다.

Flux 동기화 상태#

히스토리
  • GitLab 16.3에서 도입됨.
  • GitLab 16.3에서 flux_resource_for_environment라는 플래그와 함께 Flux 리소스 이름 커스터마이즈가 도입됨.
  • GitLab 16.4에서 Flux 리소스 이름 커스터마이즈가 일반적으로 사용 가능해짐. 기능 플래그 flux_resource_for_environment 제거됨.

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

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

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

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

Flux 조정 트리거#

히스토리

배포를 Flux 리소스와 수동으로 조정할 수 있습니다.

조정을 트리거하려면:

  1. 대시보드에서 Flux 배포의 동기화 상태 뱃지를 선택합니다.
  2. 작업 (⋮) > 조정 트리거 ([retry])를 선택합니다.

Flux 조정 일시 중지 또는 재개#

히스토리

UI에서 Flux 조정을 수동으로 일시 중지하거나 재개할 수 있습니다.

조정을 일시 중지하거나 재개하려면:

  1. 대시보드에서 Flux 배포의 동기화 상태 뱃지를 선택합니다.
  2. 작업 (⋮)을 선택한 다음 다음 중 하나를 선택합니다:
    • 조정 일시 중지 ([stop]) - Flux 조정을 일시 중지합니다.
    • 조정 재개 ([play]) - Flux 조정을 다시 시작합니다.

Pod 로그 보기#

히스토리

구성된 대시보드에서 환경 전반의 문제를 빠르게 파악하고 해결하기 위해 Pod 로그를 봅니다. Pod의 각 컨테이너에 대한 로그를 볼 수 있습니다.

  • 로그 보기를 선택한 다음 로그를 보려는 컨테이너를 선택합니다.

Pod 세부 정보에서도 Pod 로그를 볼 수 있습니다.

Pod 삭제#

히스토리

실패한 Pod를 재시작하려면 Kubernetes 대시보드에서 삭제합니다.

Pod를 삭제하려면:

  1. Kubernetes 개요 탭에서 삭제할 Pod를 찾습니다.
  2. 작업 (⋮) > Pod 삭제 ([remove])를 선택합니다.

Pod 세부 정보에서도 Pod를 삭제할 수 있습니다.

상세 대시보드#

히스토리
Feature flag

이 기능의 가용성은 기능 플래그로 제어됩니다. 자세한 내용은 히스토리를 참조하세요. 이 기능은 테스트용으로 사용 가능하지만 프로덕션 사용에는 준비되지 않았습니다.

상세 대시보드는 다음 Kubernetes 리소스에 대한 정보를 제공합니다:

  • Pod
  • 서비스
  • 배포
  • ReplicaSet
  • StatefulSet
  • DaemonSet
  • CronJob

각 대시보드에는 리소스의 상태, 네임스페이스, 사용 기간이 포함된 목록이 표시됩니다. 리소스를 선택하면 레이블, YAML 형식의 상태, 주석 및 사양을 포함한 자세한 정보가 있는 드로어가 열립니다.

연결된 클러스터에 대한 자세한 정보가 있는 대시보드.

이 이슈에 설명된 집중 변경으로 인해 상세 대시보드 작업이 일시 중지되었습니다.

상세 대시보드에 대한 피드백을 제공하려면 이슈 460279를 참조하세요.

상세 대시보드 보기#

사전 조건:

  • Kubernetes용 GitLab 에이전트가 구성되고, user_access 키워드를 사용하여 환경의 프로젝트 또는 그 상위 그룹과 공유되어 있어야 합니다.

상세 대시보드는 사이드바 탐색에서 연결되어 있지 않습니다. 상세 대시보드를 보려면:

  1. Kubernetes 에이전트 ID를 찾습니다:

    1. 상단 바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
    2. 운영 > Kubernetes 클러스터를 선택합니다.
    3. 액세스하려는 에이전트의 숫자 ID를 복사합니다.
  2. 다음 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>/deployments
    ReplicaSet https://myinstance.gitlab.com/-/kubernetes/<agent_id>/replicaSets
    StatefulSet https://myinstance.gitlab.com/-/kubernetes/<agent_id>/statefulSets
    DaemonSet https://myinstance.gitlab.com/-/kubernetes/<agent_id>/daemonSets
    https://myinstance.gitlab.com/-/kubernetes/<agent_id>/jobs
    CronJob 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 액세스 권한을 부여합니다.