次の方法で共有


コンテナー ネットワークの監視とは

コンテナー ネットワーク監視は、アドバンスト コンテナー ネットワークサービス スイートの機能です。 これまでにないレベルの監視と診断のツールがそろっているため、コンテナー化ワークロードに対する比類のない可視化が実現します。 これらのツールを使用すると、ネットワークの問題を簡単に特定してトラブルシューティングできるので、アプリケーションの最適なパフォーマンスを確実に維持できます。

コンテナー ネットワーク監視は、すべての Linux ワークロードに対応しており、基になるデータ プレーンが Cilium か非 Cilium かを問わず (両方ともサポートされます) Hubble とシームレスに統合されるので、コンテナー ネットワークのニーズを柔軟に満たすことができます。

コンテナー ネットワークの監視のダイアグラム。

Note

Cilium データ プレーンのシナリオでは、コンテナー ネットワーク監視は Kubernetes バージョン 1.29 以降で利用できます。 コンテナー ネットワーク監視は Azure Linux を含むすべての Linux ディストリビューションでバージョン 2.0 からサポートされます。

コンテナー ネットワーク監視の機能

コンテナー ネットワーク監視は、クラスター内のネットワーク関連の問題を監視するための次の機能を備えています。

  • ノードレベルのメトリック: 最適なアプリケーション パフォーマンスを維持するには、ノードレベルでのコンテナー ネットワークの正常性を理解することが重要です。 これらのメトリックからは、トラフィック量、ドロップされたパケット、接続の数などの分析情報がノード別に得られます。 このメトリックは Prometheus 形式で保存されるため、Grafana で見ることができます。

  • Hubble メトリック (DNS とポッドレベルのメトリック): これらの Prometheus メトリックにはソースと宛先のポッド情報が含まれているため、ネットワーク関連の問題を細分化したレベルで特定できます。 メトリックは、トラフィック量、ドロップされたパケット、TCP リセット、L4/L7 パケット フローなどの数を表します。DNS メトリックもあり (現在は非 Cilium データ プレーンのみ)、DNS エラーと、応答のない DNS 要求の数を表します。

  • Hubble フロー ログ: フロー ログを使用すると、クラスターのネットワーク アクティビティを詳細に可視化できます。 ポッドとの間のすべての通信がログに記録されるので、接続の問題を時系列で調査できます。 フロー ログを利用して解決できる疑問としては、「サーバーはクライアントの要求を受け取ったか?」、 「クライアントの要求からサーバーの応答までのラウンドトリップ待ち時間はどれくらいか?」などがあります。

    • Hubble CLI: Hubble コマンド ライン インターフェイス (CLI) では、クラスター全体からフロー ログを取得でき、フィルター処理と書式設定のカスタマイズも可能です。

    • Hubble UI: Hubble UI は、クラスター ネットワーク アクティビティを探索するためのユーザー フレンドリなブラウザーベースのインターフェイスです。 フロー ログに基づいてサービス接続グラフを作成することや、選択した名前空間のフロー ログを表示することができます。 Hubble UI の実行に必要なインフラストラクチャのプロビジョニングと管理を行うのはユーザーの責任です。

コンテナー ネットワーク監視の主な利点

  • CNI を問わない: Azure CNI のすべてのバリアントでサポートされ、これには kubenet も含まれます。

  • Cilium と非 Cilium: Cilium と非 Cilium のどちらのデータ プレーンでもシームレスなエクスペリエンスは同じです。

  • eBPF ベースのネットワーク監視: パフォーマンスとスケーラビリティに優れた eBPF (extended Berkeley Packet Filter) を活用して、潜在的なボトルネックや輻輳の問題がアプリケーションのパフォーマンスに影響を与える前にこれらを特定します。 ネットワーク正常性に関する主要インジケーター、たとえばトラフィック量、ドロップされたパケット、接続情報などについての分析情報が得られます。

  • ネットワーク アクティビティの詳細な可視化: アプリケーションどうしがどのように通信しているかを、詳細なネットワーク フロー ログを通じて理解できます。

  • メトリック保存と視覚化に関するシンプルな選択肢: 次のいずれかを選択できます。

    • Azure Managed Prometheus と Grafana: Azure がインフラストラクチャとメンテナンスを管理するので、ユーザーはメトリックの構成とメトリックの視覚化に集中できます。
    • Bring Your Own (BYO) Prometheus と Grafana: ユーザーが自分のインスタンスをデプロイして構成し、基になるインフラストラクチャを管理します。

メトリック

ノードレベルのメトリック

次のメトリックがノードごとに集計されます。 すべてのメトリックに次のラベルがあります。

  • cluster
  • instance (ノード名)

Cilium データ プレーンのシナリオでは、コンテナー ネットワーク監視によって Linux のメトリックのみが提供されます。Windows は現時点ではサポートされていません。 Cilium によってさまざまなメトリックが公開され、次に示すものがコンテナー ネットワーク監視に使用されます。

メトリックの名前 説明 追加のラベル Linux Windows
cilium_forward_count_total 転送されたパケット数の合計 direction
cilium_forward_bytes_total 転送されたバイト数の合計 direction
cilium_drop_count_total 破棄されたパケット数の合計 directionreason
cilium_drop_bytes_total 破棄されたバイト数の合計 directionreason

ポッドレベルのメトリック (Hubble メトリック)

次のメトリックはポッドごとに集計されます (ノード情報は保持されます)。 すべてのメトリックに次のラベルがあります。

  • cluster
  • instance (ノード名)
  • source または destination

発信トラフィックの場合は、ソース ポッドの名前空間/名前を表す source ラベルがあります。 着信トラフィックの場合は、宛先ポッドの名前空間/名前を表す destination ラベルがあります。

メトリックの名前 説明 追加のラベル Linux Windows
hubble_dns_queries_total クエリ別の DNS 要求総数 source または destinationqueryqtypes (クエリの種類)
hubble_dns_responses_total クエリ/応答別の DNS 応答総数 source または destinationqueryqtypes (クエリの種類)、rcode (リターン コード)、ips_returned (IP の数)
hubble_drop_total 破棄されたパケット数の合計 source または destinationprotocolreason
hubble_tcp_flags_total フラグ別の TCP パケット総数。 source または destinationflag
hubble_flows_processed_total 処理されたネットワーク フローの総数 (L4/L7 トラフィック) source または destinationprotocolverdicttypesubtype

制限事項

  • ポッドレベルのメトリックを利用できるのは Linux 上のみです。
  • Cilium データ プレーンがサポートされるのは Kubernetes バージョン 1.29 以降です。
  • メトリックのラベルは、Cilium クラスターと非 Cilium クラスターとでわずかに異なる場合があります。
  • Cilium ベースのクラスターの場合、DNS メトリックは、クラスターで Cilium ネットワーク ポリシー (CNP) が構成されているポッドでのみ使用できます。
  • フロー ログは、現在エアギャップ クラウドでは使用できません。
  • Hubble ノード エージェントの 1 つがダウンすると、Hubble リレーがクラッシュし、Hubble CLI が中断する可能性があります。

スケール

Azure が管理する Prometheus と Grafana では、サービス固有のスケールの制限があります。 詳細については、「Azure Monitor で大規模に Prometheus メトリックをスクレイピングする」を参照してください。

価格

重要

アドバンスト コンテナー ネットワークサービスは有料オファリングです。 価格の詳細については、「アドバンスト コンテナー ネットワークサービス - 価格」を参照してください。

次のステップ