
Service MeshとIstio
Traffic management、observability、security、sidecar、virtual service、gateway、Linkerdとの比較
1マイクロサービスアーキテクチャにおけるIstioのようなservice meshの主な役割は何ですか?
マイクロサービスアーキテクチャにおけるIstioのようなservice meshの主な役割は何ですか?
回答
service meshは、アプリケーションコードを変更せずにtraffic management、observability、security機能を提供することで、マイクロサービス間の通信を管理します。Istioは各podの隣にsidecar proxy(Envoy)を注入し、すべてのネットワークトラフィックをインターセプトして管理します。これにより、retry、timeout、circuit breaking、mTLS、distributed tracingの設定をアプリケーションレベルではなくインフラストラクチャレベルで一元管理できます。
2Istioにおけるsidecarパターンはどのように機能し、デフォルトでどのproxyが使用されますか?
Istioにおけるsidecarパターンはどのように機能し、デフォルトでどのproxyが使用されますか?
回答
Istioはmutating admission webhookを介して、各アプリケーションpodにsidecarとしてEnvoy proxyコンテナを自動的に注入します。このsidecarは、アプリケーションコンテナのすべての受信および送信トラフィックをインターセプトし、コードを変更せずにtraffic management、security、observabilityのポリシーを適用できるようにします。Envoyは、その高性能、最新のプロトコルサポート(HTTP/2、gRPC)、xDS APIsを介したdynamic configurationを処理する能力で選ばれています。
3Istioにおけるcontrol planeとdata planeの違いは何ですか?
Istioにおけるcontrol planeとdata planeの違いは何ですか?
回答
control plane(Istiod)は構成を管理し、サービスを発見し、xDS APIsを介してproxyにルールを配布します。service discovery用のPilot、certificate management用のCitadel、configuration validation用のGalleyが含まれています。data planeは、サービス間のリクエストをインターセプトしてルーティングすることでトラフィックルールを実行するEnvoy sidecarで構成されています。Istiodはアプリケーショントラフィックに触れることはなく、sidecarだけがそれを行います。
IstioにおけるVirtualServiceの役割は何ですか?
IstioにおけるGatewayとVirtualServiceの違いは何ですか?
+21 面接問題