Container insights のライブ データを使用すると、クラスター内のノードとポッドの状態に関するメトリックをリアルタイムで視覚化することができます。 この機能では、kubectl top nodes
、kubectl get pods --all-namespaces
、kubectl get nodes
コマンドへの直接アクセスがエミュレートされ、この分析情報に含まれるパフォーマンス グラフのデータの呼び出し、解析、視覚化が行われます。
この記事では、この機能の使用方法について詳しく説明します。
メモ
この機能では、プライベート クラスターとして有効にされた Azure Kubernetes Service (AKS) クラスターはサポートされていません。 この機能では、ブラウザーからプロキシ サーバーを介した Kubernetes API への直接アクセスを利用します。 このプロキシから Kubernetes API をブロックするようにネットワーク セキュリティを有効にすると、このトラフィックはブロックされます。 この機能は、Azure Monitor for AKS の Managed Prometheus 視覚化でもサポートされていません
ライブ データ機能の設定またはトラブルシューティングについては、セットアップ ガイドを参照してください。
しくみ
ライブ データ機能は、Kubernetes API に直接アクセスします。 認証モデルの詳細については、「Kubernetes API」を参照してください。
この機能は、メトリック エンドポイント (/api/v1/nodes
、/apis/metrics.k8s.io/v1beta1/nodes
、/api/v1/pods
など) に対してポーリング操作を実行します。 サイクル間隔は、既定では 5 秒ごとです。 このデータはブラウザーにキャッシュされ、Container insights に表示される 4 つのパフォーマンス グラフにグラフ化されます。 後続の各ポーリングは、5 分間のローリング視覚化ウィンドウにグラフ化されます。 グラフを表示するには、[ライブ] オプションをスライドして [オン] にします。
ポーリング間隔は、[間隔の設定] ドロップダウンから構成できます。 このドロップダウン リストを使用して、1 秒、5 秒、15 秒、および 30 秒ごとの新しいデータのポーリングを設定します。
重要
短時間で問題のトラブルシューティングを行う場合は、ポーリング間隔を 1 秒に設定することをお勧めします。 これらの要求は、クラスターの Kubernetes API の可用性とスロットリングに影響を与える可能性があります。 その後、より長いポーリング間隔へと再構成します。
これらのグラフは、ライブ モードで表示した最後の Azure ダッシュボードにピン留めすることはできません。
重要
この機能の操作中、データが永続的に保存されることはありません。 このセッション中にキャプチャされたすべての情報は、ブラウザーを閉じるか、またはこの機能から移動すると、すぐに削除されます。 データは、5 分間のウィンドウ内で視覚化するためにのみ存在します。 5 分間以上経過したメトリックも完全に削除されます。
キャプチャされるメトリック
次のメトリックがキャプチャされ、4 つのパフォーマンス グラフに表示されます。
ノードの CPU 使用率 (%) とノードのメモリ使用率 (%)
これら 2 つのパフォーマンス グラフは、kubectl top nodes
を呼び出し、CPU% および MEMORY% 列の結果をそれぞれのグラフにキャプチャすることと同等として位置づけられます。
パーセンタイル計算は、大規模なクラスターでクラスター内の外れ値ノードを識別するために役立ちます。 たとえば、スケールダウンのために、ノードの使用率が低いかどうかを把握できます。 Min 集計を利用すると、クラスター内の使用率が低いノードを確認できます。 さらに詳しく調査するには、[ノード] タブを選択し、CPU またはメモリの使用率でグリッドを並べ替えます。
また、この情報は、どのノードが制限値に近づいているのか、スケールアウトが必要であるかどうかを把握するのにも役立ちます。 Max および P95 集計の両方を使用すると、クラスター内にリソース使用率が高いノードがあるかどうかを確認できます。 さらに詳しく調査するには、 [ノード] タブにもう一度切り替えます。
ノード数
このパフォーマンス グラフは、kubectl get nodes
を呼び出し、状態の種類でグループ化されたグラフに STATUS 列をマッピングすることと同等として位置づけられます。
ノードは、準備完了または準備不完了状態のいずれかで報告され、合計数を算出するためにカウントされます。 これらの 2 つの集計結果がグラフ化されるので、たとえば、ノードが失敗の状態にあるかどうかを把握できます。 準備不完了集計を使用すると、クラスター内で現在準備不完了状態のノードの数をすぐに確認することができます。
アクティブなポッド数
このパフォーマンス チャートは、kubectl get pods --all-namespaces
を呼び出した結果と同等であり、STATUS 列が状態の種類ごとにグループ化されたチャートにマッピングされます。
メモ
kubectl
によって解釈される状態の名前は、グラフ内で正確に一致しない場合があります。
次の手順
アラートと視覚化の作成、またはクラスターの詳細な分析を行うために、定義済みのクエリや例を確認するには、ログ クエリの例を参照してください。