本文へスキップ

Pod起動分析

ホーム画面 > プロジェクト選択 > 分析 > Pod起動分析

ノート

WhaTapノードエージェントバージョン1.4.2未満

  • 新規Pod開始分析 メニューの代わりに既存のメニュー(旧Pod初期化性能) 画面を提供します。

  • クラスタープロジェクト(CP)の場合のみアクセスできます。

Springbootを含むJVMベースのアプリケーションは、初期化時に大量のリソースを使用して、Livenessチェックに失敗する場合があります。もし、一定回数以上Livenessチェックに失敗した場合、Podが削除され、無制限に再起動現象が発生し、デプロイが失敗する可能性があります。

WhaTap KubernetesのPod起動分析機能を使用すると、Pod開始時のピーク使用量と初期化時間を分析して、最適なInitial Delay(Livenessチェック除外時間) 設定することができます。

基本画面ガイド

Pod起動分析

  • number 01領域の左上にある状態別のPod数を確認することができます。

  • number 01領域の右上にある 更新アイコン更新アイコンを選択して更新できます。

  • number 01領域の左側にある カラム選択アイコンカラム選択アイコンを選択してカラムを選択できます。

  • number 01領域の右側にある入力ウィンドウで、Pod名前またはQoSクラスを検索できます。

  • number 02領域では、目的のカラムを選択すると、そのカラム一覧を並べ替えて表示することができます。

カラムガイド

Pod初期化性能カラム

Pod起動分析は次のとおり、Pod情報とPod初期化タイムラインによってカラムを分類することができます。

Pod情報

Podの名前状態QoSクラス開始時刻に関する情報を確認することができます。

  • 状態: Podのライフサイクルを意味します。

    • 一時停止アイコンPending: クバネティスクラスター内でPod開始が承認されているが、コンテナが生成されていない状態を意味します。

    • 通常アイコン Running: Podがノードにバインディングされ、すべてのコンテナが生成され、1 つ以上のコンテナがまだ実行中であるか、開始または再起動中である状態を意味します。

    • 成功アイコンSucceeded: Podのすべてのコンテナが正常に終了し、再起動されていない状態を意味します。

    • 危険アイコンFailed: Podのコンテナの1 つ以上で障害が発生し、終了した状態を意味します。

    • 不明なアイコンUnknown: 何らかの理由でPodと通信できない状態を意味します。

  • QoSクラス: PodのQuality of Serviceを意味します。QoSクラスは、リソース不足時のPodの優先順位を決定します。優先度の高いPodが優先度の低いPodより先に終了します。

    • Guaranteed: ノードで使用可能なリソースが保証され、他のPodよりも優先的に割り当てます。最も最後に終了します。

      • PodのすべてのコンテナがCPUおよびメモリのrequestを持っている場合です。

      • PodのすべてのコンテナがCPUおよびメモリに limitを持っており、それらの値がrequestと同じである場合です。

    • Burstable: Podはノードのリソースが不足している場合は、一部のリソースを割り当てます。

      • Guaranteedクラスの条件を満たしていない場合です。

      • PodのコンテナのいずれかがCPUおよびメモリに request または limitが設定されている場合です。

    • BestEffort: リソース requestやlimitがないため、他のPodより優先度が低くなります。 最初に終了します。

      • Podのすべてのコンテナには、CPUおよびメモリの requestと limitはありません。
  • 開始時刻: Podが開始または生成された時間を意味します。

初期化開始

初期化開始は、最初のメトリクスデータが収集された日時を意味します。

  • 初期化開始時刻: 初期化が開始された時間に関するデータで、最初のデータ収集時間を意味します。

  • 初期化開始時のCPU Limit: 初期化の開始時のCPU limitを意味します。

  • 初期化開始時のCPU Request: 初期化の開始時のCPU requestを意味します。

  • 初期化開始時のCPU Throttle Count: 初期化の開始時にコンテナでCPU制限を超える使用試行が発生した場合、増加する値を意味します。

  • 初期化開始時のメモリ Limit: 初期化の開始時に設定したメモリ limitを意味します。

  • 初期化開始時のメモリ Request: 初期化の開始時に要求したメモリ requestを意味します。

  • 初期化開始時のメモリ Throttle Count: 初期化の開始時にコンテナでメモリ制限を超える使用試行が発生した場合、増加する値を意味します。

初期化中

初期化中は、初期化の開始後5分間のデータのCpuByLimitの平均値より低いCpuByLimit値のデータが発生した以前の時点を意味します。

  • 初期化にかかる時間(秒): Pod初期化にかかった時間を意味します。

    初期化開始時の5分間のデータのうち、CpuByLimitの平均値より低いCpuByLimit値が収集された時間 - 最初のデータ収集時間

  • 初期化中の平均CpuByLimit: 初期化中に使用したCpuByLimitの平均値を意味します。

  • 初期化中の最大メモリ: 初期化中にそのコンテナで使用されたメモリの最大使用量を意味します。

ノート

CpuByLimit(cpu_per_quota)は、CPU Limitに基づくCPU全体の使用率を意味します。

初期化完了

初期化完了とは、初期化開始後5分間のデータのCpuByLimit平均値より低いCpuByLimit値のデータが発生した時間を意味します。

  • 初期化完了時刻: 初期化完了した時間を意味します。

  • 初期化完了後の平均CpuByLimit: 初期化完了後に使用したCpuByLimitの平均値を意味します。

  • 初期化完了後の最大メモリ: 初期化が完了した後、そのコンテナで使用したメモリの最大使用量を意味します。

  • 初期化完了後(秒)(5分まで): 初期化完了後5分間のミリ秒単位時間を意味します。