サービス名を聞いたことぐらいはあるけど、それ以上のことは何もしらなかった App Mesh + Cloud Map です。
セッション
App Mesh + Cloud Map
講師:アマゾン ウェブ サービス ジャパン、シニアエバンジェリスト 亀田氏
App Mesh
- アプリケーションレベルの通信制御を統一する
- サービスメッシュ基盤で行える
- アプリに組み込み不要
- トレーシングやログ、メトリクスの取得ができるようにする
- オブザーバービリティを上げる
- すべてのヘッダーにIDを埋め込むなど
- すべてのアプリケーションに信頼性を高める実装が必要
- ネットワークサービスになる
- 流動性の高い大規模な環境は App Mesh が適切
- ほとんどは ALB でまかなえるケースが多い
- 流動性の高い大規模な環境は App Mesh が適切
- サイドカープロキシで実現される
- マイクロサービスアーキテクチャに対応できる
- Envoy Proxy
- OSS の Envoy Proxy のマネージドサービス
- 利用できるリソース
- ECS, Fargate, EKS, EC2, k8s on EC2
- 利用できる機能
- ALB とほぼ同じ機能が使える
Cloud Map Service Discovery
- 依存リソースへの一貫したアクセス
- 環境に寄らず同じ論理名でリソースにアクセスできる
- ソースコードの管理とネットワークを切り離せる
- ディスカバリ可能なリソース
- Cloud Map 側で切り替える
aws servicediscovery discover-instansec ...
にて--query-parameters Env=Test
のように切替可能
ハンズオン
コンテナ環境を作った後、通信のコンテナを作っていくのでやりがいはあるとのこと。
所感
「流動性の高い大規模な環境は App Mesh が適切」と言ってたとおり、使うケースは早々なさそうなサービスでした。
nginx のサイドカープロキシすら使いこなせてないのに、App Mesh を使いこなせる気がしない。
Cloud Map は便利そうですね。
App Mesh と組み合わせないと利用できないのでしょうか?
単独で使えるなら、複数環境デプロイ時の事故を減らせる気がしました。