Kubernetes のログ、イベント、ポッド メトリックをリアルタイムで表示する
コンテナーの分析情報の Live Data 機能では、Azure Kubernetes Service (AKS) のコンテナ ログ (stdout/stderror)、イベント、ポッド メトリクスに直接アクセスできます。 kubectl logs -c
、kubectl get
イベント、および kubectl top pods
への直接アクセスを公開します。 コンソール ウィンドウには、コンテナー エンジンによって生成されたログ、イベント、およびメトリックが表示され、リアルタイムでの問題のトラブルシューティングに役立てることができます。
Note
AKS では 、Kubernetes クラスター レベルのログ アーキテクチャが使用されます。 コンテナー ログは、ノードの /var/log/containers
内にあります。 ノードにアクセスするには、「Azure Kubernetes Service (AKS) クラスター ノードへの接続」を参照してください。
この記事では、この機能の使用方法について詳しく説明します。
ライブ データ機能の設定またはトラブルシューティングについては、セットアップ ガイドを参照してください。 この機能は、Kubernetes API に直接アクセスします。 認証モデルの詳細については、「Kubernetes API」を参照してください。
AKS リソース ライブ ログを表示する
Note
プライベート クラスターからライブ ログにアクセスするには、同じプライベート ネットワーク上のマシン上にある必要があります。
Container insights の使用を問わず、AKS リソース ビューからポッド、デプロイ、レプリカ セット、ステートフル セット、デーモン セット、ジョブのライブ ログを表示するには、以下の手順を実施します。
Azure portal で、AKS クラスター リソース グループを参照し、AKS リソースを選択します。
メニューの [Kubernetes リソース] セクションで [ワークロード] を選択します。
それぞれのタブからポッド、デプロイ、レプリカ セット、ステートフル セット、デーモン セット、またはジョブのいずれかを選択します。
リソース メニューから [ライブ ログ] を選択します。
ライブ データの収集を開始するポッドを選択します。
ログを表示する
ログ データがコンテナー エンジンによって生成されたときに、[ノード]、[コントローラー]、または [コンテナー] ビューでこれらをリアルタイムに表示できます。 ログ データを表示するには
Azure portal で、AKS クラスター リソース グループを参照し、AKS リソースを選択します。
AKS クラスター ダッシュボードで、左側の [監視] の下で、[Insights] を選択します
[ノード]、[コントローラー]、または [コンテナー] タブを選択します。
パフォーマンス グリッドからオブジェクトを選択します。 右側の [プロパティ] ウィンドウで、[ライブ ログ] タブを選択します。AKS クラスターが Microsoft Entra ID を使用してシングル サインオンで構成されている場合は、そのブラウザー セッションで初めて使用するときに認証が求められます。 自分のアカウントを選択し、Azure での認証を完了します。
注意
Log Analytics ワークスペースからデータを表示するには、[プロパティ] ウィンドウで [Log Analytics で表示] を選択します。 ログ検索結果には、ノード、デーモン セット、レプリカ セット、ステートフル セット、ジョブ、Cron ジョブ、ポッド、コンテナーが表示される可能性があります。 これらのログは存在しない可能性があります。 ステートフル セットのログ検索結果には、ステートフル セット内のポッドのデータが表示されます。 ここでは、
kubectl
で使用できないコンテナーのログを検索しようとすると失敗します。 履歴ログ、イベント、およびメトリックの表示の詳細については、Container insights のログのクエリを実行する方法を参照してください。
認証が成功し、データを取得できる場合は、[ライブ ログ] タブへのストリーミングが開始されます。ここでは、ログ データが連続ストリームで表示されます。
イベントの表示
コンテナー エンジンによって生成されたリアルタイム イベント データは、container、pod、node、ReplicaSet、StatefulSet、DaemonSet、job、CronJob、または Deployment が選択されているときに、[ノード]、[コントローラー]、[コンテナー]、または [デプロイ] ビューで表示されます。 イベントを表示するには
Azure portal で、AKS クラスター リソース グループを参照し、AKS リソースを選択します。
AKS クラスター ダッシュボードで、左側の [監視] の下で、[Insights] を選択します
[ノード]、[コントローラー]、[コンテナー]、または [デプロイ] タブを選択します。
パフォーマンス グリッドからオブジェクトを選択します。 右側の [プロパティ] ウィンドウで、[ライブ イベント] タブを選択します。AKS クラスターが Microsoft Entra ID を使用してシングル サインオンで構成されている場合は、そのブラウザー セッションで初めて使用するときに認証が求められます。 自分のアカウントを選択し、Azure での認証を完了します。
注意
Log Analytics ワークスペースからデータを表示するには、[プロパティ] ウィンドウで [Log Analytics で表示] を選択します。 ログ検索結果には、ノード、デーモン セット、レプリカ セット、ステートフル セット、ジョブ、Cron ジョブ、ポッド、コンテナーが表示される可能性があります。 これらのログは存在しない可能性があります。 ステートフル セットのログ検索結果には、ステートフル セット内のポッドのデータが表示されます。 ここでは、
kubectl
で使用できないコンテナーのログを検索しようとすると失敗します。 履歴ログ、イベント、およびメトリックの表示の詳細については、Container insights のログのクエリを実行する方法を参照してください。
認証が成功し、データを取得できる場合は、[ライブ イベント] タブへのストリーミングが開始されます。
イベントのフィルター処理
イベントが表示されているときに、検索バーの下にある [フィルター] ピルを使用して結果を制限することもできます。 選択したリソースに応じて、このピルにより、選択対象のノード、ポッド、名前空間、またはクラスターが一覧表示されます。
メトリックを表示する
メトリック データがコンテナー エンジンによって生成されたときに、[ポッド] が選択されている場合のみ、[ノード] または [コントローラー] ビューでこれらをリアルタイムに表示できます。 メトリックを表示するには
Azure portal で、AKS クラスター リソース グループを参照し、AKS リソースを選択します。
AKS クラスター ダッシュボードで、左側の [監視] の下で、[Insights] を選択します
[ノード] または [コントローラー] タブを選択します。
パフォーマンス グリッドからポッド オブジェクトを選択します。 右側の [プロパティ] ウィンドウで、[ライブ メトリック] タブを選択します。AKS クラスターが Microsoft Entra ID を使用してシングル サインオンで構成されている場合は、そのブラウザー セッションで初めて使用するときに認証が求められます。 自分のアカウントを選択し、Azure での認証を完了します。
注意
Log Analytics ワークスペースからデータを表示するには、[プロパティ] ウィンドウで [Log Analytics で表示] オプションを選択します。 ログ検索結果には、ノード、デーモン セット、レプリカ セット、ステートフル セット、ジョブ、Cron ジョブ、ポッド、コンテナーが表示される可能性があります。 これらのログは存在しない可能性があります。 ステートフル セットのログ検索結果には、ステートフル セット内のポッドのデータが表示されます。 ここでは、
kubectl
で使用できないコンテナーのログを検索しようとすると失敗します。 履歴ログ、イベント、およびメトリックの表示の詳細については、Container insights のログのクエリを実行する方法を参照してください。
認証が成功すると、メトリック データが取得され、2 つのグラフで表示するために [ライブ メトリック] タブへのストリーミングが開始されます。
ライブ データ ビューの使用
以下のセクションでは、さまざまなライブ データ ビューで使用できる機能について説明します。
検索
ライブ データ機能には、検索機能が含まれています。 [検索] ボックスでは、キーワードまたは用語を入力して結果をフィルター処理できます。 一致する結果が強調表示され、すばやくレビューできるようになります。 イベントが表示されているときに、検索バーの下にある [フィルター] 機能を使用して結果を制限することもできます。 選択したリソースに応じて、ノード、ポッド、名前空間、またはクラスターから選択できます。
スクロールのロックと一時停止
自動スクロールを中断し、タブの動作を制御して、読み込まれた新しいデータを手動でスクロールできるようにするには、[スクロール] オプションを選択します。 自動スクロールを再有効化するには、[スクロール] をもう一度選択します。 [一時停止] オプションを選択して、ログまたはイベント データの取得を一時停止することもできます。 再開する準備ができたら、[再生] を選択します。
問題のトラブルシューティングを行うときは、短時間だけ自動スクロールを中断または一時停止します。 これらの要求は、クラスターの Kubernetes API の可用性とスロットリングに影響を与える可能性があります。
重要
この機能の操作中、データが永続的に保存されることはありません。 セッション中にキャプチャされたすべての情報は、ブラウザーを閉じるかブラウザーから移動すると削除されます。 データは、メトリック機能の 5 分間のウィンドウ内で視覚化するためにのみ存在します。 5 分間以上経過したメトリックも削除されます。 ライブ データでは、適切なメモリ使用量の制限内でクエリがバッファー処理されます。
よく寄せられる質問
このセクションでは、一般的な質問への回答を示します。
ノード ビューで [その他のプロセス] は何を表していますか?
[その他のプロセス] は、ノードのリソース使用率が高い根本原因を明確に理解するのに役立つことを目的としています。 この情報は、コンテナー化されたプロセスとコンテナー化されていないプロセスの使用を区別するのに役立ちます。
これらの [その他のプロセス] とは何ですか?
ノードで実行されるコンテナー化されていないプロセスのことです。
これはどのようにして計算しますか?
その他のプロセス = "CAdvisor からの合計使用量" - "コンテナー化されたプロセスからの使用量"
[その他のプロセス] には、次のものが含まれます。
- 自己管理型 Kubernetes またはマネージド Kubernetes のコンテナー化されていないプロセス。
- コンテナーの実行時プロセス。
- Kubelet。
- ノードで実行されているシステム プロセス。
- ノード ハードウェアまたは VM 上で実行されている Kubernetes 以外の他のワークロード。
次のステップ
- Azure Monitor を使用して、AKS クラスターの他の側面を監視する方法を引き続き学習するには、Azure Kubernetes Service の正常性の表示に関するページをご覧ください。
- アラートの作成、視覚化の作成、またはクラスターの詳細な分析を行うために、定義済みのクエリや例を確認するには、Container insights のログのクエリを実行する方法を参照してください。