0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Envoy とは

Posted at

勉強前イメージ

プロキシ的なイメージ持ってたけど、中身はよくわからない

調査

Envoy とは

エンヴォイ と読み、Webサービスのために開発されたロードバランサーで
L4、L7のプロキシのソフトウェア・ツールになります。
マイクロサービスの分散システムの構築や運用を安定させるために開発され、
サービス間のネットワークの制御をライブラリではなくネットワークプロキシとして提供し、
これによってサービスはEnvoyを経由してそれぞれのサービスへ接続します。
また、EnvoyはL7に焦点を当てているので、RedisやMongodb,DynamoDBなどサポートしています。

Envoyの主な特徴

  • 高度な負荷分散

Envoyは自己完結型のプロキシなので、1箇所に実装すればいろんなアプリケーションからアクセスをさせることができます。

  • 豊富な構成API

下位互換性のあるAPIを使用して、データとコントロールプレーンを完全に分離します。

  • ハイパフォーマンス

スループットとレイテンシーの画面に関して高パフォーマンスを発揮できます。

Envoyの主な機能

  • L3/L4フィルターアーキティクチャ

TCPプロキシ、HTTPプロキシ、TLSクライアント証明書認証などをサポートします。

  • HTTP L7フィルターアーキティクチャ

HTTP L7フィルターレイヤーをサポートしており、
バッファリング・レート制御・ルーティング/フォワーディングをサポートします

  • HTTP L7ルーティング

httpモードで動作していたら、パスに基づくリダイレクトリクエストや認証・コンテンツタイプなどをサポートします。

Envoyの構築イメージ・用語

Envoyはサービス間のネットワーク制御をネットワークプロキシとして開発したので、
それぞれEnvoyを通じて別のサービスに接続します。
アプリケーションと同じホスト上にEnvoyを構築して、各サービスは別のサービスを直接参照するのではなく、
ローカルのEnvoyを参照します。

12021-10-25 # Envoy とは - diagrams.net - Google Chro.png

Envoyの構築パターン

  • Edge Proxy

サービス群の中と外の境界のプロキシ

  • Egress Proxy

外部へ接続する際のトラフィックの通信先などを書き換える

  • サービスメッシュ

サービス間の通信をEnvoyを経由して行う

勉強後イメージ

ちゃんとプロキシサーバ作ったことないから、
正直ちょっとむずかしい・・・・
何でもいいから一個つくってみないとわからないのかな

参考

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?