ヘルプ Kubernetes監視 Kubernetesコンテナプロセスの監視

Kubernetesコンテナプロセスの監視

本ページは機械翻訳をもとに提供しています。正確かつ最新の情報は英語版の内容をご参照ください。

Kubernetesクラスターの各コンテナで実行されているプロセスを監視します。コンテナにアクセスすることなく、コンテナ内のどのプロセスがCPUやメモリ使用量を押し上げているかを特定します。

目次

業界別のユースケースとメリット

以下に、いくつかのユースケースとメリットを示します:

業界 ユースケース メリット
Eコマース フラッシュセール中に、メインアプリのスパイクとキャッシングサイドカータスク(例:Redis同期)を区別します。 チェックアウトフローが崩壊する前に、レイテンシースパイクやメモリ不足(OOM)キルを防止します。
FinTech(銀行) トランザクションエンジン、不正チェック、監査ログにわたるリソース使用量を関連付けます。 エンジニアにセキュアなPodへの直接的なシェル実行アクセスを許可することなく、厳格なコンプライアンス監査を提供します。
ヘルスケア 一時的なヘルスチェック、データパイプライン同期、長時間実行される患者記録サービスを追跡します。 ワークロードのシフト中に新しいプロセスを自動的に登録し、システムの可用性と監査可能性を維持します。
SaaS(テクノロジー) コアマイクロサービスをテレメトリーサイドカー(Fluent Bit、Istioプロキシ、その他のエージェント)から分離します。 共有コンテナのリソース消費を特定し、ベンダーの問題をアプリケーションの問題から切り分けます。

前提条件

Kubernetes監視にプロセスを追加する方法

Kubernetesコンテナ内で実行されているプロセスは、以下のいずれかの方法で監視できます:

方法1:手動追加

コンテナプロセスを即時かつ対象を絞って選択するには、以下の手順に従います:

  1. Site24x7アカウントにログインします。
  2. 左側のナビゲーションメニューから[K8s]に移動します。
  3. クラスターを選択し、[コンテナ]をクリックして対象のコンテナを選択します。
  4. [プロセス]タブに移動します。
  5. [プロセスのディスカバリー]をクリックして、現在コンテナで実行中のすべてのプロセスを表示します。
  6. 追跡したいプロセスを選択し、[追加]をクリックして監視を開始します。

方法2:設定ルール

コンテナのディスカバリーを自動化するには、以下の手順に従います:

  1. コンテナが監視に追加されたときに適用される設定ルールを作成します。
  2. [基準の定義]セクションの[基準]で、監視タイプとしてドロップダウンメニューから[コンテナ]を選択します。
  3. [アクションの定義]セクションで、[基準の定義]セクションで設定した条件を満たす監視によって実行されるアクションを設定します。
  4. [プロセスの追加]を選択し、パスファイルの詳細を入力します。
  5. 以下のオプションを切り替えます:
    1. [正規表現あり]:プロセスのコマンドライン引数または絶対パスを正規表現と照合し、柔軟かつ正確なプロセス識別を可能にします。例:zylker###/usr/bin/zylker###-conf_file.*
    2. [正規表現なし]:入力フィールドに入力された正確なテキストを、プロセスのコマンドライン引数または絶対パスと照合します。例:python3###/usr/bin/python3###main.py --user=zylker --role=admin

正規表現パターンの理解

コンテナ内でプロセスの複数のインスタンスが実行されているが、特定のコンフィグレーションファイルで始まるものだけを監視したい場合は、正規表現パターン(例:-conf_file=/etc/zylker/.*)を使用します。これにより、パターンを含むコマンドライン引数のみを照合し、関連するプロセスのみが監視対象として選択され、その他は無視されるようになります。

正規表現の構文:

<プロセス名>###<プロセスパス>###<プロセス引数>

サンプルプロセス:

/usr/bin/zylker -conf_file=/etc/zylker/zylker.json
/usr/bin/zylker -conf_file=/etc/zylker/zylker1.json

サンプル正規表現:

zylker###/usr/bin/zylker###-conf_file.*

構文 説明 例
<プロセス名> プロセスまたは実行可能ファイルの名前。 zylker
<プロセスパス> プロセス実行可能ファイルへの絶対パス。 /usr/bin/zylker
### プロセスパス、名前、引数を区切るためのデリミタです。複数の値を指定する場合は必須です。 ###
<プロセス引数> プロセスに渡されるコマンドライン引数。 -conf_file=/etc/zylker/zylker.json

注:この設定は複数のプロセスエントリーをサポートしています。

Kubernetesコンテナプロセスの表示

コンテナ内で実行されているプロセスを表示するには:

  1. 左側のナビゲーションメニューから[K8s]に移動します。
  2. クラスターを選択し、[コンテナ]をクリックして目的のコンテナを選択します。
  3. [プロセス]タブをクリックします。

監視データ

プロセス

メトリック名 説明 単位
プロセスCPU使用率(%) 選択した期間にわたって、監視対象の各プロセスが消費したCPUを示すトレンドチャートです。チャートにカーソルを合わせると、特定の時点での各プロセスのCPU使用率が表示されます。 パーセンテージ
プロセスメモリ使用率(%) 選択した期間にわたって、監視対象の各プロセスが消費したメモリを示すトレンドチャートです。チャートにカーソルを合わせると、特定の時点での各プロセスのメモリ使用率が表示されます。 パーセンテージ
プロセスの詳細 プロセス名と実行パスです。上向き矢印は監視が稼働中であることを示し、下向き矢印は監視がダウンしていることを示します。 テキスト
CPU(%) プロセスが使用したCPUの割合。 パーセンテージ
メモリ(%) プロセスが使用したメモリの割合。 パーセンテージ
インスタンス コンテナ内で実行されているプロセスのインスタンス数。 カウント
スレッド数 プロセスで実行されているスレッドの数。 カウント

[プロセスのディスカバリー]ボタンを使用して、コンテナ内で実行されている新しいプロセスを検索して追加し、監視します。リストされたプロセスのCPU、メモリ、インスタンス、またはスレッド数のしきい値を設定するには、[しきい値設定]ボタンを使用します。

関連ドキュメント