本文へスキップ

Metrics

ホーム画面 > プロジェクト選択 > ダッシュボード > コンテナマップ > 対象を選択後詳細ビュー画面に入ります > メトリックス

Kubernetesメトリクス

Kubernetesは、各コンテナのリソース使用量を制御し、継続的にモニタリングするために最適な状態を維持します。そのため、リソース使用量を確認し、そのデータに基づいてコンテナリソース使用量が適切に設定されていることを確認する過程は、Kubernetesモニタリングの基本的なパターンです。

CPUとMemoryメトリクス

代表的なKubernetesリソース設定は、コンテナのCPU Request/Limit、Memory Request/Limitです。以下は設定例です。

apiVersion: v1
kind: Pod
metadata:
name: <Pod명>
spec:
containers:
- name: <コンテナ1名>
image: <コンテナ1イメージ>
resources:
requests:
memory: "64Mi"
cpu: "100m"
limits:
memory: "128Mi"
cpu: "200m"
- name: <コンテナ2名>
image: <コンテナ2イメージ>
resources:
requests:
memory: "128Mi"
cpu: "250m"
limits:
memory: "256Mi"
cpu: "500m"

上記の設定により、Pod内には2つのコンテナが存在します。各コンテナのリソース設定は次のとおりです。

対象コンテナリソース区分リソース設定
コンテナ1CPURequest100m
Limit200m
メモリRequest64Mi
Limit128Mi
コンテナ2CPURequest250m
Limit500m
メモリRequest128Mi
Limit256Mi

様々なコンテナのリソース設定情報や現在の使用量を簡単に把握することは容易ではありません。そのため、WhaTap Kubernetesモニタリングサービスは、特定の単一コンテナ、ユーザーが選択した複数のコンテナ、またはDeployment全体を対象にリソース設定および現在の使用量を簡単に確認できる機能を提供します。

  • 詳細を表示 画面 > メトリックス - リソース使用量のモニタリングと分析

    リソース使用量のモニタリングと分析

  • 特定のコンテナを選択して状態を確認できます。

    リソース使用量のモニタリングと分析

上記のデータを見ると、CPUはRequest 0.2colores(200m)、Limit 0.4colores(400m)に設定されています。現在のCPU使用量は0.02cores(20m)(5秒平均)です。右側のCPU関連の推移グラフを確認すると、全体的には余裕があるものの、断続的にCPU使用量が増加する現象が確認できます。

Memoryは、Request 128MiB、Limit 256MiBに設定されています。ところで現在のMemory使用量は184MiBです。右側のMemory関連推移グラフを見てもRequest基準で100%を超過し、Limit基準でも70%以上を使用しています。

CPU、Memoryに関するの主なWhaTapメトリックは次のとおりです。

対象リソースShortnameName説明
CPUCpuTotUsageContainer CPU Usage (millicore)コンテナCPU使用率
CpuByRequestContainer CPU Usage by Request (%)コンテナCPU要求の使用率
CpuByLimitContainer CPU Usage by Limit (%)CPU Limit基準CPUの全体使用率
メモリMemWsContainer Memory Working Set (byte)コンテナのメモリworking set
MemWsByRequestContainer Memory Working Set by Request (%)コンテナメモリの要求基準のworkingset使用量
MemWsByLimitContainer Memory Working Set by Limit (%)コンテナメモリ割当量基準のworking set使用量
ノート

Podが実行中のノードに使用可能なリソースが十分である場合、コンテナに設定されたRequest以上のリソースを使用できます。WhaTapメトリックのうち、Container CPU Usage by Request (%)Container Memory Working Set by Request (%)の値が100%を超える可能性があります。

例えば、コンテナのMemory Requestを128MiBに設定したとします。コンテナ(Pod)が実行中のNodeの合計メモリは4GiBで、そのNodeに他のPodがない場合、コンテナは128MiB以上のメモリを使用できます。

その他のメトリクス

WhaTapはCPU、Memoryおよび、その他のメトリクスを提供します。

  • Container Block I/O Read Byte (IoReadBytes)

  • Container Block I/O Write Byte (IoWriteBytes)

  • Container Network Receive Byte (NetRxBytes)

  • Container Network Transmit Byte (NetTxByes)

WhaTap Kubernetesメトリクスの詳細については、次の文書を参照してください。