本文へスキップ

Envoyプロキシとは?

えんぼいぷろきしー

Envoyプロキシとは、マイクロサービス向けに設計された高機能なオープンソースのL7プロキシ・通信管理ソフトウェアのことです。

Envoyプロキシ(Envoy Proxy)は、Lyft社が開発しCloud Native Computing Foundation(CNCF)に寄贈したオープンソースのエッジ・サービスプロキシです。マイクロサービスアーキテクチャにおけるサービス間通信の複雑さを抽象化し、可観測性・セキュリティトラフィック管理を一元的に担うことを目的に設計されました。C++で実装されており、高いパフォーマンスと低レイテンシが特徴です。

Envoyはアプリケーションの「サイドカー」として各サービスコンテナの隣に配置されることが多く、アプリケーションはEnvoyを通じてのみ通信を行います。これにより以下のような機能をアプリケーションコードの変更なしに実現できます。

  • 高度なロードバランシング:ラウンドロビン・最小接続数・リングハッシュなど多様なアルゴリズムに対応
  • サービスディスカバリ:xDS APIによる動的な設定更新
  • 可観測性:詳細なメトリクス・分散トレーシング・アクセスログの自動収集
  • TLS終端・mTLS:サービス間通信の暗号化と相互認証
  • サーキットブレーカー・リトライ・タイムアウト:障害伝播を防ぐ回復力向上機能

Envoyはサービスメッシュの主要実装であるIstioのデータプレーンとして採用されており、Kubernetes環境での利用が広がっています。大規模なクラウドネイティブシステムにおける通信基盤として、多くの企業の本番環境で稼働している実績を持ちます。

使い方・例文

KubernetesクラスターでIstioを使う場合、各Podに自動的にEnvoyプロキシがサイドカーとして注入され、サービス間のHTTP通信の暗号化・ロードバランシング・レイテンシ計測がアプリケーションコードを一切変えずに行われます。

この用語をシェア

𝕏 でポスト LINE

最終更新:

関連用語