すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:ACK Terway と Cilium Hubble を使用したネットワークの可観測性の実装

最終更新日:Aug 21, 2026

Container Service for Kubernetes (ACK) Terway クラスターに Cilium Hubble をデプロイすると、コンテナネットワークトラフィックとネットワークポリシーを可視化でき、ネットワークアーキテクチャとサービストポロジーの可観測性が得られます。このトピックでは、Cilium Hubble を使用して、送信元や宛先などのネットワークトラフィックデータを表示し、ネットワークの可観測性を実現する方法について説明します。

前提条件

ACK マネージドクラスターの作成。

説明

Cilium Hubble は現在、IPvlan に基づく Terway ENI multi-IP ネットワークモードのみをサポートしています。したがって、クラスターを作成する際は、ネットワークプラグイン を [Terway] に、Terway モード を [IPvlan] に設定する必要があります。そうでない場合、Cilium Hubble は使用できません。

ステップ1:eni-config ConfigMap の設定

[コンソール]

  1. Terway の eni-config ConfigMap を編集します。

    1. ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。

    2. [クラスター] ページで、管理するクラスターの名前をクリックします。 左側のナビゲーションウィンドウで、[設定] > [設定] を選択します。

    3. ConfigMap ページで、名前空間 ドロップダウンリストからkube-systemを選択します。eni-configを見つけ、アクション 列の YAML の編集 をクリックします。

    4. YAML の表示 パネルで 10-terway.conf を見つけ、次のパラメーターを 10-terway.conf に追加して、OK をクリックします。

      "cilium_enable_hubble": "true",
      "cilium_hubble_listen_address": ":4244",
      "cilium_hubble_metrics_server": ":9091",
      "cilium_hubble_metrics": "drop,tcp,flow,port-distribution,icmp",

      パラメーター

      説明

      備考

      eniip_virtual_type

      IPvlan モードを有効にするかどうかを指定します。

      このパラメーターが存在しないか、値が IPvlan でない場合、クラスターは Cilium Hubble をサポートしません。

      cilium_enable_hubble

      Hubble を使用したネットワークトラフィック分析を有効にするかどうかを指定します。

      このトピックでは、このパラメーターは "true" に設定されています。

      cilium_hubble_listen_address

      Hubble ネットワークトラフィック情報のリスニングアドレス。

      このトピックでは、このパラメーターは ":4244" に設定されています。

      cilium_hubble_metrics_server

      Hubble メトリクスのリスニングアドレス。

      このトピックでは、このパラメーターは ":9091" に設定されています。

      cilium_hubble_metrics

      収集するメトリクス。複数のメトリクスはコンマ (,) で区切ります。

      DNS や HTTP などのレイヤー 7 機能はサポートされていません。Hubble がサポートするすべてのメトリクスは、"drop,tcp,flow,port-distribution,icmp" です。

      説明

      有効にするメトリクスが多すぎると、Hubble のパフォーマンスに影響する可能性があります。

  2. 変更を適用するために Terway Pod を再起動します。

    1. 左側のナビゲーションペインで、ワークロード > ポッドを選択します。

    2. ポッド ページで、名前空間 ドロップダウンリストから kube-system を選択し、検索ボックスに terway-eniip と入力します。 一致する各ポッドについて、操作 列で 詳細 > 削除 を選択します。

    3. 表示される確認ダイアログボックスで、OK をクリックします。

      ポッド ページで、新しいterway-eniip-xxxPod の ステータス が [実行中] になるまで待ちます。これは、Pod が正常に再起動したことを示します。

    4. 同様の手順で、すべての terway-eniip Pod を削除します。

