cAdvisor / Kubelet 指標を使用する


Google Cloud Managed Service for Prometheus を使用して特定の cAdvisor / Kubelet 指標のセットを Cloud Monitoring に送信するように Google Kubernetes Engine(GKE)クラスタを構成できます。このドキュメントでは、Cloud Monitoring に書き込まれる際の指標の形式とクエリの方法について説明します。このドキュメントでは、各セットの指標の一覧表と、指標の使用方法についても説明します。

cAdvisor / Kubelet 指標を使用する前に、コレクションを有効にする必要があります。

指標の形式

Cloud Monitoring に書き込まれる Kubernetes cAdvisor / Kubelet の指標はすべて、リソースタイプ prometheus_target を使用します。各指標名には接頭辞 prometheus.googleapis.com/ が使用され、Prometheus 指標タイプ(/gauge/histogram/counter など)を示す接尾辞が付いています。それ以外の場合、各指標名はオープンソースの Kubernetes によって公開される指標名と同一です。

Cloud Monitoring からのエクスポート

cAdvisor / Kubelet 指標は、Cloud Monitoring API を使用して Cloud Monitoring からエクスポートできます。すべての cAdvisor / Kubelet 指標は Google Cloud Managed Service for Prometheus を使用して取り込まれるため、cAdvisor / Kubelet 指標は Prometheus Query Language(PromQL)を使用してクエリできます。Monitoring Query Language(MQL)を使用してクエリすることもできます。

指標のクエリ

cAdvisor / Kubelet 指標をクエリするときに使用する名前は、PromQL と Cloud Monitoring ベースの機能(MQL、Metrics Explorer のメニュー形式のインターフェースなど)のどちらを使用するかによって異なります。

次の cAdvisor / Kubelet 指標の表では、指標名ごとに 2 つのバージョンを示します。

  • PromQL の指標名: Google Cloud コンソールの Cloud Monitoring ページまたは Cloud Monitoring API の PromQL フィールドで PromQL を使用する場合は、PromQL の指標名を使用します。
  • Cloud Monitoring の指標名: 他の Monitoring 機能を使用する場合は、以下の表の Cloud Monitoring の指標名を使用します。この名前には prometheus.googleapis.com/ を付ける必要があります(表中の項目では省略されています)。

cAdvisor 指標

この表の Cloud Monitoring の指標名には、prometheus.googleapis.com/ という接頭辞を付ける必要があります。この接頭辞は、表中の項目では省略されています。

PromQL の指標名
Cloud Monitoring の指標名
種類、タイプ、単位
モニタリング対象リソース
必要な GKE バージョン
説明
ラベル
container_cpu_cfs_periods_total
container_cpu_cfs_periods_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
経過した適用期間の間隔回。30 秒ごとにサンプリングされます。

cpu
container_cpu_cfs_throttled_periods_total
container_cpu_cfs_throttled_periods_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
スロットリングされた期間の間隔数。30 秒ごとにサンプリングされます。

cpu
container_cpu_usage_seconds_total
container_cpu_usage_seconds_total/counter
CUMULATIVEDOUBLEs
prometheus_target
1.29.3-gke.1093000
CPU の累積消費時間。30 秒ごとにサンプリングされます。

cpu
container_fs_limit_bytes
container_fs_limit_bytes/gauge
GAUGEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
このファイル システム上のコンテナが消費可能なバイト数。30 秒ごとにサンプリングされます。

disk
container_fs_read_seconds_total
container_fs_read_seconds_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
完了した読み取りの累積数。30 秒ごとにサンプリングされます。

diskIO
container_fs_reads_bytes_total
container_fs_reads_bytes_total/counter
CUMULATIVEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
読み取りの累積バイト数。30 秒ごとにサンプリングされます。

diskIO
container_fs_reads_total
container_fs_reads_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
完了した読み取りの累積数。30 秒ごとにサンプリングされます。

diskIO
container_fs_usage_bytes
container_fs_usage_bytes/gauge
GAUGEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
このファイル システム上のコンテナによって消費されたバイト数。30 秒ごとにサンプリングされます。

disk
container_fs_write_seconds_total
container_fs_write_seconds_total/counter
CUMULATIVEDOUBLEs
prometheus_target
1.29.3-gke.1093000
書き込みの累積秒数。30 秒ごとにサンプリングされます。

diskIO
container_fs_writes_bytes_total
container_fs_writes_bytes_total/counter
CUMULATIVEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
書き込みの累積バイト数。30 秒ごとにサンプリングされます。

diskIO
container_fs_writes_total
container_fs_writes_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
完了した書き込みの累積数。30 秒ごとにサンプリングされます。

diskIO
container_memory_rss
container_memory_rss/gauge
GAUGEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
RSS のサイズ。30 秒ごとにサンプリングされます。

