ネットワーク

AWS App Mesh とは?サービスメッシュとマイクロサービス通信制御

AWS App Mesh は マイクロサービス間通信を統一的に管理するサービスメッシュ。Envoy プロキシをサイドカーとして各サービスにデプロイし、通信ルーティング・トラフィック制御・サーキットブレーカー・分散トレース を一元的に管理できる。Istio に近い概念だが A...

マイクロサービス間通信を管理するサービスメッシュ。Envoy プロキシベースで通信制御・可観測性を提供。


1. 概要(端的に)

AWS App Mesh は マイクロサービス間通信を統一的に管理するサービスメッシュ。Envoy プロキシをサイドカーとして各サービスにデプロイし、通信ルーティング・トラフィック制御・サーキットブレーカー・分散トレース を一元的に管理できる。Istio に近い概念だが AWS マネージド。


2. 何ができるか

  • トラフィック制御:重み付けルーティング・カナリアリリース
  • タイムアウト・リトライ:サービス間通信の信頼性向上
  • サーキットブレーカー:障害時の連鎖防止
  • mTLS(相互 TLS):サービス間暗号化通信
  • 可観測性:CloudWatch / X-Ray / Prometheus 統合
  • ECS / EKS / Fargate / EC2 対応:プラットフォーム横断

3. 特徴

観点特徴
基盤Envoy プロキシ
追加料金App Mesh 自体は無料(Envoy 実行リソース料金のみ)
**対応ECS / EKS / Fargate / EC2
設定モデルサービスメッシュ + 仮想サービス + 仮想ノード
mTLSあり
学習コスト高(Envoy / サービスメッシュの知識必要)

注意:AWS の方針変化

近年、AWS は ECS Service ConnectEKS の Istio / Linkerd を推奨する方向に変化。App Mesh の新規採用は減少傾向。試験では概念として登場。


4. 仕組み

App Mesh は Envoy プロキシをサイドカーとして各サービスに配置し、すべてのサービス間通信を Envoy 経由にする。

構成要素

  • Mesh:論理的なメッシュの単位
  • Virtual Service:論理サービス
  • Virtual Node:実体(ECS タスク・EKS Pod 等)
  • Virtual Router:仮想サービス内のトラフィックルーティング
  • Route:ルーティングルール

動作の流れ

  1. Mesh 作成
  2. Virtual Service / Virtual Node 定義
  3. 各サービスのコンテナに Envoy サイドカーを追加
  4. 通信は Envoy 経由
  5. App Mesh コントロールプレーンが設定配信

5. ユースケース

ユースケース 1:マイクロサービスのカナリアリリース

新版 10% / 旧版 90% で段階展開。

ユースケース 2:mTLS 自動化

サービス間通信を全て暗号化(コード変更不要)。

ユースケース 3:障害分離

サーキットブレーカーで障害サービスを切り離し。

ユースケース 4:可観測性

全サービス間通信の分散トレース。


6. 関連用語


7. 関連サイト

AWS 公式

参考


🎓 試験での出題傾向

試験重要度主な出題パターン
CLF出題なし
SAAサービスメッシュの選択肢
DVAマイクロサービス通信制御
SOA出題ほぼなし