ネットワーク ・
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 Connect や EKS の Istio / Linkerd を推奨する方向に変化。App Mesh の新規採用は減少傾向。試験では概念として登場。
4. 仕組み
App Mesh は Envoy プロキシをサイドカーとして各サービスに配置し、すべてのサービス間通信を Envoy 経由にする。
構成要素
- Mesh:論理的なメッシュの単位
- Virtual Service:論理サービス
- Virtual Node:実体(ECS タスク・EKS Pod 等)
- Virtual Router:仮想サービス内のトラフィックルーティング
- Route:ルーティングルール
動作の流れ
- Mesh 作成
- Virtual Service / Virtual Node 定義
- 各サービスのコンテナに Envoy サイドカーを追加
- 通信は Envoy 経由
- App Mesh コントロールプレーンが設定配信
5. ユースケース
ユースケース 1:マイクロサービスのカナリアリリース
新版 10% / 旧版 90% で段階展開。
ユースケース 2:mTLS 自動化
サービス間通信を全て暗号化(コード変更不要)。
ユースケース 3:障害分離
サーキットブレーカーで障害サービスを切り離し。
ユースケース 4:可観測性
全サービス間通信の分散トレース。
6. 関連用語
7. 関連サイト
AWS 公式
参考
🎓 試験での出題傾向
| 試験 | 重要度 | 主な出題パターン |
|---|---|---|
| CLF | − | 出題なし |
| SAA | 中 | サービスメッシュの選択肢 |
| DVA | 中 | マイクロサービス通信制御 |
| SOA | 低 | 出題ほぼなし |