ULB は、デュアル eBPF ベースのメトリック機能をサポートし、異なる構成方法でサービス通信と運用データパスイベントをきめ細かく可視化します。
ulb_dp_* メトリックファミリを通じて公開されます。各機能には個別の構成と有効化メソッドがあります。
Unified Load Balancer 構成およびアドミニストレーション ガイド、リリース 2026.02
ULB は、デュアル eBPF ベースのメトリック機能をサポートし、異なる構成方法でサービス通信と運用データパスイベントをきめ細かく可視化します。
ulb_dp_* メトリックファミリを通じて公開されます。各機能には個別の構成と有効化メソッドがあります。
ULB は、Extended Berkeley Packet Filter(eBPF)テクノロジーを使用して、ULB サービスでデータパスを詳細に可視化します。これは、入力通信と出力通信関連のメトリックを収集し、管理者は、パフォーマンスの問題と障害対応の問題を監視できるようになります。
この機能は、CGROUP(Control Group)v2 をサポートする Ubuntu カーネルバージョンのみをサポートします。
データパスメトリクスを使用することで、ULB は次のような利点を提供します。
デバッグの強化:詳細なデータパスメトリクスを提供し、ネットワーク問題の迅速な特定と解決を容易にします。
パフォーマンス監視:通信スループットをリアルタイムで監視できるため、管理者はボトルネックを特定し、パフォーマンスを最適化できます。
可視性の向上:サービスの通信パターンに関する分析情報を提供し、キャパシティプランニングおよびリソース割り当てに役立ちます。
eBPF モニタリングは、オーバーヘッドを引き起こす可能性があるため、システムリソースの使用状況をモニタリングすることが重要です。
この機能は、ロードバランササービス内のネットワーク通信フローを理解するのに役立ちます。
このプロセスには、ネットワーク通信メトリックを収集し、報告するために連携する複数のアクターとコンポーネントが含まれます。
eBPF:通信特性を受動的に監視し、各サービスと Pod のパケットとバイトをカウントします。
ULB エージェント:eBPF からカウントを定期的に収集し、メトリックとして使用できるようにします。
これらのメトリックは、デバッグおよびパフォーマンス分析に使用できます。
これらの段階では、ロードバランササービス内のデータパスメトリックの収集とレポートについて説明します。
この CLI コマンドを使用して、メトリック収集機能を有効にします。
metrics service-stats
有効にすると、モニタリングプログラム(eBPF)が通信特性の観察を開始します。
機能がアクティブ化され、メトリック収集の準備が整います。
eBPF は通信を観察し、各サービスと Pod のパケットとバイトをカウントします。
eBPF はバックグラウンドで動作し、パフォーマンスに影響を与えることなくデータを収集します。
通信メトリックは、サービスおよび Pod ごとに累積されます。
ULB エージェントは、eBPF からカウントを収集し、メトリックとして使用できるようにします。
メトリックは定期的に収集され、デバッグおよびパフォーマンス分析のためにアクセス可能になります。
ULB 動作データパスメトリックにより、通信が ULB eBPF データパスでどのように処理されるかを可視化できます。受信した通信が構成済みの ULB サービスに到達しているかどうかを検出し、セッション確立アクティビティを観察し、ULB が選択した転送パスを理解し、eBPF 処理の失敗を特定します。
メトリックは、累積的な観測内容を提供し、現在アクティブなセッションまたはアソシエーションの実際の数を表すものではありません。デフォルトの 300 秒のエクスポータ更新間隔では、新しく記録されたアクティビティがエクスポートされるまでに最大 5 分かかることがあります。統計マップは、16,384 のサービス/インターフェイス エントリをサポートします。
公開されるメトリックファミリは次のとおりです。
ulb_dp_rx_total
構成された ULB サービスのパケットが、構成されたノードインターフェイス上の ULB eBPF 処理パスに到達していることを確認します。ulb_dp_rx-total メトリックは、サービスおよびレポートインターフェイスを識別し、通信が外部ピアから到着したか、別の参加ノードから到着したかを示します。
ulb_dp_session_total
ulb_dp_session_total 経由で、新しいセッション、接続、フローを識別します。たとえば、新しいアソシエーションに対して処理された SCTP INIT が、このカウンターに加算されます。このメトリックは、開始イベントを報告します。
ulb_dp_forward_total
ULB が ulb_dp_forward-total 経由でサービス通信を転送する方法を理解します。管理者は、ローカル バックエンド アプリケーション Pod 、別の参加ノード上のバックエンド、または別のサポートされている転送パスへの転送アクティビティを区別できます。この情報は、通信が、予想される ULB パスに従っているかどうかを確認するのに役立ちます。
ulb_dp_ebpf_failures
ulb_dp_ebpf_failures 経由で eBPF データパス処理エラーを特定します。エラーは処理理由によってグループ化されるため、パケット検証、サービスルックアップ、バックエンド解決、転送、またはその他の監視対象の ULB 操作中に問題が発生したかどうかを判断するのに役立ちます。これらのカウンタは、ULB データパスによって検出された障害を報告しますが、バックエンド Pod 内のアプリケーションレベルのエラーは報告しません。
クラスター範囲の UlbStats リソースは、運用データパスのカウントを制御します。これらの運用データパスの統計は、デフォルトでは無効になっています。リソースが適用されると、ULB は参加している ULB エージェント Pod に構成を伝播します。構成された eBPF プログラムは、データパス統計を更新し、エクスポータはPrometheus と Grafana の結果のメトリックシリーズを定期的に公開します。