---
title: "Cluster Monitoring"
slug: "cluster-monitoring"
tags: ["kubernetes", "Ncloud Kubernetes Service"]
updated: 2026-07-23T09:02:32Z
published: 2026-07-23T09:02:32Z
canonical: "guide-fin.ncloud-docs.com/cluster-monitoring"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://guide-fin.ncloud-docs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Cluster Monitoring

Cluster Monitoring은 Kubernetes 클러스터내 리소스들에 대한 사용량을 수집하여 Cloud Insight 상품으로 전달합니다. 수집된 데이터는 네이버 클라우드 플랫폼 콘솔의 Ncloud Kubernetes Service 내 Grafana 대시 보드 혹은 Cloud Insight 대시 보드에서 확인할 수 있습니다. 이를 통해 별도의 리소스 모니터링 도구 없이도 사용량을 확인할 수 있습니다.

          참고

          

- Cluster Monitoring은 Kubernetes 1.23 버전 이상부터 제공합니다.
- 1.23 이전 버전의 클러스터는 업그레이드 기능을 이용하여 요구되는 버전을 충족 후 사용할 수 있습니다.
- Sub Account가 Cluster Monitoring을 사용하려면 액션 `View/getClusterDetail`에 대해 리소스 유형 `Cluster/*` 권한이 필요합니다.

## 지원되는 버전

| Feature＼Kubernetes Version | 1.22 | 1.23+ |
| --- | --- | --- |
| Kubernetes Cluster Monitoring | 미지원 | 지원 |

## 이용 요금

