쿼리 빌더와 NerdGraph API를 사용하여 자체 차트를 만들고 모든Kubernetes 통합 데이터를 쿼리 할 수 있습니다. 우리의 통합은 컨테이너 오케스트레이션 계층을 계측하여 Kubernetes 데이터를 수집합니다. 더 간단하고 시각적인 경험을 위해클러스터 탐색기 를 사용하십시오.
one.newrelic.com > 대시보드 : 쿼리 빌더 를 사용하여 Kubernetes 데이터를 쿼리하고 명확한 시각화를 생성할 수 있습니다.
Kubernetes 데이터 쿼리
Kubernetes 데이터를 쿼리 하는 가장 간단한 방법은 NRQL 쿼리 를 수락하는 쿼리 빌더 를 사용하는 것입니다. 또는 NerdGraph API 를 사용하여 Kubernetes 데이터를 검색할 수 있습니다.
이벤트 유형
Kubernetes 데이터는 다음 이벤트 유형 에 연결됩니다.
이벤트 이름 | Kubernetes 데이터 유형 | 이후 사용 가능 |
---|---|---|
| v1.0.0 | |
| v1.0.0 | |
| v1.0.0 | |
| v1.0.0 | |
| v1.13.0 | |
| v1.13.0 | |
| v1.0.0 | |
| v1.0.0 | |
| v1.0.0 | |
| v1.0.0 | |
| v1.11.0 | |
| v1.11.0 | |
| v1.11.0 | |
| v1.11.0 | |
| v1.13.0 | |
| v1.13.0 | |
| v2.3.0 |
알림 관리
Kubernetes 데이터에 대한 경고 위반에 대해 알림을 받을 수 있습니다.
Kubernetes 속성 및 측정항목
Kubernetes 통합은 다음 메트릭 및 기타 속성 을 수집합니다.
노드 데이터
노드 데이터에 대해 K8sNodeSample
이벤트를 쿼리합니다.
노드 속성 | 설명 |
---|---|
| 노드 할당 가능한 CPU 코어 |
| 노드 할당 가능한 메모리 바이트 |
| 노드 할당 가능한 포드 |
| 노드 할당 가능한 임시 스토리지 바이트 |
| 노드 CPU 용량 |
| 노드 메모리 용량(바이트) |
| 노드의 포드 용량 |
| 노드 임시 스토리지 용량 |
| Kubernetes 통합을 설치할 때 클러스터에 지정한 이름 |
| 현재 관찰된 노드 상태의 상태입니다. 보고된 조건은 Kubernetes 특징 및 설치된 운영자에 따라 다를 수 있습니다. |
| 코어 밀리초 단위로 측정된 노드 CPU 사용량 |
| 코어로 측정된 노드 CPU 사용량 |
| 요청된 총 CPU 코어 양 |
| 할당 가능한 CPU 코어와 관련하여 실제로 사용된 CPU 코어의 백분율 |
| 노드 파일 시스템에서 사용 가능한 바이트 |
| 노드 파일 시스템의 총 용량(바이트) |
| 노드 파일 시스템의 총 inode 수 |
| 노드 파일 시스템의 여유 inode |
| 노드 파일 시스템에서 사용된 inode |
| 노드 파일 시스템에서 사용된 바이트 |
| 용량에 대한 노드 파일 시스템에서 사용된 바이트의 백분율 |
| 노드에서 사용 가능한 메모리 바이트 |
| 노드의 초당 주요 페이지 부재 수 |
| 노드의 페이지 부재 수 |
| RSS 메모리의 바이트 |
| 사용된 메모리 바이트 |
| 작업 세트의 메모리 바이트 |
| 요청된 메모리의 총량 |
| 노드 할당 가능 메모리에 대한 작업 세트의 메모리 바이트 백분율 |
| 네트워크를 통한 수신/전송 중 초당 오류 수 |
| 포드가 실행 중인 호스트 이름 |
| 네트워크를 통해 수신된 초당 바이트 수 |
| 네트워크를 통해 전송된 초당 바이트 수 |
| 컨테이너 런타임 파일 시스템에 사용 가능한 바이트 |
| 컨테이너 런타임 파일 시스템에 할당된 총 용량(바이트) |
| 컨테이너 런타임 파일 시스템의 총 inode 수 |
| 컨테이너 런타임 파일 시스템의 무료 inode |
| 컨테이너 런타임 파일 시스템에서 사용된 inode |
| 컨테이너 런타임 파일 시스템에서 사용된 바이트 |
| 새 포드의 노드 예약 가능성 상태입니다. 값은 0(거짓) 또는 1(참)일 수 있습니다. |
| 특정 노드를 필터링하고 쿼리할 수 있도록 노드와 연결된 레이블 |
네임스페이스 데이터
네임스페이스 데이터에 대해 K8sNamespaceSample
이벤트를 쿼리합니다.
네임스페이스 속성 | 설명 |
---|---|
| Kubernetes 통합을 설치할 때 클러스터에 지정한 이름 |
| 생성된 네임스페이스의 타임스탬프 |
| 식별자로 사용할 네임스페이스의 이름 |
| 특정 네임스페이스를 필터링하고 쿼리할 수 있도록 네임스페이스와 연결된 레이블 |
| 네임스페이스의 현재 상태입니다. 값은 |
배포 데이터
배포 데이터에 대해 K8sDeploymentSample
이벤트를 쿼리합니다.
배포 속성 | 설명 |
---|---|
| Kubernetes 통합을 설치할 때 클러스터에 지정한 이름 |
| 배포가 생성된 타임스탬프 |
| 식별자로 사용할 배포 이름 |
| 배포가 속한 네임스페이스의 이름 |
| 특정 배포를 필터링하고 쿼리할 수 있도록 배포와 연결된 레이블 |
| 현재 사용 가능한 복제본 수 |
| 배포에서 정의한 복제본 수 |
| 현재 실행 중인 총 복제본 수 |
| 현재 사용할 수 없는 복제본 수 |
| 원하는 배포 상태를 달성하기 위해 업데이트된 복제본 수 |
| 누락된 총 복제본 수(원하는 복제본 수, podsDesired, 빼기 총 복제본 수, podsTotal) |
레플리카세트 데이터
ReplicaSet
데이터에 대한 K8sReplicasetSample
이벤트 쿼리:
복제본 속성 | 설명 |
---|---|
| Kubernetes 통합을 설치할 때 클러스터에 지정한 이름 |
|
|
| 식별자로 사용할 배포 이름 |
|
|
| 에 의해 관찰된 세대를 나타내는 정수 |
| 배포에서 정의한 복제본 수 |
|
|
| 이에 대해 준비된 복제본 수 |
| 현재 실행 중인 총 복제본 수 |
| 현재 누락된 총 복제본 수(원하는 복제본 수, podsDesired에서 준비된 복제본 수 podsReady를 뺀 값) |
| 식별자로 사용할 |
DaemonSet 데이터
DaemonSet
데이터에 대한 K8sDaemonsetSample
이벤트 쿼리:
DaemonSet 속성 | 설명 |
---|---|
| Kubernetes 통합을 설치할 때 클러스터에 지정한 이름 |
|
|
|
|
|
|
데몬셋 이름 | 와 관련된 이름 |
| 데몬 포드를 실행해야 하는 노드 수 |
| 최소한 하나의 데몬 포드를 실행하고 있어야 하는 노드 수 |
| 데몬 포드를 실행해야 하고 하나 이상의 데몬 포드가 실행 중이고 사용 가능한 노드 수 |
| 데몬 포드를 실행해야 하고 하나 이상의 데몬 포드가 실행 중이고 준비되어 있어야 하는 노드 수 |
| 데몬 포드를 실행해야 하고 실행 중인 데몬 포드가 없고 사용 가능한 노드 수 |
| 데몬 포드를 실행하지만 실행하지 않아야 하는 노드의 수 |
| 업데이트된 데몬 포드를 실행하는 총 노드 수 |
| 현재 누락된 총 복제본 수(원하는 복제본 수, podsDesired에서 준비된 복제본 수 podsReady를 뺀 값) |
| 원하는 상태의 특정 세대를 나타내는 시퀀스 번호 |
StatefulSet 데이터
StatefulSet
데이터에 대한 K8sStatefulsetSample
이벤트 쿼리:
StatefulSet 속성 | 설명 |
---|---|
| Kubernetes 통합을 설치할 때 클러스터에 지정한 이름 |
|
|
|
|
|
|
| 와 관련된 이름 |
| 원하는 포드 수 |
| 당 준비된 복제본 수 |
| 당 현재 복제본 수 |
| 당 복제본 수 |
| 업데이트된 복제본 수 |
| 현재 누락된 총 복제본 수(원하는 복제본 수, podsDesired에서 준비된 복제본 수 podsReady를 뺀 값) |
|
|
| 원하는 상태의 특정 세대를 나타내는 시퀀스 번호 |
| 시퀀스에서 포드를 생성하는 데 사용되는 |
| 시퀀스에서 포드를 생성하는 데 사용되는 |
포드 데이터
포드 데이터에 대한 K8sPodSample
이벤트를 쿼리합니다.
포드 속성 | 설명 |
---|---|
| Kubernetes 통합을 설치할 때 클러스터에 지정한 이름 |
| Pod가 생성된 시간의 타임스탬프(epoch 초) |
| 포드를 생성한 Kubernetes 객체의 이름입니다. 예를 들어, |
| 포드를 생성한 Kubernetes 개체의 종류입니다. 예: |
| 식별자로 사용할 배포 이름 |
| 포드가 요청을 처리할 준비가 되었는지 여부를 나타내는 부울 |
| 포드가 노드에서 실행되도록 예약되었는지 여부를 나타내는 부울 |
| 특정 포드를 필터링하고 쿼리할 수 있도록 포드와 연결된 레이블 |
| 마지막 포드 상태 변경과 관련된 세부정보 |
| 포드가 속한 네임스페이스의 이름 |
| 네트워크를 통한 수신/전송 중 초당 오류 수 |
| 초당 오류 수 |
| 네트워크를 통해 수신된 초당 바이트 수 |
| 네트워크를 통해 전송된 초당 바이트 수 |
| 포드가 실행 중인 호스트 IP 주소 |
| 포드가 실행 중인 호스트 이름 |
| 포드의 IP 주소입니다. IP가 없으면 비어 있습니다. |
| 식별자로 사용할 포드의 이름 |
| Pod가 현재 상태인 이유 |
| 팟(Pod)이 Epoch(초) 단위로 실행되기 시작한 타임스탬프 |
| 포드의 현재 상태입니다. 값은 |
클러스터 데이터
클러스터 데이터를 보려면 K8sClusterSample
이벤트를 쿼리합니다.
클러스터 속성 | 설명 |
---|---|
| Kubernetes 통합을 설치할 때 클러스터에 지정한 이름 |
| 클러스터가 실행 중인 Kubernetes 버전 |
컨테이너 데이터
컨테이너 데이터에 대해 K8sContainerSample
이벤트를 쿼리합니다.
컨테이너 속성 | 설명 |
---|---|
| Kubernetes 통합을 설치할 때 클러스터에 지정한 이름 |
| 컨테이너와 연결된 고유 ID입니다. Docker를 실행하는 경우 Docker 컨테이너 ID입니다. |
| 컨테이너가 실행 중인 이미지의 이름 |
| 컨테이너가 실행 중인 이미지와 연결된 고유 ID |
| 컨테이너와 연결된 이름 |
| 포드 사양의 컨테이너에 대해 정의된 CPU 코어 제한을 나타내는 정수 |
| 포드 사양의 컨테이너에 대해 정의된 요청된 CPU 코어 |
| 컨테이너에서 실제로 사용하는 CPU 코어 |
| 지정된 CPU 제한과 관련하여 컨테이너에서 실제로 사용하는 CPU 코어의 백분율입니다. 이 백분율은 다음 계산을 기반으로 합니다. ( |
| 지정된 CPU 요청과 관련하여 컨테이너에서 실제로 사용하는 CPU 코어의 백분율 |
| 식별자로 사용할 배포 이름 |
| 부울. 컨테이너의 준비 상태 확인 성공 여부 |
| 특정 컨테이너를 필터링하고 쿼리할 수 있도록 컨테이너와 연결된 레이블 |
| 포드 사양에서 컨테이너에 대해 정의된 메모리의 제한 바이트를 나타내는 정수 |
| 정수. 포드 사양의 컨테이너에 대해 정의된 요청된 메모리 바이트 |
| 정수. 컨테이너에서 실제로 사용하는 메모리 바이트 |
| 지정된 메모리 제한과 관련하여 컨테이너에서 실제로 사용하는 메모리의 백분율 |
| 지정된 메모리 요청과 관련하여 컨테이너가 실제로 사용한 메모리 비율 |
| 정수. 작업 세트의 메모리 바이트 |
| 지정된 메모리 제한과 관련하여 컨테이너에서 실제로 사용하는 작업 집합 메모리의 백분율 |
| 지정된 메모리 요청과 관련하여 컨테이너에서 실제로 사용하는 작업 집합 메모리의 백분율 |
| 컨테이너가 속한 네임스페이스의 이름 |
| 컨테이너가 실행 중인 호스트 IP 주소 |
| 컨테이너가 실행 중인 호스트 이름 |
| 식별자로 사용할 컨테이너가 있는 포드의 이름 |
| 컨테이너가 현재 상태인 이유를 제공합니다. |
| 컨테이너가 다시 시작된 횟수 |
| 컨테이너의 현재 상태입니다. 값은 |
| 경과된 시행 기간 간격의 델타 변경 |
| 조절 기간 간격의 델타 변경 |
| 컨테이너가 조절된 기간의 델타 변경(초) |
| 경과된 시행 기간 간격의 총 수 |
| 조절된 기간 간격의 총 수 |
| 컨테이너가 조절된 총 시간(초) |
| 이 컨테이너에서 사용하는 메모리 매핑된 파일의 총 크기(바이트) |
볼륨 데이터
볼륨 데이터에 대한 K8sVolumeSample
이벤트를 쿼리합니다.
볼륨 속성 | 설명 |
---|---|
| 생성 시 볼륨에 할당한 이름 |
| 볼륨이 구성된 클러스터 |
| 볼륨이 구성된 네임스페이스 |
| 볼륨이 연결된 포드입니다. Kubernetes 모니터링 통합은 포드에 연결된 볼륨을 나열합니다. |
| 영구 볼륨인 경우 이 값은 다음으로 설정됩니다. |
| 영구 볼륨 클레임이 구성된 네임스페이스 |
| 생성 시 영구 볼륨 클레임에 할당한 이름 |
| 볼륨의 용량(바이트) |
| 볼륨 사용량(바이트) |
| 볼륨의 사용 가능한 용량(바이트) |
| 백분율로 표시된 볼륨 사용량 |
| 볼륨의 총계 |
|
|
|
|
MetricsProvider 인터페이스를 구현하는 볼륨 플러그인에서 볼륨 데이터를 사용할 수 있습니다.
- AWSElasticBlockStore
- 애저디스크
- Azure 파일
- 분석
- 가변 볼륨
- 플로커
- GCEPersistentDisk
- GlusterFS
- iSCSI
- NFS
- 스토리지OS
- Vsphere볼륨
API 서버 데이터
API 서버 데이터를 보려면 K8sApiServerSample
이벤트 를 쿼리합니다. 자세한 내용은 컨트롤 플레인 모니터링 구성 을 참조하세요.
API 서버 속성 | 설명 |
---|---|
| 상주 메모리 크기(바이트) |
| 사용자와 시스템 CPU 소요 시간의 차이(초) |
| 생성된 OS 스레드 수 |
| 현재 존재하는 고루틴의 수 |
| Verb 및 HTTP 응답 코드별로 구분된 apiserver 요청 수의 차이 |
| 각 동사 및 HTTP 응답 코드에 대해 구분된 apiserver 요청 비율 |
| 메소드 및 코드별로 분할된 HTTP 요청 수의 차이 |
| 메소드 및 코드별로 분할된 HTTP 요청 수의 비율 |
| 마지막 확인 시점에 저장된 객체 개수, 종류별 분할 |
컨트롤러 관리자 데이터
컨트롤러 관리자 데이터를 보려면 K8sControllerManagerSample
이벤트를 쿼리합니다. 자세한 내용은 컨트롤 플레인 모니터링 구성 을 참조하세요.
컨트롤러 관리자 속성 | 설명 |
---|---|
| 상주 메모리 크기(바이트) |
| 사용자와 시스템 CPU 시간의 차이(초) |
| 생성된 OS 스레드 수 |
| 현재 존재하는 고루틴의 수 |
| workqueue에서 처리한 총 추가 수의 차이 |
| 현재 작업 대기열 깊이 |
| workqueue에서 처리한 총 재시도 횟수의 차이 |
| 보고 시스템이 관련 임대의 마스터인지 여부의 게이지, |
스케줄러 데이터
스케줄러 데이터를 보려면 K8sSchedulerSample
이벤트를 쿼리합니다. 자세한 내용은 컨트롤 플레인 모니터링 구성 을 참조하세요.
스케줄러 속성 | 설명 |
---|---|
| 상주 메모리 크기(바이트) |
| 사용자와 시스템 CPU 시간의 차이(초) |
| 생성된 OS 스레드 수 |
| 현재 존재하는 고루틴의 수 |
| 보고 시스템이 관련 임대의 마스터인지 여부의 게이지, |
| 분위수당 HTTP 요청 지연 시간(마이크로초) |
| HTTP 요청 대기 시간의 합계(마이크로초) |
| 관찰된 HTTP 요청 이벤트 수 |
| 상태 코드, 메서드 및 호스트별로 분할된 HTTP 요청 수의 차이 |
| 상태 코드, 메서드 및 호스트별로 분할된 HTTP 요청 수의 비율 |
| 결과에 따른 포드 예약 시도 횟수의 차이입니다. |
| 결과에 따른 포드 예약 시도 횟수의 비율입니다. |
| 스케줄링 작업의 하위 부분으로 분할된 스케줄링 지연 시간(초) |
| 스케줄링 작업의 하위 부분으로 분할된 스케줄링 대기 시간(초)의 합계 |
| 스케줄링 작업의 하위 부분으로 분할된 스케줄링의 관찰된 이벤트 수입니다. |
| 현재까지 클러스터에서 총 선점 시도의 차이 |
| 선정된 선점 피해자 수 |
etcd 데이터
K8sEtcdSample
이벤트 를 쿼리하여 etcd 데이터를 확인합니다. 자세한 내용은 컨트롤 플레인 모니터링 구성 을 참조하세요.
etcd 속성 | 설명 |
---|---|
| 상주 메모리 크기(바이트) |
| 사용자와 시스템 CPU 시간의 차이(초) |
| 생성된 OS 스레드 수 |
| 현재 존재하는 고루틴의 수 |
| 리더의 존재 여부. |
| 표시된 리더 변경 수의 차이 |
| 물리적으로 할당된 기본 데이터베이스의 총 크기(바이트) |
| 커밋된 총 합의 제안 수의 차이 |
| 커밋된 총 합의 제안 수 비율 |
| 적용된 총 합의 제안 수의 차이 |
| 총 합의 제안 건수 적용 비율 |
| 커밋할 보류 중인 제안의 현재 수 |
| 실패한 제안서의 총 개수 차이 |
| 실패한 제안의 총 개수 비율 |
| 열린 파일 설명자 수 |
| 열린 파일 설명자의 최대 수 |
| 열 수 있는 최대 수에 대한 열린 파일 설명자 비율 |
| gRPC 클라이언트에서 받은 총 바이트 수 비율 |
| gRPC 클라이언트로 전송된 총 바이트 수 비율 |
엔드포인트 데이터
엔드포인트 데이터에 대한 K8sEndpointSample
이벤트를 쿼리합니다.
엔드포인트 속성 | 설명 |
---|---|
| Kubernetes 통합을 설치할 때 클러스터에 지정한 이름 |
| 엔드포인트가 생성된 시간의 타임스탬프 |
| 엔드포인트가 속한 네임스페이스의 이름 |
| 엔드포인트와 연결된 이름 |
| 특정 엔드포인트를 필터링하고 쿼리할 수 있도록 엔드포인트와 연결된 레이블 |
| 엔드포인트에서 사용 가능한 주소 수 |
| 엔드포인트에서 준비되지 않은 주소 수 |
서비스 데이터
서비스 데이터에 대한 K8sServiceSample
이벤트 를 쿼리합니다.
서비스 속성 | 설명 |
---|---|
| Kubernetes 통합을 설치할 때 클러스터에 지정한 이름 |
| 서비스가 생성된 타임스탬프 |
| 서비스가 속한 네임스페이스의 이름 |
| 특정 서비스를 필터링하고 쿼리할 수 있도록 서비스와 연결된 레이블 |
| 서비스와 연결된 이름 |
|
|
|
|
|
|
| 서비스 유형 |
| 이 서비스가 대상으로 하는 레이블 선택기 |
수평형 포드 자동 확장 처리 데이터
Horizontal Pod Autoscaler 데이터에 대한 K8sHpaSample
이벤트를 쿼리합니다.
HPA 속성 | 설명 |
---|---|
| Kubernetes 통합을 설치할 때 클러스터에 지정한 이름 |
| 특정 자동 크기 조정기를 필터링하고 쿼리할 수 있도록 HPA와 연결된 레이블 |
| 이 자동 확장 처리에서 관리하는 포드의 현재 복제본 수 |
| 이 자동 확장 처리에서 관리하는 포드의 원하는 복제본 수 |
| 자동 확장 처리에서 설정할 수 있는 포드 수의 하한, 기본적으로 1 |
| 자동 확장 처리에서 설정할 수 있는 포드 수의 상한값입니다. 보다 작을 수 없음 |
| 원하는 복제본 수를 계산할 때 이 자동 확장 처리에서 사용하는 측정항목 사양 |
| 자동 스케일러가 스케일을 가져오고 업데이트할 수 있는지 여부와 백오프 관련 조건이 스케일링을 방해하는지 여부를 나타내는 부울 |
| 자동 스케일러가 활성화되었는지 여부를 나타내는 부울(원하는 스케일을 계산할 수 있는 경우) |
| 자동 확장 처리가 구성된 최대 또는 최소 복제본으로 제한되는지 여부를 나타내는 부울 |
| Prometheus 레이블로 변환된 Kubernetes 레이블 수 |
| HorizontalPodAutoscaler 컨트롤러에서 관찰한 생성 |
APM 모니터링 애플리케이션의 Kubernetes 메타데이터
애플리케이션을 Kubernetes와 연결 하면 애플리케이션 추적 및 분산 추적에 다음 속성이 추가됩니다.
nodeName
containerName
podName
clusterName
deploymentName
namespaceName