쿠버네티스 지표
쿠버네티스에서 수집되는 지표 일부는 서버 모니터링, 애플리케이션과 동일합니다.
컨테이너(container
) 지표
container
카테고리는 컨테이너의 pod에 설정된 모든 사용자 정의 라벨들을 태그로 수집합니다.
- 대상: 클러스터 프로젝트, 네임스페이스 프로젝트
- 수집 간격: 5초
- 통계 데이터: 5분
Tags
Tags | Type | Unit | Description |
---|---|---|---|
agentOid | - | - | 노드 에이전트 고유 ID(고유값) |
agentPcode | - | - | 프로젝트 코드(고유값) |
command | - | - | 실행 명령어 |
containerId | - | - | 컨테이너 ID(고유값) |
containerKey | - | - | 컨테이너 Key |
created | - | - | 컨테이너가 생성된 TimeStamp |
image | - | - | 컨테이너 이미지명 |
imageHash | - | - | 이미지 해시 값 |
imageId | - | - | 이미지 ID |
k8s-app | - | - | Pod의 레이블 k8s-app에 대한 값 |
microOid | - | - | 컨테이너에 설치된 와탭 APM 에이전트의 고유 ID |
name | - | - | 컨테이너 이름 |
namespace | - | - | 컨테이너가 소속된 네임스페이스 |
namespaceHash | - | - | 컨테이너가 소속된 네임스페이스 해시 값 |
okind | - | - | 컨테이너에 설치된 와탭 APM 에이전트에 지정한 OKIND 고유 ID |
okindName | - | - | 컨테이너에 설치된 와탭 APM 에이전트에 지정한 OKIND 이름 |
oname | - | - | 컨테이너에 설치된 와탭 APM 에이전트 이름 |
onode | - | - | 컨테이너가 작동 중인 노드 에이전트의 고유 ID |
onodeName | - | - | 컨테이너가 작동 중인 노드 이름 |
podHash | - | - | 컨테이너의 Pod 해시 값 |
podName | - | - | 컨테이너의 Pod 이름 |
replicaSetHash | - | - | 컨테이너의 레플리카셋 해시 값 |
replicaSetName | - | - | 컨테이너의 레플리카셋 이름 |
whatap_project | - | - | 컨테이너가 속한 와탭 프로젝트 이름 |
Fields
Field | Type | Unit | Shortname/Name/Description |
---|---|---|---|
blkio_rbps | - | byte | IoReadBytes |
Container Block I/O Read Byte | |||
컨테이너 전체 블럭 디바이스의 초당 읽은 바이트 합 | |||
blkio_riops | - | count | IoReadIops |
Container Block I/O Read IOPS | |||
컨테이너 전체 블럭 디바이스의 초당 읽은 건수 합 | |||
blkio_wbps | - | byte | IoWriteBytes |
Container Block I/O Write Byte | |||
컨테이너 전체 블럭 디바이스의 초당 쓴 바이트 합 | |||
blkio_wiops | - | count | IoWriteIops |
Container Block I/O Write IOPS | |||
컨테이너 전체 블럭 디바이스의 초당 쓴 건수 합 | |||
cpu_per_quota | - | percent | CpuByLimit |
Container CPU Usage by Limit(%) | |||
CPU Limit 기준 CPU 전체 사용률 | |||
cpu_quota | - | millicores | CpuLimit |
Container CPU Limit (core) | |||
컨테이너 CPU Limit 할당량 - Limit 미설정인 경우 컨테이너가 작동 중인 해당 노드의 CPU 전체 코어가 밀리코어 단위로 표시됨 | |||
cpu_quota_percent | - | percent | CpuLimitByNode |
Container CPU Limit by Node(%) | |||
노드 CPU 대비 컨테이너 CPU Limit 할당량 - Limit 미설정인 경우 컨테이너가 작동 중인 해당 노드의 CPU 전체 코어가 퍼센트로 표시됨 | |||
cpu_sys | - | percent | CpuSysByNode |
Container CPU Sys Usage by Node(%) | |||
노드 CPU 대비 컨테이너 CPU System 사용률 | |||
cpu_throttledperiods | - | count | CpuThrottledCnt |
Container CPU Throttling Count | |||
컨테이너 CPU Throttled 건수 | |||
cpu_throttledtime | - | nanosecond(ns) | CpuThrottledTime |
Container CPU Throttling Time | |||
컨테이너 CPU Throttled 시간 | |||
cpu_total | - | percent | CpuByNode |
Container CPU Usage by Node(%) | |||
노드 CPU 대비 컨테이너 CPU 사용률 | |||
cpu_total_milli | - | millicores | CpuTotUsage |
Container CPU Usage (millicore) | |||
컨테이너 CPU 사용량 | |||
cpu_user | - | percent | CpuUserByNode |
Container CPU User Usage by Node(%) | |||
노드 CPU 대비 컨테이너 CPU User 사용률 | |||
cpu_request | - | millicores | CpuRequest |
Container CPU Request (core) | |||
컨테이너 CPU 요청 | |||
cpu_per_request | - | percent | CpuByRequest |
Container CPU Usage by Request(%) | |||
컨테이너 CPU 요청 대비 사용률 = cpu_total_milli / cpu_request * 100 | |||
mem_failcnt | - | count | MemFailCnt |
Container Memory Failure Count | |||
컨테이너 메모리 Limit 도달 건수 | |||
mem_limit | - | byte | MemLimit |
Container Memory Limit (byte) | |||
컨테이너 메모리 Limit 크기 | |||
mem_maxusage | - | byte | MemMaxUsage |
Container Memory Max Usage (byte) | |||
컨테이너 메모리 최대 사용량 기록값 - 자세한 내용은 하단 안내를 참고하세요. | |||
mem_percent | - | percent | MemWsByLimit |
Container Memory Working Set by Limit(%) | |||
컨테이너 메모리 Limit 기준 working set 사용량 = mem_working_set / mem_limit * 100 | |||
mem_totalcache | - | byte | MemTotCache |
Container Memory Total Cache (byte) | |||
컨테이너 전체 캐시 크기 | |||
mem_totalpgfault | - | count | MemTotPageFaultCnt |
Container Memory Total Page Fault Count | |||
컨테이너 Page Fault 횟수 | |||
mem_totalrss | - | byte | MemTotRss |
Container Memory Total RSS (byte) | |||
컨테이너 RSS 메모리 전체 크기 | |||
mem_totalrss_percent | - | percent | MemTotRssByLimit |
Container Memory Total RSS by Limit (%) | |||
컨테이너 RSS 메모리 전체 사용률 | |||
mem_totalunevictable | - | byte | MemTotUnevictable |
Container Memory Total Unevictable (byte) | |||
컨테이너 Unevictable Memory 전체 크기 | |||
mem_usage | - | byte | MemUsage |
Container Memory Usage (byte) | |||
컨테이너 메모리 사용량 | |||
mem_working_set | - | byte | MemWs |
Container Memory Working Set (byte) | |||
컨테이너 메모리 working set = mem_usage - inactive file | |||
mem_working_set_percent | - | percent | MemWsByLimit |
Container Memory Working Set by Limit (%) | |||
컨테이너 메모리 Limit 기준 working set 사용량 = mem_working_set / mem_limit * 100 | |||
mem_request | - | byte | MemRequest |
Container Memory Request (byte) | |||
컨테이너 메모리 Request 크기 | |||
mem_per_request | - | percent | MemWsByRequest |
Container Memory Working Set by Request (%) | |||
컨테이너 메모리 Request 기준 working set 사용량 = mem_working_set / mem_request * 100 | |||
network_rbps | - | b yte | NetRxBytes |
Container Network Receive Byte | |||
컨테이너 전체 블럭 디바이스의 초당 읽기 바이트 합 | |||
network_rdropped | - | byte | NetRxDropped |
Container Network Receive Dropped | |||
컨테이너 네트워크 수신 dropped 건수 | |||
network_rerror | - | byte | NetRxError |
Container Network Receive Error | |||
컨테이너 네트워크 수신 에러 건수 | |||
network_riops | - | byte | NetRxIops |
Container Network Receive IOPS | |||
컨테이너 네트워크 수신 건수 | |||
network_wbps | - | byte | NetTxByes |
Container Network Transmit Byte | |||
컨테이너 네트워크 송신 데이터 크기 | |||
network_wdropped | - | count | NetTxDropped |
Container Network Transmit Dropped | |||
컨테이너 네트워크 송신 dropped 건수 | |||
network_werror | - | count | NetTxError |
Container Network Transmit Error | |||
컨테이너 네트워크 송신 에러 건수 | |||
network_wiops | - | count | NetTxIops |
Container Network Transmit IOPS | |||
컨테이너 네트워크 송신 건수 | |||
node_cpu | - | percent | ConNodeCpu |
Container Work Node CPU Usage (%) | |||
컨테이너가 실행 중인 노드의 CPU 사용량 | |||
node_mem | - | percent | ConNodeMem |
Container Work Node Memory Usage (%) | |||
컨테이너가 실행 중인 노드의 메모리 사용량 | |||
phase | string | - | Pod 라이프사이클 ① PENDING ② RUNNING ③ SUCCEEDED ④ FAILED ⑤ UNKNOWN |
restart_count | integer | - | ConRestartCnt |
Container Restart Count | |||
컨테이너 재시작 횟수 | |||
state | integer | - | ConState |
Container Current State | |||
컨테이너 상태 코드 ① RUNNING = 114 ② PAUSE = 112 ③ RESTARTING = 101 ④ OOMKILLED = 111 ⑤ DEAD = 100 ⑥ WAITING = 119 | |||
status | string | - | ConStatus |
Container Current Status | |||
컨테이너 상태 정보 ① running 상태: uptime 정보 표시 ② waiting/terminated 상태: 상태에 대한 reason 정보 표시 |
mem_maxusage
는 컨테이너가 실행되는 동안 기록된 메모리 최대 사용량을 나타냅니다. 그러나 Linux 커널 버전이 5.19보다 낮은 경우, 이 지표의 원본 데이터가 지원되지 않을 수 있습니다. 이러한 경우 해당 값이 0으로 표시될 수 있습니다. 해당 지표를 정상적으로 수집하기 위해서는 Linux 커널 버전을 5.19 이상으로 업데이트해야 합니다.
쿠버네티스 노드(kube_node
) 지표
kube_node
카테고리는 노드에 설정된 모든 사용자 정의 라벨들을 태그로 수집합니다.
- 대상: 클러스터 프로젝트, 네임스페이스 프로젝트
- 수집 간격: 5초
- 통계 데이터: 5분, 1시간
Tags
Tags | Type | Unit | Description |
---|---|---|---|
nodeName | - | - | 노드 이름 |
Fields
Field | Type | Unit | Description |
---|---|---|---|
allocatable_cpu | - | millicores | 노드 할당 가능한 CPU량 |
allocatable_memory | - | byte | 노드 할당 가능한 메모리량 |
allocatable_pods | integer | - | 노드 할당 가능한 Pod 수 |
limit_cpu | - | millicores | 노드 CPU Limit 합계 |
limit_memory | - | byte | 노드 메모리 Limit 합계 |
pods | integer | - | 노드 Pod 총 개수 |
request_cpu | - | millicores | 노드 CPU Request 합계 |
request_memory | - | byte | 노드 메모리 Request 합계 |
쿠버네티스 이벤트(kube_event
) 지표
kube_event
카테고리는 클러스터 프로젝트의 경우 클러스터 전체를 대상으로 데이터를 수집하며 네임스페이스 프로젝트는 해당 네임스페이스에서 발생한 이벤트에 대해서만 수집합니다.
- 대상: 클러스터 프로젝트, 네임스페이스 프로젝트
- 수집 간격: 5초
- 통계 데이터: 5분, 1시간
Tags
Tags | Type | Unit | Description |
---|---|---|---|
field_path | - | - | Field Path |
kind | - | - | 이벤트가 발생한 오브젝트 종류 |
name | - | - | 이벤트가 발생한 쿠버네티스 오브젝트명 |
namespace | - | - | 이벤트가 발생한 네임스페이스명 |
reason | - | - | 이벤트 발생 사유 |
type | - | - | 이벤트 유형 - Warning 또는 Normal |
uid | - | - | UID - 이벤트가 발생한 오브젝트 |
Fields
Field | Type | Unit | Description |
---|---|---|---|
action | string | - | 액션 이름 |
count | - | count | 이벤트 발생 건수 |
event_time | Integer | - | 이벤트 최초 발생 TimeStamp |
first_timestamp | Integer | - | 이벤트 최초 발생 시간 |
last_timestamp | Integer | - | 이벤트 마지막 발생 시간 |
message | string | - | 이벤트 메시지 |
reasonFiled | string | - | 이벤트 Reason |
reporting_component | string | - | 현재 이벤트를 보고하는 컴포넌트 |
reporting_instance | string | - | 현재 이벤트를 보고하는 인스턴스 |
series_last_observed_time | Integer | - | series last observed time |
쿠버네티스 클러스터(kube_stat
) 지표
kube_stat
카테고리는 클러스터 프로젝트의 경우 클러스터 전체 대상으로 수집하고 네임스페이스 프로젝트는 해당 네임스페이스와 연관된 오브젝트를 대상으로만 수집합니다.
- 대상: 클러스터 프로젝트, 네임스페이스 프로젝트
- 수집 간격: 5초
- 통계 데이터: 5분, 1시간
Tags
Tags | Type | Unit | Description |
---|---|---|---|
name | - | - | kube_stat(고정 값) |
Fields
Field | Type | Unit | Description |
---|---|---|---|
alloctable_cpu | - | millicores | 클러스터 전체 코어 수(클러스터 프로젝트 Only) |
alloctable_ephemeral-storage | - | byte | 클러스터 전체 할당 가능한 ephemeral storage(클러스터 프로젝트 Only) |
alloctable_hugepages-1gi | - | byte | 클러스터 전체 할당 가능한 hugepages-1Gi(클러스터 프로젝트 Only) |
alloctable_hugepages-2mi | - | byte | 클러스터 전체 할당 가능한 hugepages-2Mi(클러스터 프로젝트 Only) |
alloctable_memory | - | byte | 클러스터 전체 할당 가능한 메모리(클러스터 프로젝트 Only) |
alloctable_pods | Integer | - | 할당 가능한 Pod 수 |
available_pod | Integer | - | Phase가 Running 상태인 Pod의 수 |
desired_pod | Integer | - | metadata.ownerReferences 없이 배포된 Pod 수와 쿠버네티스 오브젝트(ReplicaSet, Daemonset, StatefulSet)에 정의된 Desired Pod 수의 합 |
kubectl get pods -A 로 조회한 Pod 수와 동일 | |||
nodes | Integer | - | 노드 수 |
pod_phase_Pending | Integer | - | Pending 상태 Pod 수 |
pod_phase_Running | Integer | - | Running 상태 Pod 수 |
running_containers | Integer | - | Running 컨테이너 수 |
stopped_containers | Integer | - | Stopped 컨테이너 수 |
total_available_cpu | Integer | - | 할당 가능한 CPU 총합 |
total_available_memory | Integer | - | 할당 가능한 Memory 총합 |
total_limit_cpu | - | millicores | Limit CPU 총합 |
total_limit_memory | - | byte | Limit Memory 총합 |
total_request_cpu | - | millicores | Request CPU 총합 |
total_request_memory | - | byte | Request Memory 총합 |
unavailable_pod | Integer | - | Phase가 Running 상태가 아닌(Pending, Failed, Succedded) Pod 수 |
waiting_containers | Integer | - | Waiting Container 수 |
Pod(kube_pod
) 지표
kube_pod
카테고리는 Pod에 설정된 모든 사용자 정의 라벨들을 태그로 수집합니다.
- 대상: 마스터(클러스터) 프로젝트, 네임스페이스 프로젝트
- 수집 간격: 5초
- 통계 데이터: 5분
Tags
Tags | Type | Unit | Description |
---|---|---|---|
agentOid | - | - | 노드 에이전트 고유 ID(고유값) |
agentPcode | - | - | 프로젝트 코드(고유값) |
command | - | - | 실행 명령어 |
containerIds | - | - | Pod에 속해있는 컨테이너 ID |
containerIdsCount | - | - | containerIds의 개수 |
containerKeys | - | - | Pod 에 속해있는 컨테이너 ID 의 해시 값 |
containerKeysCount | - | - | containerKeys의 개수 |
DaemonSet | - | - | Pod의 DaemonSet 이름 |
Deployment | - | - | Deployment |
k8s-app | - | - | Pod의 레이블 k8s-app에 대한 값 |
microOid | - | - | Pod의 컨테이너 내부 애플리케이션에서 실행중인 에이전트의 ID |
microOids | - | - | Pod 안의 복수개 컨테이너 내부 애플리케이션에서 실행 중인 에이전트의 복수개 ID |
microOidsCount | - | - | microOids의 개수 |
name | - | - | Pod 이름 |
onames | - | - | Pod의 컨테이너 내부 애플리케이션에서 실행중인 에이전트의 명칭 |
onamesCount | - | - | onames의 개수 |
podName | - | - | Pod 이름 |
namespace | - | - | Pod가 소속된 네임스페이스 |
namespaceHash | - | - | Pod가 소속된 네임스페이스 해시 값 |
replicaSetHash | - | - | Pod의 ReplicaSet 해시 값 |
replicaSetName | - | - | Pod의 ReplicaSet 이름 |
whatap_project | - | - | Pod가 속한 와탭 프로젝트 이름 |
Fields
Field | Type | Unit | Shortname, Name, Description |
---|---|---|---|
blkio_rbps | - | byte | IoReadBytes |
Pod Block I/O Read Byte | |||
Pod 전체 블럭 디바이스의 초당 읽은 바이트 합 | |||
blkio_riops | - | count | IoReadIops |
Pod Block I/O Read IOPS | |||
Pod 전체 블럭 디바이스의 초당 읽은 건수 합 | |||
blkio_wbps | - | byte | IoWriteBytes |
Pod Block I/O Write Byte | |||
Pod 전체 블럭 디바이스의 초당 쓴 바이트 합 | |||
blkio_wiops | - | count | IoWriteIops |
Pod Block I/O Write IOPS | |||
Pod 전체 블럭 디바이스의 초당 쓴 건수 합 | |||
cpu_per_limit | - | precent | CpuByLimit |
Pod CPU Usage by Limit (%) | |||
CPU Limit 기준 CPU 전체 사용률 | |||
cpu_per_request | - | precent | CpuByRequest |
Pod CPU Usage by Request (%) | |||
CPU Request 기준 CPU 전체 사용률 | |||
cpu_quota_percent | - | precent | CpuLimitByNode |
Pod CPU Limit by Node (%) | |||
노드 CPU 대비 Pod CPU Limit 할당량 - Limit 미설정인 경우 Pod가 작동 중인 해당 노드의 CPU 전체 코어가 퍼센트로 표시됨 | |||
cpu_sys | - | precent | CpuSysByNode |
Pod CPU Sys Usage by Node (%) | |||
노드 CPU 대비 Pod CPU System 사용률 | |||
cpu_throttledperiods | - | count | CpuThrottledCnt |
Pod CPU Throttling Count | |||
Pod CPU Throttled 건수 | |||
cpu_throttledtime | - | nanosecond(ns) | CpuThrottledTime |
Pod CPU Throttling Time | |||
Pod CPU Throttled 시간 | |||
cpu_total | - | percent | CpuByNode |
Pod CPU Usage by Node (%) | |||
노드 CPU 대비 Pod CPU 사용률 | |||
cpu_total_milli | - | millicores | CpuTotUsage |
Pod CPU Usage (millicore) | |||
Pod CPU 사용량 | |||
cpu_user | - | percent | CpuUserByNode |
Pod CPU User Usage by Node (%) | |||
노드 CPU 대비 Pod CPU User 사용률 | |||
cpu_request | - | millicores | CpuRequest |
Pod CPU Request (core) | |||
Pod CPU 요청 | |||
cpu_per_request | - | precent | CpuByRequest |
Pod CPU Usage by Request (%) | |||
Pod CPU 요청 대비 사용률 = cpu_total_milli / cpu_request * 100 | |||
mem_totalcache | - | byte | MemTotCache |
Pod Memory Total Cache (byte) | |||
Pod 전체 캐시 크기 | |||
mem_totalpgfault | - | count | MemTotPageFaultCnt |
Pod Memory Total Page Fault Count | |||
Pod Page Fault 횟수 | |||
mem_totalrss | - | byte | MemTotRss |
Pod Memory Total RSS (byte) | |||
Pod RSS 메모리 전체 크기 | |||
mem_totalrss_percent | - | precent | MemTotRssByLimit |
Pod Memory Total RSS by Limit (%) | |||
Pod RSS 메모리 전체 사용률 | |||
mem_totalunevictable | - | byte | MemTotUnevictable |
Pod Memory Total Unevictable (byte) | |||
Pod Unevictable Memory 전체 크기 | |||
mem_usage | - | byte | MemUsage |
Pod Memory Usage (byte) | |||
Pod 메모리 사용량 | |||
mem_working_set | - | byte | MemWs |
Pod Memory Working Set (byte) | |||
Pod 메모리 working set = mem_usage - inactive file | |||
memory_request | - | byte | MemRequest |
Pod Memory Request (byte) | |||
Pod 메모리 요청량 | |||
memory_limit | - | byte | MemLimit |
Pod Memory Limit (byte) | |||
Pod 메모리 Limit 할당량 | |||
memory_per_request | - | precent | MemByRequest |
Pod Memory Working Set By Request (%) | |||
Pod 메모리 요청량 기준 Working Set 사용량 | |||
memory_per_limit | - | precent | MemByLimit |
Pod MMemory Working Set By Limit (%) | |||
Pod 메모리 Limit 기준 Working Set 사용량 | |||
network_rbps | - | byte | NetRxBytes |
Pod Network Receive Byte | |||
Pod 전체 블럭 디바이스의 초당 읽기 바이트 합 | |||
network_rdropped | - | byte | NetRxDropped |
Pod Network Receive Dropped | |||
Pod 네트워크 수신 dropped 건수 | |||
network_rerror | - | byte | NetRxError |
Pod Network Receive Error | |||
od 네트워크 수신 에러 건수 | |||
network_riops | - | byte | NetRxIops |
Pod Network Receive IOPS | |||
Pod 네트워크 수신 건수 | |||
network_wbps | - | byte | NetTxByes |
Pod Network Transmit Byte | |||
Pod 네트워크 송신 데이터 크기 | |||
network_wdropped | - | count | NetTxDropped |
Pod Network Transmit Dropped | |||
Pod 네트워크 송신 dropped 건수 | |||
network_werror | - | count | NetTxError |
Pod Network Transmit Error | |||
Pod 네트워크 송신 에러 건수 | |||
network_wiops | - | count | NetTxIops |
Pod Network Transmit IOPS | |||
Pod 네트워크 송신 건수 | |||
phase | string | - | Phase |
Pod Current Phase | |||
Pod 라이프사이클 ① PENDING ② RUNNING ③ SUCCEEDED ④ FAILED ⑤ UNKNOWN |
다음 필드는 내부용으로 예약되었습니다.
Field | Type | Unit | Description |
---|---|---|---|
kube_sless_normal | - | - | 쿠버네티스 정보성 이벤트 발생 건수 |
kube_sless_warning | - | - | 쿠버네티스 경고 이벤트 발생 건수 |
micro_sful_critical | - | - | apm 심각 상태 기반 이벤트 발생 건수 |
micro_sful_info | - | - | apm 정보성 상태 기반 이벤트 발생 건수 |
micro_sful_warning | - | - | apm 경고 상태 기반 이벤트 발생 건수 |
micro_sless_critical | - | - | apm 심각 무상태 이벤트 발생 건수 |
micro_sless_info | - | - | apm 정보성 무상태 이벤트 발생 건수 |
micro_sless_warning | - | - | apm 경고 무상태 이벤트 발생 건수 |
sful_critical | - | - | 메트릭스 심각 상태 기반 이벤트 발생 건수 |
sful_info | - | - | 메트릭스 정보성 상태 기반 이벤트 발생 건수 |
sful_warning | - | - | 메트릭스 경고 상태 기반 이벤트 발생 건수 |
sless_critical | - | - | 메트릭스 심각 무상태 이벤트 발생 건수 |
sless_info | - | - | 메트릭스 정보성 무상태 이벤트 발생 건수 |
sless_warning | - | - | 메트릭스 경고 무상태 이벤트 발생 건수 |
쿠버네티스 Pod 통계(kube_pod_stat
) 지표
kube_pod_stat
카테고리 클러스터 프로젝트는 클러스터 전체를 대상으로 데이터를 수집하며 네임스페이스 프로젝트는 해당 네임스페이스에 소속된 Pod에 대해서만 수집합니다.
- 대상: 클러스터 프로젝트, 네임스페이스 프로젝트
- 수집 간격: 5초
- 통계 데이터: 5분, 1시간
Tags
Tags | Type | Unit | Description |
---|---|---|---|
kind | - | - | 유형 - 클러스터 프로젝트의 경우 cluster 고정 값을 가지며 네임스페이스 프로젝트의 경우 Deployment 또는 ReplicaSet만 수집 |
name | - | - | 쿠버네티스 자원 이름 - 클러스터 프로젝트는 name 값이 없으며 네임스페이스 프로젝트는 Deployment 또는 ReplicaSet의 이름 |
Fields
Field | Type | Unit | Description |
---|---|---|---|
available_pod | integer | - | Phase가 Running 상태인 Pod의 수 |
desired_pod | integer | - | metadata.ownerReferences 없이 배포된 Pod 수와 쿠버네티스 오브젝트(ReplicaSet, Daemonset, StatefulSet)에 정의된 Desired Pod 수의 합 |
kubectl get pods -A 로 조회한 Pod 수와 동일 | |||
limit_cpu | - | millicores | CPU Limit 사용량 |
limit_memory | - | byte | Memory Limit 사용량 |
request_cpu | - | millicores | CPU Request 사용량 |
request_memory | - | byte | Memory Request 사용량 |
running_container | integer | - | Running Container 수 |
stopped_container | integer | - | Stopped Container 수 |
waiting_container | integer | - | Waiting Container 수 |
쿠버네티스 Horizontal Pod Autoscaler(HPA)(kube_hpa_stat
) 지표
와탭에서 사용하는 ClusterRole에 HPA가 추가되어야 지표 수집이 시작됩니다.
- 대상: 클러스터 프로젝트
- 수집 간격: 5초
- 통계 데이터: 5분, 1시간
Tags
Tags | Type | Unit | Description |
---|---|---|---|
name | - | - | HPA 이름 |
Fields
Field | Type | Unit | Description |
---|---|---|---|
currentReplicas | integer | count | 현재 레플리카 수 |
desiredReplicas | integer | count | Desired 레플리카 수 |
lastScaleTime | integer | count | 마지막으로 스케일이 변경된 TimeStamp |
maxReplicas | integer | count | 최대 레플리카 수 |
minReplicas | integer | count | 최소 레플리카 수 |
프로세스(kube_process
) 지표
쿠버네티스 에이전트 1.7.12 버전 이상이 필요합니다. 에이전트 업데이트에 대한 자세한 내용은 다음 문서를 참조하세요.
노드에 존재하는 쿠버네티스 관련 프로세스를 모니터링할 때 수집됩니다.
-
대상: 클러스터 프로젝트, 네임스페이스 프로젝트
-
수집 간격: 5초
-
통계 데이터: 5분
Tags
Tags | Type | Unit | Description |
---|---|---|---|
ppid | string | - | 부모 프로세스 ID /proc/[pid]/status::PPid |
pid | string | - | 프로세스 ID /proc/[pid]/status::Pid |
cmd1 | string | - | 명령어 이름 /proc/[pid]/status::Name |
cmd2 | string | - | 명령어 라인(전체 명령어와 인자) /proc/[pid]/cmdline |
user | string | - | 사용자 ID 또는 사용자 이름 /proc/[pid]/status::Uid |
onodeName | string | - | 프로세스의 노드 이름 컨테이너 시스템 환경변수 ( NODE_IP ) |
createTime | TimeStamp | - | 프로세스 시작 시간 /proc/uptime 통해 계산된 필드 |
Fields
Field | Type | Unit | Description |
---|---|---|---|
cpu | float | percent(%) | CPU 사용률 - /proc/[pid]/stat 을 통해 계산된 필드 |
memory | float | percent(%) | 메모리 사용률 - /proc/[pid]/statm 을 통해 계산된 필드 |
rss | long | byte | 실제 메모리 사용량 (Resident Set Size) - /proc/[pid]/status 의 VmRSS |
uid | string | - | 사용자 ID 또는 사용자 이름 - /proc/[pid]/status 의 Uid |
state | string | - | 프로세스 상태 - /proc/[pid]/status 의 State |
sharedMemory | long | byte | 공유 메모리 크기 - /proc/[pid]/statm 을 통해 계산된 필드 |
openFileDescriptors | integer | - | 프로세스가 열어둔 파일 디스크립터 수 - /proc/[pid]/fd 를 통해 계산된 필드 |
vmSize | long | byte | 가상 메모리 크기 (Virtual Memory Size) - /proc/[pid]/status 의 VmSize |
threads | integer | - | 프로세스가 생성한 스레드 수 - /proc/[pid]/status 의 Threads |
Kubernetes 환경의 리눅스 프로세스 상태
리눅스에서 /proc/[pid]/status 파일의 State
필드가 프로세스의 현재 상태를 표시합니다. 각 상태 값의 의미는 다음과 같습니다.
Code | Description |
---|---|
R (Running) | 실행 중 - 프로세스가 실행 중이거나 실행될 준비가 되어 있는 상태 |
S (Sleeping) | 대기 중 - 인터럽트 가능한 수면 상태로, 대기 중이며 이벤트를 기다리고 있는 상태 |
D (Disk Sleep) | 디스크 수면 - 인터럽트 불가능한 수면 상태로, 일반적으로 I/O 작업을 기다리는 중인 상태 |
R (Zombie) | 좀비 상태 - 프로세스가 종료되었으나 아직 부모 프로세스가 종료 상태를 수집하지 않은 상태 |
T (Stopped) | 중지 - 프로세스가 작업 제어 신호에 의해 중지된 상태 (SIGSTOP 등) 또는 디버거에 의해 중지된 상태 |
t (Tracing stop) | 추적 중지 - 디버거에 의해 추적 중인 상태 (소문자 t로 표시됨) |
X (Dead) | 죽은 상태 - 프로세스가 죽은 상태 (일반적으로 보지 않음) |
x (Dead) | 죽은 상태 - 커널 쓰레드의 죽은 상태 (일반적으로 보지 않음) |
K (WakeKill) | 강제 종료 - 깨우기 신호를 무시하고 즉시 죽은 상태 |
W (Waking) | 깨우기 중 - 깨우기 신호를 받아 깨워지는 중인 상태 |
I (Idle) | 유휴 상태 - 커널 스레드가 유휴 상태 (일반적으로 유저 공간 프로세스에는 보이지 않음) |
Kubernetes는 컨테이너와 노드의 리소스를 효율적으로 관리하기 때문에, 컨테이너 내부에서 실행되는 다수의 프로세스가 실제로 대기 상태를 유지합니다. 이에 따라 대부분의 프로세스는 Sleeping
상태일 수 있습니다.
에이전트 상태(agent_status_summary
) 지표
에이전트 상태와 관련한 지표를 10초 간격으로 수집한 카테고리입니다.
Fields
Field | Type | Unit | Description |
---|---|---|---|
inActTime | - | milliseconds(ms) | 에이전트가 비활성화된 상태로 유지된 시간 |
isActive | Boolean | - | 현재 에이전트의 활성 상태 여부 (true / false ) |
isRestart | Boolean | - | 에이전트가 재시작되었는지 여부 (true / false ) |
lastActTime | - | milliseconds(ms) | 마지막으로 에이전트가 활성화된 상태의 시각 - 0 : 비활성화된 경우 |
oid | - | - | 프로젝트에 포함된 각 에이전트의 고유 식별자 |
oType | - | - | 에이전트 종류 - 1 : 애플리케이션 에이전트 - 2 : subType 참조 |
startTime | - | milliseconds(ms) | 에이전트가 시작된 시점을 나타내는 타임스탬프 |
subType | - | - | 에이전트 종류 - 9 : 노드 에이전트 - 10 : 마스터 에이전트 |
Ingress(kube_ingress
) 지표
쿠버네티스 에이전트 1.7.13 버전 이상이 필요합니다. 에이전트 업데이트에 대한 자세한 내용은 다음 문서를 참조하세요.
Ingress 리소스에 대한 메타 데이터와 관련 정보를 모니터링할 때 수집됩니다.
-
대상: 클러스터 프로젝트, 네임스페이스 프로젝트
-
수집 간격: 30초
-
통계 데이터: 5분
Tags
Tags | Type | Unit | Description |
---|---|---|---|
ingressUid | string | - | Ingress 리소스의 고유 ID |
ingressName | string | - | Ingress 리소스의 이름 |
ingressNamespace | string | - | Ingress 리소스의 네임스페이스 |
creationTimeMillis | Long | milliseconds(ms) | Ingress 리소스 생성 시간 |
ingressClassName | string | - | Ingress 클래스 이름 |
ingressLoadBalancerIps | List | - | Ingress 로드밸런서 IP |
Fields
Field | Type | Unit | Description |
---|---|---|---|
host | List | - | Ingress 리소스가 수신하는 호스트 이름 ( * 인 경우 모든 호스트에 대해 적용됨) |
path | List | - | 특정 호스트 하위에서 요청 경로 |
backendServiceName | List | - | 백엔드로 전달되는 서비스의 이름 |
backendServicePort | List | - | 백엔드로 전달되는 포트 번호 |
backendServiceUid | List | - | 백엔드로 전달되는 서비스의 uid |
pathType | List | - | 경로 일치 방식 (예, Prefix , Exact ) |
쿠버네티스 크론잡(kube_cronjob
) 지표
디플로이먼트 리소스에 대한 메타데이터와 상태 정보를 태그로 수집합니다.
Tags
Tags | Type | Unit | Description |
---|---|---|---|
cronJobName | string | - | CronJob의 이름 (metadata.name ) |
namespace | string | - | CronJob이 속한 네임스페이스 (metadata.namespace ) |
cronJobUid | string | - | CronJob의 UID (metadata.uid ) |
Fields
Field | Type | Unit | Description |
---|---|---|---|
lastScheduleTime | string | - | CronJob이 마지막으로 스케줄된 시간 (status.lastScheduleTime ) |
lastSuccessfulTime | string | - | CronJob이 마지막으로 성공한 시간 (status.lastSuccessfulTime ) |
cronJobSpecSchedule | string | - | CronJob의 스케줄 주기 (spec.schedule , 예: "0 */5 * * *" ) |
successfulJobsHistoryLimit | integer | count | 성공한 Job을 보존하는 최대 개수 (spec.successfulJobsHistoryLimit ) |
failedJobsHistoryLimit | integer | count | 실패한 Job을 보존하는 최대 개수 (spec.failedJobsHistoryLimit ) |
concurrencyPolicy | string | - | 동시 실행 정책 (Allow , Forbid , Replace ) (spec.concurrencyPolicy ) |
startingDeadlineSeconds | integer | time(seconds) | 스케줄된 시간이 지난 후에도 Job을 실행할 수 있는 최대 지연 시간 (spec.startingDeadlineSeconds ) |
쿠버네티스 디플로이먼트(kube_deployment
) 지표
디플로이먼트 리소스에 대한 메타데이터와 상태 정보를 태그로 수집합니다.
Tags
Tags | Type | Unit | Description |
---|---|---|---|
deployName | String | - | 디플로이먼트의 이름 (metadata.name ) |
namespace | String | - | 디플로이먼트가 속한 네임스페이스 (metadata.namespace ) |
deployUid | String | - | 디플로이먼트의 UID (metadata.uid ) |
Fields
Field | Type | Unit | Description |
---|---|---|---|
deployReadyReplicas | integer | count | 준비(Ready) 상태인 파드 수 (status.readyReplicas ) |
deployTotalReplicas | integer | count | 설정된 전체 파드 수 (spec.replicas ) |
deployUpdatedReplicas | integer | count | 최신 버전으로 갱신된 파드 수 (status.updatedReplicas ) |
deployAvailableReplicas | integer | count | 사용 가능한 상태의 파드 수 (status.availableReplicas ) |
deployUnavailableReplicas | integer | count | 사용 불가능한 상태의 파드 수 (status.unavailableReplicas ) |
deployCreationTime | integer | milliseconds(ms) | 디플로이먼트 생성 시각 (Unix Epoch milliseconds, metadata.creationTimestamp ) |
deploySelector | string | - | 디플로이먼트의 선택자 라벨 (spec.selector.matchLabels ) |
deployStrategy | string | - | 디플로이먼트의 배포 전략 (spec.strategy.type , 예: RollingUpdate , Recreate ) |
쿠버네티스 데몬셋(kube_daemonset
) 지표
데몬셋 리소스에 대한 메타데이터와 상태 정보를 태그로 수집합니다.
Tags
Tags | Type | Unit | Description |
---|---|---|---|
daemonSetName | string | - | DaemonSet의 이름 (metadata.name ) |
namespace | string | - | DaemonSet이 소속된 네임스페이스 (metadata.namespace ) |
daemonSetUid | string | - | DaemonSet의 UID (metadata.uid ) |
creationTime | integer | milliseconds(ms) | DaemonSet 생성 시각 (metadata.creationTimestamp ) |
age | string | - | DaemonSet 생성 이후 경과 시간 |
Fields
Field | Type | Unit | Description |
---|---|---|---|
currentNumberScheduled | integer | count | 현재 스케줄된 파드 수 (status.currentNumberScheduled ) |
desiredNumberScheduled | integer | count | 기대하는 파드 수 (status.desiredNumberScheduled ) |
numberReady | integer | count | Ready 상태인 파드 수 (status.numberReady ) |
numberAvailable | integer | count | 사용 가능한 파드 수 (status.numberAvailable ) |
numberMisscheduled | integer | count | 잘못 스케줄된 파드 수 (status.numberMisscheduled ) |
updatedNumberScheduled | integer | count | 업데이트된 파드 수 (status.updatedNumberScheduled ) |
daemonSetSelector | string | - | Selector 라벨 (spec.selector.matchLabels ) |
쿠버네티스 레플리카셋(kube_replicaset
) 지표
레플리카셋(ReplicaSet) 리소스에 대한 메타데이터와 상태 정보를 태그로 수집합니다.
Tags
Tags | Type | Unit | Description |
---|---|---|---|
replicaSetName | string | - | ReplicaSet의 이름 (metadata.name ) |
namespace | string | - | ReplicaSet이 소속된 네임스페이스 (metadata.namespace ) |
replicaSetUid | string | - | ReplicaSet의 UID (metadata.uid ) |
ownerKind | string | - | 상위 오브젝트 종류 (예: Deployment ) (metadata.ownerReferences.kind ) |
ownerName | string | - | 상위 오브젝트 이름 (metadata.ownerReferences.name ) |
ownerUid | string | - | 상위 오브젝트 UID (metadata.ownerReferences.uid ) |
creationTime | integer | milliseconds(ms) | ReplicaSet 생성 시각 (metadata.creationTimestamp ) |
age | string | - | ReplicaSet 생성 이후 경과 시간 |
Fields
Field | Type | Unit | Description |
---|---|---|---|
replicaSetReplicas | integer | count | 설정된 파드 수 (spec.replicas ) |
replicaSetReadyReplicas | integer | count | Ready 상태 파드 수 (status.readyReplicas ) |
replicaSetAvailableReplicas | integer | count | 사용 가능한 파드 수 (status.availableReplicas ) |
replicaSetSelector | string | - | Selector 라벨 (spec.selector.matchLabels ) |
쿠버네티스 스테이트풀셋(kube_statefulSet
) 지표
스테이트풀셋(StatefulSet) 리소스에 대한 메타데이터와 상태 정보를 태그로 수집합니다.
Tags
Tags | Type | Unit | Description |
---|---|---|---|
statefulSetName | string | - | StatefulSet의 이름 (metadata.name ) |
namespace | string | - | StatefulSet이 소속된 네임스페이스 (metadata.namespace ) |
statefulSetUid | string | - | StatefulSet의 UID (metadata.uid ) |
creationTime | integer | milliseconds(ms) | StatefulSet 생성 시각 (metadata.creationTimestamp ) |
age | string | - | StatefulSet 생성 이후 경과 시간 |
Fields
Field | Type | Unit | Description |
---|---|---|---|
replicas | integer | count | 설정된 파드 수 (spec.replicas ) |
readyReplicas | integer | count | Ready 상태 파드 수 (status.readyReplicas ) |
currentReplicas | integer | count | 현재 생성된 파드 수 (status.currentReplicas ) |
updatedReplicas | integer | count | 업데이트된 파드 수 (status.updatedReplicas ) |
statefulSetSelector | string | - | Selector 라벨 (spec.selector.matchLabels ) |
쿠버네티스 잡(kube_job
) 지표
디플로이먼트 리소스에 대한 메타데이터와 상태 정보를 태그로 수집합니다.
Tags
Tags | Type | Unit | Description |
---|---|---|---|
jobName | string | - | Job의 이름 (metadata.name ) |
namespace | string | - | Job이 소속된 네임스페이스 (metadata.namespace ) |
jobUid | string | - | Job의 UID (metadata.uid ) |
ownerKind | string | - | 상위 오브젝트의 종류 (예: CronJob ) |
ownerName | string | - | 상위 오브젝트의 이름 |
ownerUid | string | - | 상위 오브젝트의 UID |
Fields
Field | Type | Unit | Description |
---|---|---|---|
succeededPods | integer | count | 성공한 파드 수 (status.succeeded ) |
failedPods | integer | count | 실패한 파드 수 (status.failed ) |
completionTime | string | - | Job이 완료된 시간 (status.completionTime.toString() ) |
parallelism | integer | count | 동시에 실행되도록 설정된 파드 수 (spec.parallelism ) |
completions | integer | count | Job이 완료되기 위해 필요한 파드 실행 횟수 (spec.completions ) |
backoffLimit | integer | count | 실패 시 재시도 가능한 최대 횟수 (spec.backoffLimit ) |
activeDeadlineSeconds | integer | seconds(sec) | Job이 실행될 수 있는 최대 시간 (spec.activeDeadlineSeconds ) |