Cloud Insight에서 발생하는 이용 요금을 따릅니다. Cloud Insight의 이용 요금에 대한 자세한 기준은 네이버 클라우드 플랫폼 포털의 **[서비스 > Cloud Insight](https://www.fin-ncloud.com/product/management/cloudInsight)** 를 참고해 주십시오.

## 데이터 보관 기간

Cloud Insight의 데이터 보관 기간을 따릅니다. 데이터 보관 기간에 대한 자세한 내용은 [Cloud Insight 사용준비](/docs/cloudinsight-spec)의 **데이터 보관 기간** 을 참조해 주십시오.

| 집계주기 (Interval) | 데이터 보관기간 (오늘로부터) | 권장 데이터 조회 기간 |
| --- | --- | --- |
| Min1 | 8일 이내 | 1일 |
| Min5 | 1개월 이내 | 1주일 |
| Min30 | 3개월 이내 | 1개월 |
| Hour2 | 6개월 이내 | 1개월 |
| Day1 | 1년 이내 | 1개월 |

## 수집 대상

          참고

          

`kube-system` namespace 내 pod들에 대한 모니터링은 지원하지 않습니다.

Kubernetes Cluster Monitoring는 아래 정의된 `type`에 해당하는 리소스들을 수집합니다.

| 타입 | 설명 |
| --- | --- |
| CpuMem | pod의 CPU/MEM 리소스 사용량 |
| Network | pod의 Network In/Out rate |
| Disk | pod의 Blockstorage 리소스 사용량 |
| NodeAvailability | 클러스터내 노드 가용량 |
| PodStatus | pod의 상태 |

### Type: CpuMem

#### Dimensions

| Dimensions | Description |
| --- | --- |
| type | CpuMem으로 정의 |
| clusterUUID | cluster UUID |
| nodeInstanceNo | pod가 위치한 node의 instanceNo |
| namespace | pod가 위치한 namespace |
| controller | pod를 생성한 controller |
| pod | pod 이름 |

#### Metrics

| Metrics | Description |
| --- | --- |
| real_cpu | pod cpu 사용량 |
| real_mem | pod mem 사용량 |

### Type: Network

#### Dimensions

| Dimenions | Description |
| --- | --- |
| type | Network로 정의 |
| clusterUUID | cluster UUID |
| nodeInstanceNo | pod가 위치한 node의 instance id |
| namespace | pod가 위치한 namespace |
| controller | pod를 생성한 controller |
| pod | pod 이름 |
| interface | 네트워크 In/Out 이 발생한 interface |

#### Metrics

| Metrics | Description |
| --- | --- |
| network_rx_bytes | 수신한 바이트 수 |
| network_tx_bytes | 송신한 바이트 수 |

### Type: Disk

#### Dimensions

| Dimensions | Description |
| --- | --- |
| type | Disk로 정의 |
| clusterUUID | cluster UUID |
| nodeInstanceNo | pod가 위치한 node의 instanceNo |
| namespace | pod가 위치한 namespace |
| controller | pod를 생성한 controller |
| pod | pod 이름 |
| pvc | pvc 이름 |

#### Metrics

| Metrics | Description |
| --- | --- |
| available_bytes | 가용한 디스크 바이트 수 |
| capacity_bytes | 총 디스크 바이트 수 |
| used_bytes | 사용한 디스크 바이트 수 |
| disk_used_ratio | 가용한 디스크 비율, 0~1사이의 값 |

### Type: NodeAvailability

#### Dimensions

| Dimensions | Description |
| --- | --- |
| type | NodeAvailability로 정의 |
| clusterUUID | cluster UUID |

#### Metrics

| Metrics | Description |
| --- | --- |
| node_total_count | 클러스터 내 노드의 총 개수 |
| node_ready_count | 클러스터 내 ready인 노드의 수 |
| node_not_ready_count | 클러스터 내 not ready인 노드의 수 |
| node_available_ratio | node_ready_count / node_total_count, 0~1사이의 값 |

### Type: PodStatus

#### Dimensions

| Dimensions | Description |
| --- | --- |
| type | PodStatus로 정의 |
| clusterUUID | cluster UUID |
| namespace | pod가 위치한 namespace |
| controller | pod를 생성한 controller |

#### Metrics

| Metrics | Description |
| --- | --- |
| pod_phase_pending | controller에 속한 pod들 중 phase가 `pending`인 개수 |
| pod_phase_running | controller에 속한 pod들 중 phase가 `running`인 개수 |
| pod_phase_succeeded | controller에 속한 pod들 중 phase가 `succeeded`인 개수 |
| pod_phase_failed | controller에 속한 pod들 중 phase가 `failed`인 개수 |
| pod_available_ratio | controller에 속한 pod들 중 이용 가능한 Pod의 비율, 0~1사이의 값, `ReplicaSet`, `DaemonSet`, `StatefulSet` 지원 |
| pod_restart_count | controller에 속한 pod들의 restart count 수의 총합 |

## Grafana

Grafana는 시계열 데이터에 대한 시각화를 제공해주는 도구입니다. Cloud Insight로 전송된 데이터를 Grafana 대시보드에서 확인할 수 있습니다. 네이버 클라우드 플랫폼 콘솔의 Ncloud Kubernetes Service 서비스 내 클러스터 하위 목록의 Monitoring 항목에서 Grafana 링크를 확인할 수 있습니다.

          참고

          

Grafana 대시보드 이용에 대한 요금은 발생하지 않습니다.

### Overview

보유하고 있는 클러스터의 목록을 확인할 수 있습니다. 다음의 버튼으로 클러스터 내 리소스를 모니터링할 수 있습니다.

- Nodes: 클러스터 내 워커노드들에 대한 Availability와 CPU/Memory/Disk/Network 리소스 사용량을 조회할 수 있습니다.
- Pods: 클러스터 내 Pod들에 대한 CPU/Memory/Disk/Network 리소스 사용량을 조회할 수 있습니다.

### Alerts

클러스터 내 리소스들에 대한 임계치를 설정하고, 조건이 충족하였을 때 알람을 수신 할 수 있도록 Event Rule을 설정할 수 있습니다. 설정한 값은 Cloud Insight 서비스에 저장되며, Cloud Insight 서비스의 Event Rule에서도 확인할 수 있습니다. **Alerts** 탭에서 다음 내용을 확인할 수 있습니다.

- **Cloud Insight Event Rule Group**
  - 선택된 Cluster에 대한 Event Rule Group을 생성/삭제/조회할 수 있습니다.
  - Event Rule Group 하위에 Metric에 대한 임계치 조건들을 설정할 수 있습니다.
  - 아래의 Product Type을 지원합니다.
    - Ncloud kubernetes service

생성된 Cloud Insight Event Rule Group을 클릭하면 다음의 세부 그룹들을 확인할 수 있습니다.

- **Monitor Group**
  - 모니터링 하기 위한 지표들이 생성되는 리소스 그룹입니다.
- **Metric Group**
  - Monitor Group에서 생성된 지표들에 대해 알람 발생을 위한 조건들을 설정한 값들 입니다.
  - `New Metric` 버튼을 클릭하여, 조건을 등록할 수 있습니다.
- **Notification Group**
  - Metric Group에서 설정한 알람이 발생한 경우, 이를 통보할 대상자 그룹입니다.
  - `New Recipient` 버튼을 클릭하여, 통보 대상자를 등록할 수 있습니다.

          참고

          

Notification Group 내 통보 대상자는 네이버 클라우드 플랫폼 콘솔 내 **Notification Recipient** 서비스에서 관리할 수 있습니다. Ncloud Kubernetes Service의 **Alerts** 메뉴에서는 지원하지 않습니다.

Metric Group 내 등록할 수 있는 지표들로 다음 사항을 고려할 수 있습니다.

**지표 예시**

- Deployment와 같은 Controller가 특정 개수의 Pod를 스케쥴링을 요청하였으나, admission controller 등의 영향으로 수행되지 않아 기대 비율 이하의 Pod 수가 구동되는 경우
  - pod_available_ratio < 0.7 로 설정하여, desired pod 개수 대비 available pod 개수의 비율이 70%미만이면 알람이 발생하도록 설정
- Deployment와 같은 Controller가 생성 요청한 Pod들 중 Running 상태가 아닌 것의 개수가 증가하는 경우
  - pod_available_ratio < 0.7 로 설정하여, desired pod 개수 대비 available pod 개수의 비율이 70%미만이면 알람이 발생하도록 설정
  - pod_phase_pending >=1 로 설정하여, phase가 Pending인 pod가 하나 이상 있는 경우 알람을 발생하도록 설정
- 노드의 상태가 Ready가 아닌 경우
  - node_available_ratio < 0.8 로 설정하여, 전체 노드 중 Ready인 노드의 비율이 80% 미만이면 알람을 발생하도록 설정
  - node_not_ready_count >=1 로 설정하여, 전체 노드 중 Ready가 아닌 노드가 있다면 알람을 발생하도록 설정
- Crash 상태의 Pod수가 증가하는 경우
  - pod_restart_count >= 10 으로 설정하여, pod가 특정 횟수 이상 kubelet 등에 의해 재시작 되었다면 알람을 발생하도록 설정
- Cronjob 등의 작업이 실패하여 Pod의 Phase가 Failed인 것이 발생한 경우
  - pod_phase_failed >=1 으로 설정하여, Job 등이 실패한 경우 알람을 발생하도록 설정