Kubectl

  1. eni-config ConfigMap を編集します。

    1. 次のコマンドを実行して eni-config ConfigMap を編集します:

      kubectl -n kube-system edit configmap eni-config
    2. 10-terway.conf データブロックに次のパラメーターを追加し、変更を保存してエディタを終了します。

      "cilium_enable_hubble": "true",
      "cilium_hubble_listen_address": ":4244",
      "cilium_hubble_metrics_server": ":9091",
      "cilium_hubble_metrics": "drop,tcp,flow,port-distribution,icmp",

      パラメーター

      説明

      備考

      eniip_virtual_type

      IPvlan モードを有効にするかどうかを指定します。

      このパラメーターが存在しないか、値が IPvlan でない場合、クラスターは Cilium Hubble をサポートしません。

      cilium_enable_hubble

      Hubble を使用したネットワークトラフィック分析を有効にするかどうかを指定します。

      このトピックでは、このパラメーターは "true" に設定されています。

      cilium_hubble_listen_address

      Hubble ネットワークトラフィック情報のリスニングアドレス。

      このトピックでは、このパラメーターは ":4244" に設定されています。

      cilium_hubble_metrics_server

      Hubble メトリクスのリスニングアドレス。

      このトピックでは、このパラメーターは ":9091" に設定されています。

      cilium_hubble_metrics

      収集するメトリクス。複数のメトリクスはコンマ (,) で区切ります。

      DNS や HTTP などのレイヤー 7 機能はサポートされていません。Hubble がサポートするすべてのメトリクスは、"drop,tcp,flow,port-distribution,icmp" です。

      説明

      有効にするメトリクスが多すぎると、Hubble のパフォーマンスに影響する可能性があります。

  2. 変更を適用するために Terway Pod を再起動します。

    kubectl rollout restart daemonset -n kube-system terway-eniip

ステップ2:Cilium Hubble のインストール

  1. ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。

  2. [クラスター] ページで、管理するクラスターの名前をクリックします。 左側のナビゲーションウィンドウで、[アプリケーション] > [ヘルム] を選択します。

  3. [Helm] ページで、[デプロイ] をクリックします。 [基本情報] ステップで、次の表に基づいてパラメーターを設定します。

    パラメーター

    値の例

    [リリース名]

    ack-terway-hubble

    [名前空間]

    kube-system

    [ソース]

    デフォルト値は Marketplace です。

    グラフ

    • [ユースケース] で、すべて を選択します。

    • [サポートされるアーキテクチャ] で、[amd64] を選択します。

    • 検索ボックスに ack-terway-hubble と入力します。

    [ack-terway-hubble] を選択し、次へ をクリックします。

  4. パラメーター ページで、Chart バージョン を選択します。パラメータ エリアで ingress セクションを見つけ、hosts に Hubble UI のアクセスドメインを設定し、OK をクリックします。

    説明

    次のパラメーターは ingress セクションにあります。

    パラメーター

    説明

    enabled

    Hubble UI の Ingress アクセスを有効にするかどうかを指定します。

    annotations

    カスタム Ingress アノテーション。

    path

    カスタム Ingress ルートパス。

    hosts

    カスタム Ingress ホスト。

    tls

    カスタム Ingress TLS 設定。

ステップ3:Cilium Hubble の使用

Cilium Hubble の Ingress の hosts パラメーターを設定した場合、ポート 80 でそのドメインにアクセスすることで Hubble UI にアクセスできます。Hubble UI には次の情報が表示されます。

説明

ingress.localのように一般に解決できないドメイン名を使用する場合は、kubectl -n kube-system get svc nginx-ingress-lb コマンドを実行して Hubble UI の IP アドレスを取得します。次に、ローカルの hosts ファイルにエントリを追加して、ingress.localをこの IP アドレスにマッピングします。

  • サービスマップには、クラスターの名前空間全体にわたる Pod と Service 間の通信トポロジーが表示されます。

  • フロービューには、送信元、宛先、ポート情報、転送ステータスなど、現在のネットワークトラフィックに関する詳細が表示されます。

  • ネットワークポリシーが設定されている場合、UI にはどのトラフィックフローがそれらのポリシーによってドロップされたかが表示されます。

Cilium Hubble は、kube-system名前空間のhubble-metricsサービスを介してネットワークトラフィックメトリクスを公開します。eni-configConfigMap の cilium_hubble_metrics フィールドで、公開するメトリクスを制御します。このデータは、オープンソース Prometheus または Managed Service for Prometheus を使用して収集できます。詳細については、「オープンソース Prometheus を使用したモニタリング」および「Managed Service for Prometheus の設定」をご参照ください。

説明

Cilium Hubble によって公開されるメトリクスの詳細については、「Hubble Exported Metrics」をご参照ください。

カテゴリ

メトリクス

ラベル

説明

drop

hubble_drop_total

reason, protocol

ドロップされたパケットの合計。

tcp

hubble_tcp_flags_total

flag, family

観測された TCP フラグの合計。

flow

hubble_flows_processed_total

type, subtype, verdict

処理されたネットワークフローの合計。

port-distribution

hubble_port_distribution_total

protocol, port

宛先ポートごとのパケット分布。

icmp

hubble_icmp_total

family, type

ICMP パケットの合計。