memory
container_memory_working_set_bytes
container_memory_working_set_bytes/gauge
GAUGEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
現在の作業セット。30 秒ごとにサンプリングされます。

memory
container_network_receive_bytes_total
container_network_receive_bytes_total/counter
CUMULATIVEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
受信バイトの累積数。30 秒ごとにサンプリングされます。

network
container_network_receive_packets_dropped_total
container_network_receive_packets_dropped_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
受信中にドロップされたパケットの累積数。30 秒ごとにサンプリングされます。

network
container_network_receive_packets_total
container_network_receive_packets_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
受信したパケットの累積数。30 秒ごとにサンプリングされます。

network
container_network_transmit_bytes_total
container_network_transmit_bytes_total/counter
CUMULATIVEDOUBLEBy
prometheus_target
1.29.3-gke.1093000
送信バイトの累積数。30 秒ごとにサンプリングされます。

network
container_network_transmit_packets_dropped_total
container_network_transmit_packets_dropped_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
送信中にドロップされたパケットの累積数。30 秒ごとにサンプリングされます。

network
container_network_transmit_packets_total
container_network_transmit_packets_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
送信されたパケットの累積数。30 秒ごとにサンプリングされます。

network

Kubelet 指標

この表の Cloud Monitoring の指標名には、prometheus.googleapis.com/ という接頭辞を付ける必要があります。この接頭辞は、表中の項目では省略されています。

PromQL の指標名
Cloud Monitoring の指標名
種類、タイプ、単位
モニタリング対象リソース
必要な GKE バージョン
説明
ラベル
kubelet_certificate_manager_server_ttl_seconds
kubelet_certificate_manager_server_ttl_seconds/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Kubelet が提供する証明書の最も短い TTL(有効期間)のゲージ。この値は、証明書の有効期限までの秒数です(期限切れの場合は負の値になります)。提供している証明書が無効であるか未使用の場合、値は +INF になります。30 秒ごとにサンプリングされます。

 
kubelet_node_name
kubelet_node_name/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
ノードの名前。数は常に 1 です。30 秒ごとにサンプリングされます。

node
kubelet_pleg_relist_duration_seconds
kubelet_pleg_relist_duration_seconds/histogram
CUMULATIVEDISTRIBUTIONs
prometheus_target
1.29.3-gke.1093000
PLEG で Pod 一覧の再表示にかかる期間(秒)。30 秒ごとにサンプリングされます。

 
kubelet_pod_worker_duration_seconds
kubelet_pod_worker_duration_seconds/histogram
CUMULATIVEDISTRIBUTIONs
prometheus_target
1.29.3-gke.1093000
1 つの Pod の同期にかかる期間(秒)。オペレーションの種類(作成、更新、同期)で分類されます。30 秒ごとにサンプリングされます。

operation_type
kubelet_running_containers
kubelet_running_containers/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
現在実行中のコンテナの数。30 秒ごとにサンプリングされます。

container_state
kubelet_running_pods
kubelet_running_pods/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
実行中の Pod サンドボックスがある Pod の数。30 秒ごとにサンプリングされます。

 
kubelet_runtime_operations_total
kubelet_runtime_operations_total/counter
CUMULATIVEDOUBLE1
prometheus_target
1.29.3-gke.1093000
ランタイム オペレーションの累積数。オペレーションの種類で分類されます。30 秒ごとにサンプリングされます。

operation_type
kubelet_volume_stats_available_bytes
kubelet_volume_stats_available_bytes/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Volume で使用可能なバイト数。30 秒ごとにサンプリングされます。

namespace
persistentvolumeclaim
kubelet_volume_stats_capacity_bytes
kubelet_volume_stats_capacity_bytes/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Volume の容量(バイト数)。30 秒ごとにサンプリングされます。

namespace
persistentvolumeclaim
kubelet_volume_stats_inodes
kubelet_volume_stats_inodes/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Volume 内の i ノードの最大数。30 秒ごとにサンプリングされます。

namespace
persistentvolumeclaim
kubelet_volume_stats_inodes_free
kubelet_volume_stats_inodes_free/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Volume 内の空き i ノードの数。30 秒ごとにサンプリングされます。

namespace
persistentvolumeclaim
kubelet_volume_stats_inodes_used
kubelet_volume_stats_inodes_used/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Volume 内で使用されている i ノードの数。30 秒ごとにサンプリングされます。

namespace
persistentvolumeclaim
kubelet_volume_stats_used_bytes
kubelet_volume_stats_used_bytes/gauge
GAUGEDOUBLE1
prometheus_target
1.29.3-gke.1093000
Volume で使用されているバイト数。30 秒ごとにサンプリングされます。

namespace
persistentvolumeclaim