本文へスキップ

Kubernetesモニタリング

WhaTap Kubernetesモニタリングは、コンテナ、Pod、ノード、クラスター全体からコンテナ内で実行されるアプリケーションまで、1つの画面で統合的に分析できるモニタリングソリューションです。マルチクラウドとハイブリッドクラウド環境の両方をサポートし、インフラ担当者とアプリケーション担当者が同じデータを見ながら協業できます。

Kubernetesモニタリングの構造

Kubernetesの最小デプロイ単位はコンテナではなくPodであり、1つのPodには1つ以上のコンテナが含まれます。したがって、Kubernetesモニタリングはコンテナ視点とPod視点の両方が必要です。WhaTapは、コンテナとPodのメトリクスを別々のカテゴリで収集し、コンテナマップでコンテナビューとPodビューを同時に提供します。

カテゴリは、ユーザープロジェクトから収集したメトリクスを区別する名前で、各カテゴリは異なるTagとFieldで構成されます。

主な特長

  • 統合モニタリング — マルチクラウドとハイブリッドクラウド環境のKubernetesシステムを1つの画面でモニタリングします。

  • MSA呼び出し関係の分析 — Pod単位の分散環境でトランザクションのAPI呼び出し関係を追跡します。

  • Root Cause Analysis — Host、コンテナ、アプリケーションを同時にモニタリングし、障害の原因を迅速に分析できます。

  • コンテナ内アプリケーションの分析 — Java、Node.js、Pythonアプリケーションのヒットマップ、トレース、マルチトランザクション追跡をサポートします。

  • コンテナマップによる統合可視化 — Kubernetesリソース、メトリクス、イベント、ログを1つの画面で提供します。インフラとアプリケーション担当者が同じビューを見ながら協業できます。

  • リソース使用量の推移分析 — コンテナとNodeの使用量推移ダッシュボードを提供します。WhaTapプロジェクトに属するコンテナ/Nodeの全体一覧から、個別対象の詳細まで確認できます。

  • メタ情報の即時参照 — マスターノードに接続しなくても、コンテナマップでメタ情報を直接確認できます。別途のマスターメタダッシュボードで全構成要素のメタ情報を一目で確認できます。

  • ログ分析への集中支援 — コンテナのログファイルと標準出力をリアルタイムで保存し、分類とインデックス作成を自動化します。コンテナに直接接続しなくても、意味のあるログに集中できます。

次のチュートリアル動画でWhaTap Kubernetesモニタリングを体験してみてください。

モニタリング対象

Kubernetesモニタリングの対象は、Kubernetesクラスターとその上で実行されるアプリケーションです。

  • Kubernetesクラスター

    • コンテナのCPU、Memory、Disk(Volume)、Network
    • Namespace、Deployment、ReplicaSet、Podなどのクラスター構成要素
    • Node(ホスト)のCPU、Memory、Disk、Network
  • コンテナ内アプリケーション — Java、Node.js、Python、PHP、Go

次に説明するモニタリング手順は、クラスターモニタリングとアプリケーションモニタリングに分けて説明します。

モニタリング手順

クラスターモニタリング手順

  1. WhaTapモニタリングサービスクラスタープロジェクトを作成してください。最初に作成したKubernetesプロジェクトが自動的にクラスタープロジェクトになります。詳細については、はじめにを参照してください。

  2. Kubernetes環境にマスターエージェント(whatap-master-agent)とノードエージェント(whatap-node-agent)をインストールしてください。両エージェントはユーザーのクラスター内でPod形式で実行されます。詳細については、エージェントのインストールを参照してください。

  3. (選択) クラスター内にネームスペースが多い場合、ネームスペース単位でプロジェクトを分離できます。詳細については、ネームスペースプロジェクトの作成を参照してください。

Tips

Kubernetes Namespaceは、単一クラスター内のリソースグループを分離するためのメカニズムです。クラスターのNamespace一覧はkubectl get namespaceコマンドで確認できます。

アプリケーションモニタリング手順

コンテナ内で実行されるアプリケーションをモニタリングするには、アプリケーションエージェントを追加でインストールします。対応言語はJava、Node.js、Python、PHP、Goです。詳細については、アプリケーションエージェントのインストールを参照してください。