キーワードで検索

今日を知り、明日を変えるシステム運用メディア

【先進事例】Netflix, Meta, GoogleはeBPFをどう活用している?

【先進事例】Netflix, Meta, GoogleはeBPFをどう活用している?

日々のシステム運用業務に追われ、効率化や自動化の新しい手法を探しているインフラエンジニア、SREの方々にとって、eBPFは無視できない技術となっています。

この記事では、eBPFが具体的にどのような価値をもたらすのか、Netflix、Meta、Googleといった先進企業がどのように活用しているのかを、公式情報に基づいて解説します!

eBPFとは何か?が知りたい方は、別記事「3大クラウドも採用する、新しい監視技術「eBPF」とは?」をご覧ください。

Netflix:eBPFによるパフォーマンス分析とネットワーク可視性の追求

世界最大級のストリーミングサービスを支えるNetflixは、eBPFを大規模環境で活用し、パフォーマンス分析とネットワークの可視性向上に役立てています。

特に注目すべきは、マルチテナント環境における「ノイジーネイバー(うるさい隣人)」問題への対策です。 多数のコンテナが同居する環境では、一部のコンテナがCPUリソースを過剰に消費し、他のコンテナのパフォーマンスを低下させることがあります。従来のツールではオーバーヘッドが大きく、問題の特定が困難でした。

そこでNetflixは、eBPFを使い、プロセスがCPUの実行を待つ「スケジューリングキュー」の待機時間を低オーバーヘッドで継続的に監視する仕組みを構築しました。 これにより、パフォーマンス低下の予兆を迅速に捉え、原因究明を効率化しています。

さらに、Netflixは自社で開発した「Flow Exporter」というeBPFベースのサイドカーを活用し、1%未満のCPU、メモリ使用量でリアルタイムに近いTCPフローデータを収集しています。1時間あたり数十億にも上るフローログを分析し、ネットワークの利用状況の予測やセキュリティインシデントの分析に活用しているのです。

参考記事:How Netflix uses eBPF flow logs at scale for network insight

Meta:eBPFが可能にする超大規模ロードバランシング

Meta(旧Facebook)では、データセンターに入ってくるすべてのパケットがeBPFによって処理され、負荷分散されています。

同社が開発し、オープンソースとして公開した「Katran」は、eBPFとXDP(eXpress Data Path)を基盤とする高性能なレイヤー4ロードバランサーです。 ソフトウェアベースでありながら、専用のハードウェアロードバランサーに匹敵するパフォーマンスとスケーラビリティを汎用サーバー上で実現し、膨大なトラフィックを効率的にさばいています。

また、パフォーマンスのボトルネック特定とリソース使用率の最適化を目的としたプロファイラフレームワーク「Strobelight」にもeBPFが活用されています。これにより、Metaは大規模なインフラ全体でCPUサイクルを削減し、サーバーの大幅なキャパシティ節約を実現しました。

参考記事:Open-sourcing Katran, a scalable network load balancer

Google:eBPFで強化するKubernetesのネットワークとセキュリティ

Googleは、eBPFをGoogle Kubernetes Engine(GKE)に統合し、ネットワークとセキュリティの機能を大幅に強化しています。

「GKE Dataplane V2」と呼ばれる新しいデータプレーンは、eBPFを活用したオープンソースプロジェクト「Cilium」を全面的に採用しています。 これにより、LinuxカーネルがeBPFを介してKubernetesのコンテキスト(PodやServiceなど)を認識できるようになり、パフォーマンスを損なうことなく、高度なパケット操作が可能になりました。

この統合によって、GKEユーザーは以下のようなメリットを享受できます。

機能説明
セキュリティKubernetesのネットワークポリシーがeBPFによって強制され、よりきめ細やかで強力な分離が実現します。
可視性GKEのネットワークポリシーログ機能が提供され、どの通信が許可され、どの通信が拒否されたかを詳細に追跡できます。
スケーラビリティカーネル内で直接パケットを処理するため、従来のiptablesベースの方法よりも効率的で、大規模なクラスタでも高いパフォーマンスを維持します。

参考にした事例動画:Security Auditing and Enforcement using eBPF – KP Singh, Google – Full Keynote

まとめ

Netflix、Meta、Googleの事例から、eBPFが単なるパケットフィルタリング技術ではなく、現代の複雑なITインフラが直面する課題を解決するための強力なツールであることがわかります。

企業名主な活用事例解決した課題
Netflixパフォーマンス分析、ネットワークフロー監視マルチテナント環境でのパフォーマンス劣化、ネットワークの可視性不足
Metaレイヤー4ロードバランシング、CPUプロファイリング超大規模トラフィックの効率的な負荷分散、リソース使用率の最適化
GoogleKubernetesのネットワーキング、セキュリティポリシー適用Kubernetesにおけるセキュリティ、可視性、スケーラビリティの向上

これらの企業は、eBPFの「カーネルを安全にプログラムできる」という特性を最大限に活かし、従来は困難だったレベルの可観測性、パフォーマンス、セキュリティを実現しています。

この記事で紹介した事例は、eBPFの可能性のほんの一部に過ぎません。まずは、自社のシステムでどのようなパフォーマンス上の課題があるか、あるいはネットワークのどこがボトルネックになっているかを特定することから始めてみてはいかがでしょうか。

そして、その課題解決の手段として、eBPFの導入を検討してみると良いかもしれません。

24時間365日のシステム運用監視サービス「JIG-SAW OPS」を提供する、JIG-SAW株式会社のOps Today編集部です。 サーバー運用監視実績50,000台の実績をもとに、システム運用監視に役立つ情報をお届けします!

最新情報をお届けします!

最新のITトレンドやセキュリティ対策の情報を、メルマガでいち早く受け取りませんか?ぜひご登録ください

メルマガ登録

最新情報をお届けします!

最新のITトレンドやセキュリティ対策の情報を、メルマガでいち早く受け取りませんか?ぜひご登録ください

メルマガ登録