SlideShare a Scribd company logo
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS 公式 Webinar
https://amzn.to/JPWebinar
過去資料
https://amzn.to/JPArchive
Solutions Architect, Containers
Masatoshi Hayashi
2020/07/21
AWS App Mesh
サービスカットシリーズ
[AWS Black Belt Online Seminar]
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
自己紹介
• Specialist Solutions Architect, Containers
• AWSのコンテナ関連サービスを担当
• 好きなサービス
• Amazon EKS
• AWS Certificate Manager
林 政利
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS Black Belt Online Seminar とは
「サービス別」「ソリューション別」「業種別」のそれぞれのテーマに分かれて、アマゾ
ン ウェブ サービス ジャパン株式会社が主催するオンラインセミナーシリーズです。
質問を投げることができます!
• 書き込んだ質問は、主催者にしか見えません
• 今後のロードマップに関するご質問は
お答えできませんのでご了承下さい
① 吹き出しをクリック
② 質問を入力
③ Sendをクリック
Twitter ハッシュタグは以下をご利用ください
#awsblackbelt
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
内容についての注意点
• 本資料では2020年7月21日現在のサービス内容および価格についてご説明しています。最新の
情報はAWS公式ウェブサイト(http://aws.amazon.com)にてご確認ください。
• 資料作成には十分注意しておりますが、資料内の価格とAWS公式ウェブサイト記載の価格に相
違があった場合、AWS公式ウェブサイトの価格を優先とさせていただきます。
• 価格は税抜表記となっています。日本居住者のお客様には別途消費税をご請求させていただきま
す。
• AWS does not offer binding price quotes. AWS pricing is publicly available and is
subject to change in accordance with the AWS Customer Agreement available at
http://aws.amazon.com/agreement/. Any pricing information included in this
document is provided only as an estimate of usage charges for AWS services based on
certain information that you have provided. Monthly charges will be based on your
actual use of AWS services, and may vary from the estimates provided.
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
本セミナーの概要
• 本セミナーで学習できること
• サービスメッシュとはどのようなものか
• AWS App Meshとはどのようなサービスか
• AWS App Meshの使いどころや具体的な機能
• 対象者
• マイクロサービスの導入を検討していて、サービスメッシュ
に興味がある方
• App Meshを聞いたことがあるが、実際にどのように役立て
ることができるか調査中の方
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
本日のアジェンダ
• サービスメッシュとは何か
• AWS App Mesh
• 概要
• 利用方法
• 機能と活用例
• ロードマップ
• 価格体系
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• サービスメッシュとは何か
• AWS App Mesh
• 概要
• 利用方法
• 機能と活用例
• ロードマップ
• 価格体系
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
サービスメッシュとは
アプリケーションレベルの通信を、アプリケーション自身が制御するのではなく
インフラストラクチャーで制御できるようにする技術
Node.js Java
Go
Rubyhttp/tcp
http/tcp
http/tcp
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
サービスメッシュがない場合
• HTTP通信のリトライやタイムアウト
• 通信のトレーシングやログ、メトリクスの取得
• TLSを使用した暗号化通信
アプリケーションレベルの通信制御を、アプリケーション自身に組み込む
Node.js Java
Go
Rubyhttp/tcp
http/tcp
http/tcp
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
サービスメッシュがある場合
• HTTP通信のリトライやタイムアウト
• 通信のトレーシングやログ、メトリクスの取得
• TLSを使用した暗号化通信
アプリケーションレベルの通信制御を、サービスメッシュの基盤で行うので、
アプリケーションに組み込む必要がなくなる
Node.js Java
Go
Rubyhttp/tcp
http/tcp
http/tcp
サービスメッシュ基盤
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
サービスメッシュを実現するAWS App Mesh
Node.js Java
Go
Rubyhttp/tcp
http/tcp
http/tcp
• HTTP通信のリトライやタイムアウト
• 通信のトレーシングやログ、メトリクスの取得
• TLSを使用した暗号化通信
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
サービスメッシュが求められるようになった背景
現代のシステムは、複数の言語、アーキテクチャ、アプリケーションで構成
クラウドにより多様な環境が簡単に作成できるようになった
マイクロサービスアーキテクチャの採用
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
多様なアプリケーションが通信しながらシステムを構成
Node.js
チームA
VM
Java
チームB
コンテナ
コンテナ
Go
チームC
VM
Ruby
Rust
チームごとに最適な技術を選択してアプリケーションを動かす
プログラミング言語だけでなく、VMやコンテナなど様々な技術を選択できる
多様なアプリケーションが通信している構成
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ネットワークは信頼できない
• ネットワークが遅延するかもしれない
• 帯域幅が狭くなっているかもしれない
• セキュアでないかもしれない
• ネットワーク先のアプリケーションが障害中
かもしれない
? ?
?
?
?
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
信頼性を高めるためのアプリケーション実装
全てのアプリケーションに、信頼性を高める
実装が必要
• 通信エラー時のリトライ処理
• 遅延時のタイムアウト処理
• 暗号化通信
• etc.
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
通信の可観測性(Observability)も必要
• システム全体で、通信の状況がどうなっているのか
把握する仕組みが必要
• メトリクス
• 通信の状況が時間でどう変化してきたか
• トレース
• ある時間帯の通信がどのようになっていたか
• ログ
• 通信に関する詳細な情報
?
?
?
?
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
通信の可観測性がないと…
• エラーが発生した場合に、どこで何が起こったのか
追うことができない
• チームをまたいだ調査依頼が発生
• エラーログ
• レイテンシー
• タイムアウトやリトライの設定
• それでも情報がなく状況が把握できないことも
?
?
?
?
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
通信の可観測性を確保する実装
全てのアプリケーションに、通信状況を統一された
フォーマットで出力する機能が必要
可観測性の情報を収集するシステム
メトリクス / トレース / ログ
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
全てのアプリケーションに、同じような通信の仕組みが必要
• 信頼性の確保
• リトライやタイムアウト、暗号化通信の実装
• 可観測性の確保
• メトリクスやトレース、ログの出力と収集
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
アプリケーションレベルの通信制御を共通化する必要性
• 品質の担保
• アプリケーションごとに品質が異なるリスク
• そもそも何にも制御していないかも
• ライフサイクルの統一
• メトリクスやトレース、ログのフォーマット
• 社内セキュリティ基準への対応
• 実装コスト
• 全アプリケーションに実装するコスト
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ライブラリによる通信制御の共通化
共通ライブラリ
チームX
Node.is Java Go Rust
Node.js Java
Go
Rust
チームA チームB
チームC
通信の仕組みを共通ライブラリに実装して配る
• リトライやタイムアウトなど信頼性確保の実装
• メトリクスやトレースなど可観測性確保の実装
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
共通ライブラリ
チームX
Node.is Java Go Rust
通信の仕組みを共通ライブラリに実装して配る??
• リトライやタイムアウトなど信頼性確保の実装
• メトリクスやトレースなど可観測性確保の実装
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
アプリケーション開発チームでの共通ライブラリの課題
• 使用している言語のライブラリが無い
• 使用している言語のライブラリが保守されない
• 共通ライブラリを入れると依存関係が衝突する
• VMだと動かない、コンテナだと動かない、 XX環境だと動かない
Node.js Java Go
Rust
チームA チームB チームC
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
共通ライブラリを開発する側の課題
• 多数の言語やSDKに習熟する必要があって負担が大きい
• 言語ごと、チームごとに配布方法を考える必要があって負担が大きい
• システムの規模、アプリケーション数に応じて開発リソースがスケールしない
共通ライブラリ
チームX
Node.is Java Go Rust PythonRuby
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
結局、何が課題の原因なのか?
Node.js
Java
Go
• 通信の処理と、アプリケーションの密結合
• システムロジックと業務ロジックは運用もライフ
サイクルも違う
通信の処理は共通化が求められるが、
アプリケーションコードの技術に合わせて
実装しなければならないジレンマ
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
http/tcp
Proxy
アプリケーション間の通信をプロキシして、通信制御を行うプロセス
通信の処理を別のプロセスに切りはなすというアイデア
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
サービスメッシュ
アプリケーションレベルの通信を、アプリケーション自身が制御するのではなく
インフラストラクチャーで制御できるようにする技術
Node.is
Java
Go
Rubyhttp/tcp
http/tcp
http/tcp
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
サービスメッシュの仕組み
アプリケーションレベルの通信を制御するプロキシを配置する
Node.is
Java
Go
Rubyhttp/tcp
http/tcp
http/tcp
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
サービスメッシュの仕組み
プロキシをコントロールプレーンで管理
=> アプリケーションレベルの通信制御を、基盤で実施できるようにする
Node.is
Java
Go
Rubyhttp/tcp
http/tcp
http/tcp
Control plane
サービスメッシュ基盤
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Proxyに、通信制御に関する実装が必要
• 信頼性
• リトライ
• タイムアウト
• 暗号化通信、etc.
• 可観測性
• メトリクスやトレース、ログの出力
サービスメッシュを実現するために必要な機能
Proxy
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
サービスプロキシを開発するOSSプロジェクト
活発なコミュニティと多くのインテグレーション
CNCFのGraduated Project
プロダクション環境での利用事例が多い
Lyft社が2016年に開始
Envoy Proxy
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Envoyでサービスメッシュを構築する
Node.is
Java
Go
Rubyhttp/tcp
http/tcp
http/tcp
アプリケーションレベルの通信制御を行うプロキシとして、Envoyを利用できる
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Envoyでサービスメッシュを構築する
Node.is
Java
Go
Rubyhttp/tcp
http/tcp
http/tcp
Envoyを管理するコントロールプレーンを導入
Control plane
サービスメッシュ基盤
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS App Mesh
Node.is
Java
Go
Rubyhttp/tcp
http/tcp
http/tcp
Envoyを管理するコントロールプレーンを提供し、サービスメッシュを実現する
マネージドサービス
Control plane
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• サービスメッシュとは何か
• AWS App Mesh
• 概要
• 利用方法
• 機能と活用例
• ロードマップ
• 価格体系
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS App Meshとは?
Node.is
Java
Go
Rubyhttp/tcp
http/tcp
http/tcp
サービスメッシュを提供し、アプリケーションレベルの通信をアプリケーション
自身ではなく、App Meshで設定、制御できるようにするマネージドサービス
Control plane
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS App Mesh
アプリケーション間がどのように通信するか
ネットワークモデルを定義できる
http/tcp
Control plane
サービスメッシュを管理するコントロールプレーンを提供する
ネットワークモデルをEnvoyの設定に変換して配信
通信方法の詳細は、アプリケーションではなく
App Meshのレイヤーで制御される
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Meshのネットワークモデル
1. 通信元のアプリケーションは、通信先をサービスディスカバリー
で見つけてトラフィックを投げる
2. トラフィックがロードバランサーに到達する
3. ロードバランサーは複数の通信先にトラフィックを振り分ける
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Meshのモデルと実際のアプリケーションを紐付け
Amazon EC2 AWS Fargate
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Meshの動作イメージ / 前提
アプリケーション
A
EC2 Instance
アプリケーション
B
EC2 Instance
http/tcp
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Meshの動作イメージ / Envoy Proxyの導入
アプリケー
ションA
EC2 Instance
アプリケー
ションB
EC2 Instance
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Meshの動作イメージ / App Meshのモデルを適用
アプリケー
ションA
EC2 Instance
アプリケー
ションB
EC2 Instance
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Meshのモデル上で設定できる通信制御の例
• リトライやタイムアウトを設定
• 証明書を利用したアプリケーション間の暗号化通信
• 比重を設定してトラフィックを振り分け => Canary
• etc.
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Meshにおけるトップレベルの概念
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Meshにおけるトップレベルの概念
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Virtual Node
アプリケーションへの論理的なポインター
Envoyの環境変数でVirtual Node名を設定
できる
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Virtual Service
アプリケーションの通信先を表す
サービスディスカバリー上のサービスで、
ここにリクエストを投げると後続のVirtual Nodeに
ルーティングされる
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Virtual Router
通信を複数のVirtual Nodeにルーティング
するルーターまたはロードバランサー
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Listener
Virtual Nodeで、どのようにトラフィックを
受け付けるか
• プロトコル(http、http2、grpc、tcp)
• ポート番号
• 内部的にはEnvoyがこの設定を取得してリクエスト
を受け付けるプロトコルやポートを設定
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Backend
送信先として想定されるVirtual Service
• デフォルトではBackendとして設定されていない宛先には
通信できない(※)
• Backendでない宛先に送信できるよう設定で変更できる
※ AWS APIを呼び出す目的で*.amazonaws.comにはアクセス可能
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Meshの構築
Backend
Listener
• Virtual Nodeは、実際のアプリケーションを表す
• Virtual Nodeが、BackendのVirtual Serviceへ通信する
• トラフィックはVirtual RouterでVirtual Nodeに振り分けられる
• Virtual Nodeは、設定されたListenerで通信を受け付ける
Mesh
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• サービスメッシュとは何か
• AWS App Mesh
• 概要
• 利用方法
• 機能と活用例
• ロードマップ
• 価格体系
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
利用できるインフラストラクチャー
Amazon ECS
AWS Fargate
Amazon EKS
Amazon EC2
Kubernetes on EC2
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon EC2での利用イメージ
アプリケーションA
EC2 Instance
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon EC2での利用イメージ
Management ConsoleやCLIでMeshを作成する
アプリケーションA
EC2 Instance
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon EC2での利用イメージ
アプリケー
ションA
EC2 Instance
docker run -e
“APPMESH_VIRTUAL_NODE_
NAME=<Virtual Node名>” …
Envoyを導入
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon EC2での利用イメージ
アプリケー
ションA
EC2 Instance
docker run xxx/aws-
appmesh-proxy-route-
manager …
ネットワーク管理イメージを導入
※ iptablesのルールを管理して通信をenvoy経由にする
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon EC2での利用イメージ
アプリケー
ションA
EC2 Instance
アプリケー
ションB
EC2 Instance
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon ECS / AWS Fargateでの利用イメージ
アプリケーションA
ECS Task
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon ECS / AWS Fargateでの利用イメージ
アプリケーションA
ECS Task
Management ConsoleやCLIでMeshを作成する
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon ECS / AWS Fargateでの利用イメージ
アプリケー
ションA
ECS Task
Management ConsoleやCLIでMesh統合を有効にする
ECSタスク定義が更新され、Envoyが導入される
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon EKS / Fargate for EKS / Kubernetes on EC2での利用イメージ
https://github.com/aws/aws-app-mesh-controller-for-k8s
AWS App Mesh Controller For K8s
• 2020年6月にGA
• 主な機能
• App Meshのリソースを
Kubernetes上で管理
• PodをApp Meshを利用す
るよう更新
• GA前は、上記二つがそれぞれ
別のコントローラーで提供
• App Mesh Controller
• App Mesh Inject
App Mesh
Controller
Mesh,
VirtualNode,
etc…
Kubernetesクラスタ
App Meshのリソースを
CRDで管理
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon EKS / Fargate for EKS / Kubernetes on EC2での利用イメージ
App Mesh
Controller
Pod
AWS App Mesh Controller For K8sを導入
$ helm repo add eks https://aws.github.io/eks-charts
$ kubectl apply -k github.com/aws/eks-charts/stable/appmesh-
controller//crds?ref=master
$ kubectl create ns appmesh-system
$ helm upgrade -i appmesh-controller eks/appmesh-controller -n appmesh-system
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Mesh
Controller
Pod
App Mesh用のCustom Resourceをインストールする
kubectl apply -f vn-a.yaml
Amazon EKS / Fargate for EKS / Kubernetes on EC2での利用イメージ
apiVersion: appmesh.k8s.aws/v1beta2
kind: VirtualNode
metadata:
name: my-service-a
Mesh,
VirtualNode,
etc…
https://github.com/aws/aws-app-mesh-controller-for-k8s/blob/master/docs/reference/api_spec.md
App Mesh ControllerのCRD
• Mesh
• VirtualNode
• VirtualService
• VirtualRouter
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Mesh
Controller
Pod
App Mesh ControllerがApp Meshのリソースを作成する
Amazon EKS / Fargate for EKS / Kubernetes on EC2での利用イメージ
Mesh,
VirtualNode,
etc…
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Mesh
Controller
Pod
アプリケーションをデプロイする
アプリケー
ションA
Deployment
kubectl apply -f deployment.yaml
Amazon EKS / Fargate for EKS / Kubernetes on EC2での利用イメージ
Mesh,
VirtualNode,
etc…
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Mesh
Controller
Pod
App Mesh ControllerがEnvoyをPodにInjectして設定する
アプリケー
ションA
Pod
Inject
Amazon EKS / Fargate for EKS / Kubernetes on EC2での利用イメージ
Mesh,
VirtualNode,
etc…
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
様々なインフラストラクチャーを一つのMeshで管理できる
Amazon ECS
AWS Fargate
Amazon EKSAmazon EC2
Kubernetes on EC2
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• サービスメッシュとは何か
• AWS App Mesh
• 概要
• 利用方法
• 機能と活用例
• ロードマップ
• 価格体系
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• AWS App Meshのセキュリティ機能
• AWS App Meshで利用できる機能
• 通信可観測性を確保する
• カナリアリリース
機能と活用方法
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Mesh Security of the Cloud
アプリケー
ションA
通信経路
• App Meshの設定データの暗号化
(配布時、保存時)
• Control Planeの可用性確保(Multi-
AZ構成)
• Control Planeの自動バックアップ
• AWS PrivateLinkによるAWSネット
ワークに閉じたEnvoy-Control
Plane間通信
• Envoyコンテナイメージの脆弱性ス
キャンとパッチ適用
https://docs.aws.amazon.com/app-mesh/latest/userguide/security.html
App Meshの構成の内、AWSが管理するところのセキュリティ
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Mesh Security in the Cloud
アプリケー
ションA
通信経路
• App MeshのAPIに対するIAM権限
• セキュリティパッチが適用された
Envoyコンテナイメージのデプロイ
• AWS CloudTrailでApp Mesh操作の
証跡を監査
https://docs.aws.amazon.com/app-mesh/latest/userguide/security.html
App Meshでお客様が管理できるセキュリティ
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
App Meshで利用できる機能
クライアントサイドのロードバランシング
HTTPヘッダーベースのルーティング
Pathベースのルーティング
HTTP, HTTP2, gRPC, TCPのサポート
リトライポリシー
End-to-endのTLS暗号化
CloudWatch Logs and Metrics
AWS X-Ray Tracing
Envoyがサポートしている Metrics (StatsD, Prometheus)
EnvoyがサポートしているTracing(Zipkin, Jaeger)
Egress Traffic Policies
AWS Cloud Map Service Discovery
クロスアカウントのサポート
Kubernetes Controller
タイムアウトのサポート
Ingress Gateway
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
活用例: コンテナアプリケーションの通信可観測性
• メトリクス
• そのシステムで通信の状況が時間でどう変化してきたか
• トレース
• システム全体のある時間帯の通信がどのようになっていたか
• ログ
• あるコンポーネントの通信に関する詳細な情報
AWS Fargate
App(front) App(back)
システム全体で、通信の状況がどうなっているのか把握する
ECS Service ECS Service
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
活用例: コンテナアプリケーションの通信可観測性
• メトリクス
• Amazon CloudWatch
• トレース
• AWS X-Ray
• ログ
• Amazon CloudWatch Logs
可観測性のためにApp Meshと連携できるAWSのサービス
AWS Fargate
App(front) App(back)
ECS Service ECS Service
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
活用例: コンテナアプリケーションの通信可観測性
CloudWatchと連携して通信のメトリクスを取得する
AWS Fargate
App(front) App(back)
ECS Service ECS Service
ENABLE_ENVOY_DOG_STATSD = 1
Envoy Proxyコンテナに環境変数を設定し、StatsD形式のメトリクス
を8125ポートで公開するよう設定する
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
活用例: コンテナアプリケーションの通信可観測性
CloudWatchと連携して通信のメトリクスを取得する
AWS Fargate
App(front) App(back)
ECS Service ECS Service
cw cw
"metrics_collected": { "statsd": {}}
CloudWatch Agentをサイドカーとしてデプロイし、8125ポートで公開
されているメトリクスを取得するよう設定する
※ CloudWatch Agentのコンテナイメージは、以下を参考にビルドする
https://github.com/aws-samples/aws-app-mesh-cloudwatch-agent/blob/master/Dockerfile
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
活用例: コンテナアプリケーションの通信可観測性
CloudWatchと連携して通信のメトリクスを取得する
AWS Fargate
App(front) App(back)
ECS Service ECS Service
cw cw
CloudWatch Agentが、Envoyが公開するStatsDメトリクスをCloudWatchに
送信する
Amazon CloudWatch
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
活用例: コンテナアプリケーションの通信可観測性
CloudWatchと連携して通信のメトリクスを取得する
CloudWatchに通信の
メトリクスが集まる
• Dashboardを作成して
一覧性を高める
• アラームを設定して
閾値を超えたら通知する
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
X-Rayで通信をトレースする
活用例: コンテナアプリケーションの通信可観測性
AWS Fargate
App(front) App(back)
ECS Service ECS Service
cw cw
Amazon CloudWatch
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
X-Rayで通信をトレースする
活用例: コンテナアプリケーションの通信可観測性
AWS Fargate
App(front) App(back)
ECS Service ECS Service
cw cwX-Ray X-Ray
X-Rayデーモンのコンテナ(amazon/aws-xray-daemon)をサイドカーとして
デプロイ(※) ※ 詳細は「Amazon ECS で X-Ray デーモンを実行する」を参照
https://docs.aws.amazon.com/ja_jp/xray/latest/devguide/xray-daemon-ecs.html
Amazon CloudWatch
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
X-Rayで通信をトレースする
活用例: コンテナアプリケーションの通信可観測性
AWS Fargate
App(front) App(back)
ECS Service ECS Service
cw cwX-Ray X-Ray
Envoyに環境変数を設定し、X-Rayデーモンにトレースデータを送信する
ENABLE_ENVOY_XRAY_TRACING = 1
Amazon CloudWatch
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
X-Rayで通信をトレースする
活用例: コンテナアプリケーションの通信可観測性
AWS Fargate
App(front) App(back)
ECS Service ECS Service
cw cwX-Ray X-Ray
X-RayデーモンがAWS X-RayにEnvoyのトレースデータを中継する
AWS X-Ray
Amazon CloudWatch
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
X-Rayで通信をトレースする
活用例: コンテナアプリケーションの通信可観測性
メトリクスで異常があったときに、
どこに遅延やエラーがあるか確認
できる
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
CloudWatch Logsでアクセスログを表示する
活用例: コンテナアプリケーションの通信可観測性
AWS Fargate
App(front) App(back)
ECS Service ECS Service
cw cwX-Ray X-Ray
AWS X-Ray
Amazon CloudWatch
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
CloudWatch Logsでアクセスログを表示する
活用例: コンテナアプリケーションの通信可観測性
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
CloudWatch Logsでアクセスログを表示する
活用例: コンテナアプリケーションの通信可観測性
AWS Fargate
App(front) App(back)
ECS Service ECS Service
cw cwX-Ray X-Ray
AWS X-Ray
Amazon CloudWatch
Virtual Nodeの設定で、
Envoyにアクセスログを
/dev/stdoutに出力する
よう設定
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
CloudWatch Logsでアクセスログを表示する
活用例: コンテナアプリケーションの通信可観測性
AWS Fargate
App(front) App(back)
ECS Service ECS Service
cw cwX-Ray X-Ray
AWS X-Ray
Amazon CloudWatch / CloudWatch Logs
awslogsログドライバーが
/dev/stdoutに出力されたアクセス
ログをCloudWatch Logsに送信 Envoyアクセスログの送信
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
CloudWatch Logsでアクセスログを表示する
活用例: コンテナアプリケーションの通信可観測性
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
エラー、遅延が発生したときに状況を把握する
活用例: コンテナアプリケーションの通信可観測性
• メトリクス
• Amazon CloudWatch
• 異常やアラームが発生したことを把握する
• トレース
• AWS X-Ray
• アラームが発生したとき、どのような通信状況だったか把握する
• ログ
• Amazon CloudWatch Logs
• トレースで特定したコンポーネントの処理を確認する
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
活用例: カナリアリリース
66%
33%
Virtual Routerによる通信先の振り分け
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
活用例: カナリアリリース
66%
33%
AWS Fargate
EC2上のアプリケーション
をFargateに移行する際に
カナリアリリースを行う例
Amazon EC2
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• サービスメッシュとは何か
• AWS App Mesh
• 概要
• 利用方法
• 機能と活用例
• ロードマップ
• 価格体系
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS App Meshのロードマップ
github.com/aws/aws-app-mesh-roadmap
#33 AWS Lambdaとの連携
LambdaをMeshに追加できるようにする(EnvoyからLambdaを起動する)
#6 Circuit Breaker
閾値を超えてエラーや遅延が発生している呼び出しを一時的に遮断する
#34 サービス間認証
mTLSでサービス間の認証を行う
#61 CloudWatchとの統合を進める
EnvoyとCloudWatchの連携を、もっとManagedなレベルで行う
#107 Rate Limiting
Virtual Nodeへの入出力にレートリミットを設ける
※ 2020年7月時点のロードマップアイテムからピックアップ
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• サービスメッシュとは何か
• AWS App Mesh
• 概要
• 利用方法
• 機能と活用例
• ロードマップ
• 価格体系
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
利用料金
• App Meshの利用による追加料金はない
• Envoy Proxyを稼働するためのリソースに
対して料金が発生
• AWS X-Ray、Amazon CloudWatch Logsなど
連携先のサービスの料金が発生
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
まとめ
http/tcp
Control plane
Envoyを管理するコントロールプ
レーンを提供し、サービスメッシュ
を実現するマネージドサービス
EC2, ECS, EKS, Kubernetes on
EC2で利用可能
多種多様な技術で稼働する多数のア
プリケーションの通信をインフラレ
イヤーで制御できる
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
手を動かしながら理解する
AWS App Mesh Workshop
https://www.appmeshworkshop.com/
App Meshの機能と利用方法を理解するための
ワークショップ
aws / aws-app-mesh-examples
https://github.com/aws/aws-app-mesh-examples
クロスアカウント、gRPCの利用、リトライ、Header
ベースルーティングなど、活用例を手を動かして確認
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Q&A
お答えできなかったご質問については
AWS Japan Blog 「https://aws.amazon.com/jp/blogs/news/」にて
後日掲載します。
© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS 公式 Webinar
https://amzn.to/JPWebinar
過去資料
https://amzn.to/JPArchive
ご視聴ありがとうございました

More Related Content

What's hot

AWS Black Belt Online Seminar 2018 AWS Certificate Manager
AWS Black Belt Online Seminar 2018 AWS Certificate ManagerAWS Black Belt Online Seminar 2018 AWS Certificate Manager
AWS Black Belt Online Seminar 2018 AWS Certificate Manager
Amazon Web Services Japan
 
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
Amazon Web Services Japan
 
20210526 AWS Expert Online マルチアカウント管理の基本
20210526 AWS Expert Online マルチアカウント管理の基本20210526 AWS Expert Online マルチアカウント管理の基本
20210526 AWS Expert Online マルチアカウント管理の基本
Amazon Web Services Japan
 
20190806 AWS Black Belt Online Seminar AWS Glue
20190806 AWS Black Belt Online Seminar AWS Glue20190806 AWS Black Belt Online Seminar AWS Glue
20190806 AWS Black Belt Online Seminar AWS Glue
Amazon Web Services Japan
 
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
Amazon Web Services Japan
 
20190410 AWS Black Belt Online Seminar Amazon Elastic Container Service for K...
20190410 AWS Black Belt Online Seminar Amazon Elastic Container Service for K...20190410 AWS Black Belt Online Seminar Amazon Elastic Container Service for K...
20190410 AWS Black Belt Online Seminar Amazon Elastic Container Service for K...
Amazon Web Services Japan
 
20190731 Black Belt Online Seminar Amazon ECS Deep Dive
20190731 Black Belt Online Seminar Amazon ECS Deep Dive20190731 Black Belt Online Seminar Amazon ECS Deep Dive
20190731 Black Belt Online Seminar Amazon ECS Deep Dive
Amazon Web Services Japan
 
20190522 AWS Black Belt Online Seminar AWS Step Functions
20190522 AWS Black Belt Online Seminar AWS Step Functions20190522 AWS Black Belt Online Seminar AWS Step Functions
20190522 AWS Black Belt Online Seminar AWS Step Functions
Amazon Web Services Japan
 
20191023 AWS Black Belt Online Seminar Amazon EMR
20191023 AWS Black Belt Online Seminar Amazon EMR20191023 AWS Black Belt Online Seminar Amazon EMR
20191023 AWS Black Belt Online Seminar Amazon EMR
Amazon Web Services Japan
 
20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager
Amazon Web Services Japan
 
20190821 AWS Black Belt Online Seminar AWS AppSync
20190821 AWS Black Belt Online Seminar AWS AppSync20190821 AWS Black Belt Online Seminar AWS AppSync
20190821 AWS Black Belt Online Seminar AWS AppSync
Amazon Web Services Japan
 
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
Amazon Web Services Japan
 
20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)
20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)
20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)
Amazon Web Services Japan
 
20200526 AWS Black Belt Online Seminar AWS X-Ray
20200526 AWS Black Belt Online Seminar AWS X-Ray20200526 AWS Black Belt Online Seminar AWS X-Ray
20200526 AWS Black Belt Online Seminar AWS X-Ray
Amazon Web Services Japan
 
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
Amazon Web Services Japan
 
AWS Black Belt Online Seminar 2017 AWS Storage Gateway
AWS Black Belt Online Seminar 2017 AWS Storage GatewayAWS Black Belt Online Seminar 2017 AWS Storage Gateway
AWS Black Belt Online Seminar 2017 AWS Storage Gateway
Amazon Web Services Japan
 
202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤
202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤
202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤
Amazon Web Services Japan
 
AWS Black Belt Online Seminar AWS Key Management Service (KMS)
AWS Black Belt Online Seminar AWS Key Management Service (KMS) AWS Black Belt Online Seminar AWS Key Management Service (KMS)
AWS Black Belt Online Seminar AWS Key Management Service (KMS)
Amazon Web Services Japan
 
AWS Black Belt Online Seminar 2017 Amazon Kinesis
AWS Black Belt Online Seminar 2017 Amazon KinesisAWS Black Belt Online Seminar 2017 Amazon Kinesis
AWS Black Belt Online Seminar 2017 Amazon Kinesis
Amazon Web Services Japan
 
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
Amazon Web Services Japan
 

What's hot (20)

AWS Black Belt Online Seminar 2018 AWS Certificate Manager
AWS Black Belt Online Seminar 2018 AWS Certificate ManagerAWS Black Belt Online Seminar 2018 AWS Certificate Manager
AWS Black Belt Online Seminar 2018 AWS Certificate Manager
 
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
 
20210526 AWS Expert Online マルチアカウント管理の基本
20210526 AWS Expert Online マルチアカウント管理の基本20210526 AWS Expert Online マルチアカウント管理の基本
20210526 AWS Expert Online マルチアカウント管理の基本
 
20190806 AWS Black Belt Online Seminar AWS Glue
20190806 AWS Black Belt Online Seminar AWS Glue20190806 AWS Black Belt Online Seminar AWS Glue
20190806 AWS Black Belt Online Seminar AWS Glue
 
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
20191029 AWS Black Belt Online Seminar Elastic Load Balancing (ELB)
 
20190410 AWS Black Belt Online Seminar Amazon Elastic Container Service for K...
20190410 AWS Black Belt Online Seminar Amazon Elastic Container Service for K...20190410 AWS Black Belt Online Seminar Amazon Elastic Container Service for K...
20190410 AWS Black Belt Online Seminar Amazon Elastic Container Service for K...
 
20190731 Black Belt Online Seminar Amazon ECS Deep Dive
20190731 Black Belt Online Seminar Amazon ECS Deep Dive20190731 Black Belt Online Seminar Amazon ECS Deep Dive
20190731 Black Belt Online Seminar Amazon ECS Deep Dive
 
20190522 AWS Black Belt Online Seminar AWS Step Functions
20190522 AWS Black Belt Online Seminar AWS Step Functions20190522 AWS Black Belt Online Seminar AWS Step Functions
20190522 AWS Black Belt Online Seminar AWS Step Functions
 
20191023 AWS Black Belt Online Seminar Amazon EMR
20191023 AWS Black Belt Online Seminar Amazon EMR20191023 AWS Black Belt Online Seminar Amazon EMR
20191023 AWS Black Belt Online Seminar Amazon EMR
 
20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager20200212 AWS Black Belt Online Seminar AWS Systems Manager
20200212 AWS Black Belt Online Seminar AWS Systems Manager
 
20190821 AWS Black Belt Online Seminar AWS AppSync
20190821 AWS Black Belt Online Seminar AWS AppSync20190821 AWS Black Belt Online Seminar AWS AppSync
20190821 AWS Black Belt Online Seminar AWS AppSync
 
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
20201111 AWS Black Belt Online Seminar AWS CodeStar & AWS CodePipeline
 
20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)
20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)
20190604 AWS Black Belt Online Seminar Amazon Simple Notification Service (SNS)
 
20200526 AWS Black Belt Online Seminar AWS X-Ray
20200526 AWS Black Belt Online Seminar AWS X-Ray20200526 AWS Black Belt Online Seminar AWS X-Ray
20200526 AWS Black Belt Online Seminar AWS X-Ray
 
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
 
AWS Black Belt Online Seminar 2017 AWS Storage Gateway
AWS Black Belt Online Seminar 2017 AWS Storage GatewayAWS Black Belt Online Seminar 2017 AWS Storage Gateway
AWS Black Belt Online Seminar 2017 AWS Storage Gateway
 
202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤
202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤
202106 AWS Black Belt Online Seminar 小売現場のデータを素早くビジネス に活用するAWSデータ基盤
 
AWS Black Belt Online Seminar AWS Key Management Service (KMS)
AWS Black Belt Online Seminar AWS Key Management Service (KMS) AWS Black Belt Online Seminar AWS Key Management Service (KMS)
AWS Black Belt Online Seminar AWS Key Management Service (KMS)
 
AWS Black Belt Online Seminar 2017 Amazon Kinesis
AWS Black Belt Online Seminar 2017 Amazon KinesisAWS Black Belt Online Seminar 2017 Amazon Kinesis
AWS Black Belt Online Seminar 2017 Amazon Kinesis
 
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
20190319 AWS Black Belt Online Seminar Amazon FSx for Windows Server
 

Similar to 20200721 AWS Black Belt Online Seminar AWS App Mesh

20191218 AWS Black Belt Online Seminar AWSのマネジメント&ガバナンス サービスアップデート
20191218 AWS Black Belt Online Seminar AWSのマネジメント&ガバナンス サービスアップデート20191218 AWS Black Belt Online Seminar AWSのマネジメント&ガバナンス サービスアップデート
20191218 AWS Black Belt Online Seminar AWSのマネジメント&ガバナンス サービスアップデート
Amazon Web Services Japan
 
AWS SSA Webinar 28 - Getting Started with AWS - Infrastructure as Code
AWS SSA Webinar 28 - Getting Started with AWS - Infrastructure as CodeAWS SSA Webinar 28 - Getting Started with AWS - Infrastructure as Code
AWS SSA Webinar 28 - Getting Started with AWS - Infrastructure as Code
Cobus Bernard
 
Service Mesh, 좀 더 쉽게 - AWS App Mesh :: 안주은 - AWS Community Day 2019
Service Mesh, 좀 더 쉽게 - AWS App Mesh :: 안주은 - AWS Community Day 2019Service Mesh, 좀 더 쉽게 - AWS App Mesh :: 안주은 - AWS Community Day 2019
Service Mesh, 좀 더 쉽게 - AWS App Mesh :: 안주은 - AWS Community Day 2019
AWSKRUG - AWS한국사용자모임
 
Serverless-First Function: Serverless application security
Serverless-First Function: Serverless application securityServerless-First Function: Serverless application security
Serverless-First Function: Serverless application security
RobSutter2
 
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #1320210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
Amazon Web Services Japan
 
Aws serverless multi-tier_architectures
Aws serverless multi-tier_architecturesAws serverless multi-tier_architectures
Aws serverless multi-tier_architectures
sonpro2312
 
Breaking Up the Monolith with Containers
Breaking Up the Monolith with ContainersBreaking Up the Monolith with Containers
Breaking Up the Monolith with ContainersAmazon Web Services
 
Living on the Edge, It’s Safer Than You Think! Building Strong with Amazon Cl...
Living on the Edge, It’s Safer Than You Think! Building Strong with Amazon Cl...Living on the Edge, It’s Safer Than You Think! Building Strong with Amazon Cl...
Living on the Edge, It’s Safer Than You Think! Building Strong with Amazon Cl...
Amazon Web Services
 
re:Invent 2019 CON328R Improving observability of your containers
re:Invent 2019 CON328R Improving observability of your containersre:Invent 2019 CON328R Improving observability of your containers
re:Invent 2019 CON328R Improving observability of your containers
Shubha Bheema Rao
 
re:Invent Recap: Security Week at the SF Loft
re:Invent Recap: Security Week at the SF Loftre:Invent Recap: Security Week at the SF Loft
re:Invent Recap: Security Week at the SF Loft
Amazon Web Services
 
20200520 - Como empezar a desarrollar aplicaciones serverless
20200520 - Como empezar a desarrollar aplicaciones serverless 20200520 - Como empezar a desarrollar aplicaciones serverless
20200520 - Como empezar a desarrollar aplicaciones serverless
Marcia Villalba
 
Nuvem Híbrida - EBC on the road Brazil Edition [Portuguese]
Nuvem Híbrida - EBC on the road Brazil Edition [Portuguese]Nuvem Híbrida - EBC on the road Brazil Edition [Portuguese]
Nuvem Híbrida - EBC on the road Brazil Edition [Portuguese]
Amazon Web Services
 
Telus의 AWS활용 사례: AWS 서버리스 기반 3GPP 코어 및 BSS 구축 – 조경준 AWS 솔루션즈 아키텍트:: AWS Cloud...
Telus의 AWS활용 사례: AWS 서버리스 기반 3GPP 코어 및 BSS 구축 – 조경준 AWS 솔루션즈 아키텍트:: AWS Cloud...Telus의 AWS활용 사례: AWS 서버리스 기반 3GPP 코어 및 BSS 구축 – 조경준 AWS 솔루션즈 아키텍트:: AWS Cloud...
Telus의 AWS활용 사례: AWS 서버리스 기반 3GPP 코어 및 BSS 구축 – 조경준 AWS 솔루션즈 아키텍트:: AWS Cloud...
Amazon Web Services Korea
 
Learn How Salesforce used ADCs for App Load Balancing for an International Ro...
Learn How Salesforce used ADCs for App Load Balancing for an International Ro...Learn How Salesforce used ADCs for App Load Balancing for an International Ro...
Learn How Salesforce used ADCs for App Load Balancing for an International Ro...
Amazon Web Services
 
MSC202_Learn How Salesforce Used ADCs for App Load Balancing for an Internati...
MSC202_Learn How Salesforce Used ADCs for App Load Balancing for an Internati...MSC202_Learn How Salesforce Used ADCs for App Load Balancing for an Internati...
MSC202_Learn How Salesforce Used ADCs for App Load Balancing for an Internati...
Amazon Web Services
 
How Do I Build a Global Transit Network on AWS? - MSC302 - re:Invent 2017
How Do I Build a Global Transit Network on AWS? - MSC302 - re:Invent 2017How Do I Build a Global Transit Network on AWS? - MSC302 - re:Invent 2017
How Do I Build a Global Transit Network on AWS? - MSC302 - re:Invent 2017
Amazon Web Services
 
AWS Core Services Overview, Immersion Day Huntsville 2019
AWS Core Services Overview, Immersion Day Huntsville 2019AWS Core Services Overview, Immersion Day Huntsville 2019
AWS Core Services Overview, Immersion Day Huntsville 2019
Amazon Web Services
 
Re cap2018
Re cap2018Re cap2018
Re cap2018
Richard Harvey
 
PDF_Slide__Memodernisasi_aplikasi_Microsoft_Anda_dengan_cepat_di_AWS.pdf
PDF_Slide__Memodernisasi_aplikasi_Microsoft_Anda_dengan_cepat_di_AWS.pdfPDF_Slide__Memodernisasi_aplikasi_Microsoft_Anda_dengan_cepat_di_AWS.pdf
PDF_Slide__Memodernisasi_aplikasi_Microsoft_Anda_dengan_cepat_di_AWS.pdf
Ropiudin5
 
AWS ECS Workshop A Journey to Modern Applications
AWS ECS Workshop A Journey to Modern ApplicationsAWS ECS Workshop A Journey to Modern Applications
AWS ECS Workshop A Journey to Modern Applications
Amazon Web Services
 

Similar to 20200721 AWS Black Belt Online Seminar AWS App Mesh (20)

20191218 AWS Black Belt Online Seminar AWSのマネジメント&ガバナンス サービスアップデート
20191218 AWS Black Belt Online Seminar AWSのマネジメント&ガバナンス サービスアップデート20191218 AWS Black Belt Online Seminar AWSのマネジメント&ガバナンス サービスアップデート
20191218 AWS Black Belt Online Seminar AWSのマネジメント&ガバナンス サービスアップデート
 
AWS SSA Webinar 28 - Getting Started with AWS - Infrastructure as Code
AWS SSA Webinar 28 - Getting Started with AWS - Infrastructure as CodeAWS SSA Webinar 28 - Getting Started with AWS - Infrastructure as Code
AWS SSA Webinar 28 - Getting Started with AWS - Infrastructure as Code
 
Service Mesh, 좀 더 쉽게 - AWS App Mesh :: 안주은 - AWS Community Day 2019
Service Mesh, 좀 더 쉽게 - AWS App Mesh :: 안주은 - AWS Community Day 2019Service Mesh, 좀 더 쉽게 - AWS App Mesh :: 안주은 - AWS Community Day 2019
Service Mesh, 좀 더 쉽게 - AWS App Mesh :: 안주은 - AWS Community Day 2019
 
Serverless-First Function: Serverless application security
Serverless-First Function: Serverless application securityServerless-First Function: Serverless application security
Serverless-First Function: Serverless application security
 
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #1320210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
 
Aws serverless multi-tier_architectures
Aws serverless multi-tier_architecturesAws serverless multi-tier_architectures
Aws serverless multi-tier_architectures
 
Breaking Up the Monolith with Containers
Breaking Up the Monolith with ContainersBreaking Up the Monolith with Containers
Breaking Up the Monolith with Containers
 
Living on the Edge, It’s Safer Than You Think! Building Strong with Amazon Cl...
Living on the Edge, It’s Safer Than You Think! Building Strong with Amazon Cl...Living on the Edge, It’s Safer Than You Think! Building Strong with Amazon Cl...
Living on the Edge, It’s Safer Than You Think! Building Strong with Amazon Cl...
 
re:Invent 2019 CON328R Improving observability of your containers
re:Invent 2019 CON328R Improving observability of your containersre:Invent 2019 CON328R Improving observability of your containers
re:Invent 2019 CON328R Improving observability of your containers
 
re:Invent Recap: Security Week at the SF Loft
re:Invent Recap: Security Week at the SF Loftre:Invent Recap: Security Week at the SF Loft
re:Invent Recap: Security Week at the SF Loft
 
20200520 - Como empezar a desarrollar aplicaciones serverless
20200520 - Como empezar a desarrollar aplicaciones serverless 20200520 - Como empezar a desarrollar aplicaciones serverless
20200520 - Como empezar a desarrollar aplicaciones serverless
 
Nuvem Híbrida - EBC on the road Brazil Edition [Portuguese]
Nuvem Híbrida - EBC on the road Brazil Edition [Portuguese]Nuvem Híbrida - EBC on the road Brazil Edition [Portuguese]
Nuvem Híbrida - EBC on the road Brazil Edition [Portuguese]
 
Telus의 AWS활용 사례: AWS 서버리스 기반 3GPP 코어 및 BSS 구축 – 조경준 AWS 솔루션즈 아키텍트:: AWS Cloud...
Telus의 AWS활용 사례: AWS 서버리스 기반 3GPP 코어 및 BSS 구축 – 조경준 AWS 솔루션즈 아키텍트:: AWS Cloud...Telus의 AWS활용 사례: AWS 서버리스 기반 3GPP 코어 및 BSS 구축 – 조경준 AWS 솔루션즈 아키텍트:: AWS Cloud...
Telus의 AWS활용 사례: AWS 서버리스 기반 3GPP 코어 및 BSS 구축 – 조경준 AWS 솔루션즈 아키텍트:: AWS Cloud...
 
Learn How Salesforce used ADCs for App Load Balancing for an International Ro...
Learn How Salesforce used ADCs for App Load Balancing for an International Ro...Learn How Salesforce used ADCs for App Load Balancing for an International Ro...
Learn How Salesforce used ADCs for App Load Balancing for an International Ro...
 
MSC202_Learn How Salesforce Used ADCs for App Load Balancing for an Internati...
MSC202_Learn How Salesforce Used ADCs for App Load Balancing for an Internati...MSC202_Learn How Salesforce Used ADCs for App Load Balancing for an Internati...
MSC202_Learn How Salesforce Used ADCs for App Load Balancing for an Internati...
 
How Do I Build a Global Transit Network on AWS? - MSC302 - re:Invent 2017
How Do I Build a Global Transit Network on AWS? - MSC302 - re:Invent 2017How Do I Build a Global Transit Network on AWS? - MSC302 - re:Invent 2017
How Do I Build a Global Transit Network on AWS? - MSC302 - re:Invent 2017
 
AWS Core Services Overview, Immersion Day Huntsville 2019
AWS Core Services Overview, Immersion Day Huntsville 2019AWS Core Services Overview, Immersion Day Huntsville 2019
AWS Core Services Overview, Immersion Day Huntsville 2019
 
Re cap2018
Re cap2018Re cap2018
Re cap2018
 
PDF_Slide__Memodernisasi_aplikasi_Microsoft_Anda_dengan_cepat_di_AWS.pdf
PDF_Slide__Memodernisasi_aplikasi_Microsoft_Anda_dengan_cepat_di_AWS.pdfPDF_Slide__Memodernisasi_aplikasi_Microsoft_Anda_dengan_cepat_di_AWS.pdf
PDF_Slide__Memodernisasi_aplikasi_Microsoft_Anda_dengan_cepat_di_AWS.pdf
 
AWS ECS Workshop A Journey to Modern Applications
AWS ECS Workshop A Journey to Modern ApplicationsAWS ECS Workshop A Journey to Modern Applications
AWS ECS Workshop A Journey to Modern Applications
 

More from Amazon Web Services Japan

202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
Amazon Web Services Japan
 
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
Amazon Web Services Japan
 
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device Defender202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
Amazon Web Services Japan
 
Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022
Amazon Web Services Japan
 
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
Amazon Web Services Japan
 
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
Amazon Web Services Japan
 
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデートAmazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Web Services Japan
 
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと
Amazon Web Services Japan
 
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
Amazon Web Services Japan
 
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
Amazon Web Services Japan
 
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
Amazon Web Services Japan
 
Amazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDD
Amazon Web Services Japan
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのこと
Amazon Web Services Japan
 
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
Amazon Web Services Japan
 
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
Amazon Web Services Japan
 
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
Amazon Web Services Japan
 
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するためにAmazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Web Services Japan
 
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
Amazon Web Services Japan
 
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
Amazon Web Services Japan
 
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
Amazon Web Services Japan
 

More from Amazon Web Services Japan (20)

202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
 
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
 
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device Defender202204 AWS Black Belt Online Seminar AWS IoT Device Defender
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
 
Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022Infrastructure as Code (IaC) 談義 2022
Infrastructure as Code (IaC) 談義 2022
 
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
 
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
 
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデートAmazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
 
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと
 
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
 
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
 
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
 
Amazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDDAmazon QuickSight の組み込み方法をちょっぴりDD
Amazon QuickSight の組み込み方法をちょっぴりDD
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのこと
 
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
 
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
 
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
 
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するためにAmazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
 
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
 
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
 
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
 

Recently uploaded

From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 

Recently uploaded (20)

From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 

20200721 AWS Black Belt Online Seminar AWS App Mesh

  • 1. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS 公式 Webinar https://amzn.to/JPWebinar 過去資料 https://amzn.to/JPArchive Solutions Architect, Containers Masatoshi Hayashi 2020/07/21 AWS App Mesh サービスカットシリーズ [AWS Black Belt Online Seminar]
  • 2. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 自己紹介 • Specialist Solutions Architect, Containers • AWSのコンテナ関連サービスを担当 • 好きなサービス • Amazon EKS • AWS Certificate Manager 林 政利
  • 3. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS Black Belt Online Seminar とは 「サービス別」「ソリューション別」「業種別」のそれぞれのテーマに分かれて、アマゾ ン ウェブ サービス ジャパン株式会社が主催するオンラインセミナーシリーズです。 質問を投げることができます! • 書き込んだ質問は、主催者にしか見えません • 今後のロードマップに関するご質問は お答えできませんのでご了承下さい ① 吹き出しをクリック ② 質問を入力 ③ Sendをクリック Twitter ハッシュタグは以下をご利用ください #awsblackbelt
  • 4. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 内容についての注意点 • 本資料では2020年7月21日現在のサービス内容および価格についてご説明しています。最新の 情報はAWS公式ウェブサイト(http://aws.amazon.com)にてご確認ください。 • 資料作成には十分注意しておりますが、資料内の価格とAWS公式ウェブサイト記載の価格に相 違があった場合、AWS公式ウェブサイトの価格を優先とさせていただきます。 • 価格は税抜表記となっています。日本居住者のお客様には別途消費税をご請求させていただきま す。 • AWS does not offer binding price quotes. AWS pricing is publicly available and is subject to change in accordance with the AWS Customer Agreement available at http://aws.amazon.com/agreement/. Any pricing information included in this document is provided only as an estimate of usage charges for AWS services based on certain information that you have provided. Monthly charges will be based on your actual use of AWS services, and may vary from the estimates provided.
  • 5. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 本セミナーの概要 • 本セミナーで学習できること • サービスメッシュとはどのようなものか • AWS App Meshとはどのようなサービスか • AWS App Meshの使いどころや具体的な機能 • 対象者 • マイクロサービスの導入を検討していて、サービスメッシュ に興味がある方 • App Meshを聞いたことがあるが、実際にどのように役立て ることができるか調査中の方
  • 6. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 本日のアジェンダ • サービスメッシュとは何か • AWS App Mesh • 概要 • 利用方法 • 機能と活用例 • ロードマップ • 価格体系
  • 7. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • サービスメッシュとは何か • AWS App Mesh • 概要 • 利用方法 • 機能と活用例 • ロードマップ • 価格体系
  • 8. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. サービスメッシュとは アプリケーションレベルの通信を、アプリケーション自身が制御するのではなく インフラストラクチャーで制御できるようにする技術 Node.js Java Go Rubyhttp/tcp http/tcp http/tcp
  • 9. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. サービスメッシュがない場合 • HTTP通信のリトライやタイムアウト • 通信のトレーシングやログ、メトリクスの取得 • TLSを使用した暗号化通信 アプリケーションレベルの通信制御を、アプリケーション自身に組み込む Node.js Java Go Rubyhttp/tcp http/tcp http/tcp
  • 10. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. サービスメッシュがある場合 • HTTP通信のリトライやタイムアウト • 通信のトレーシングやログ、メトリクスの取得 • TLSを使用した暗号化通信 アプリケーションレベルの通信制御を、サービスメッシュの基盤で行うので、 アプリケーションに組み込む必要がなくなる Node.js Java Go Rubyhttp/tcp http/tcp http/tcp サービスメッシュ基盤
  • 11. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. サービスメッシュを実現するAWS App Mesh Node.js Java Go Rubyhttp/tcp http/tcp http/tcp • HTTP通信のリトライやタイムアウト • 通信のトレーシングやログ、メトリクスの取得 • TLSを使用した暗号化通信
  • 12. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. サービスメッシュが求められるようになった背景 現代のシステムは、複数の言語、アーキテクチャ、アプリケーションで構成 クラウドにより多様な環境が簡単に作成できるようになった マイクロサービスアーキテクチャの採用
  • 13. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 多様なアプリケーションが通信しながらシステムを構成 Node.js チームA VM Java チームB コンテナ コンテナ Go チームC VM Ruby Rust チームごとに最適な技術を選択してアプリケーションを動かす プログラミング言語だけでなく、VMやコンテナなど様々な技術を選択できる 多様なアプリケーションが通信している構成
  • 14. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. ネットワークは信頼できない • ネットワークが遅延するかもしれない • 帯域幅が狭くなっているかもしれない • セキュアでないかもしれない • ネットワーク先のアプリケーションが障害中 かもしれない ? ? ? ? ?
  • 15. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 信頼性を高めるためのアプリケーション実装 全てのアプリケーションに、信頼性を高める 実装が必要 • 通信エラー時のリトライ処理 • 遅延時のタイムアウト処理 • 暗号化通信 • etc.
  • 16. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 通信の可観測性(Observability)も必要 • システム全体で、通信の状況がどうなっているのか 把握する仕組みが必要 • メトリクス • 通信の状況が時間でどう変化してきたか • トレース • ある時間帯の通信がどのようになっていたか • ログ • 通信に関する詳細な情報 ? ? ? ?
  • 17. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 通信の可観測性がないと… • エラーが発生した場合に、どこで何が起こったのか 追うことができない • チームをまたいだ調査依頼が発生 • エラーログ • レイテンシー • タイムアウトやリトライの設定 • それでも情報がなく状況が把握できないことも ? ? ? ?
  • 18. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 通信の可観測性を確保する実装 全てのアプリケーションに、通信状況を統一された フォーマットで出力する機能が必要 可観測性の情報を収集するシステム メトリクス / トレース / ログ
  • 19. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 全てのアプリケーションに、同じような通信の仕組みが必要 • 信頼性の確保 • リトライやタイムアウト、暗号化通信の実装 • 可観測性の確保 • メトリクスやトレース、ログの出力と収集
  • 20. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. アプリケーションレベルの通信制御を共通化する必要性 • 品質の担保 • アプリケーションごとに品質が異なるリスク • そもそも何にも制御していないかも • ライフサイクルの統一 • メトリクスやトレース、ログのフォーマット • 社内セキュリティ基準への対応 • 実装コスト • 全アプリケーションに実装するコスト
  • 21. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. ライブラリによる通信制御の共通化 共通ライブラリ チームX Node.is Java Go Rust Node.js Java Go Rust チームA チームB チームC 通信の仕組みを共通ライブラリに実装して配る • リトライやタイムアウトなど信頼性確保の実装 • メトリクスやトレースなど可観測性確保の実装
  • 22. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 共通ライブラリ チームX Node.is Java Go Rust 通信の仕組みを共通ライブラリに実装して配る?? • リトライやタイムアウトなど信頼性確保の実装 • メトリクスやトレースなど可観測性確保の実装
  • 23. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. アプリケーション開発チームでの共通ライブラリの課題 • 使用している言語のライブラリが無い • 使用している言語のライブラリが保守されない • 共通ライブラリを入れると依存関係が衝突する • VMだと動かない、コンテナだと動かない、 XX環境だと動かない Node.js Java Go Rust チームA チームB チームC
  • 24. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 共通ライブラリを開発する側の課題 • 多数の言語やSDKに習熟する必要があって負担が大きい • 言語ごと、チームごとに配布方法を考える必要があって負担が大きい • システムの規模、アプリケーション数に応じて開発リソースがスケールしない 共通ライブラリ チームX Node.is Java Go Rust PythonRuby
  • 25. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 結局、何が課題の原因なのか? Node.js Java Go • 通信の処理と、アプリケーションの密結合 • システムロジックと業務ロジックは運用もライフ サイクルも違う 通信の処理は共通化が求められるが、 アプリケーションコードの技術に合わせて 実装しなければならないジレンマ
  • 26. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. http/tcp Proxy アプリケーション間の通信をプロキシして、通信制御を行うプロセス 通信の処理を別のプロセスに切りはなすというアイデア
  • 27. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. サービスメッシュ アプリケーションレベルの通信を、アプリケーション自身が制御するのではなく インフラストラクチャーで制御できるようにする技術 Node.is Java Go Rubyhttp/tcp http/tcp http/tcp
  • 28. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. サービスメッシュの仕組み アプリケーションレベルの通信を制御するプロキシを配置する Node.is Java Go Rubyhttp/tcp http/tcp http/tcp
  • 29. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. サービスメッシュの仕組み プロキシをコントロールプレーンで管理 => アプリケーションレベルの通信制御を、基盤で実施できるようにする Node.is Java Go Rubyhttp/tcp http/tcp http/tcp Control plane サービスメッシュ基盤
  • 30. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Proxyに、通信制御に関する実装が必要 • 信頼性 • リトライ • タイムアウト • 暗号化通信、etc. • 可観測性 • メトリクスやトレース、ログの出力 サービスメッシュを実現するために必要な機能 Proxy
  • 31. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. サービスプロキシを開発するOSSプロジェクト 活発なコミュニティと多くのインテグレーション CNCFのGraduated Project プロダクション環境での利用事例が多い Lyft社が2016年に開始 Envoy Proxy
  • 32. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Envoyでサービスメッシュを構築する Node.is Java Go Rubyhttp/tcp http/tcp http/tcp アプリケーションレベルの通信制御を行うプロキシとして、Envoyを利用できる
  • 33. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Envoyでサービスメッシュを構築する Node.is Java Go Rubyhttp/tcp http/tcp http/tcp Envoyを管理するコントロールプレーンを導入 Control plane サービスメッシュ基盤
  • 34. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS App Mesh Node.is Java Go Rubyhttp/tcp http/tcp http/tcp Envoyを管理するコントロールプレーンを提供し、サービスメッシュを実現する マネージドサービス Control plane
  • 35. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • サービスメッシュとは何か • AWS App Mesh • 概要 • 利用方法 • 機能と活用例 • ロードマップ • 価格体系
  • 36. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS App Meshとは? Node.is Java Go Rubyhttp/tcp http/tcp http/tcp サービスメッシュを提供し、アプリケーションレベルの通信をアプリケーション 自身ではなく、App Meshで設定、制御できるようにするマネージドサービス Control plane
  • 37. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS App Mesh アプリケーション間がどのように通信するか ネットワークモデルを定義できる http/tcp Control plane サービスメッシュを管理するコントロールプレーンを提供する ネットワークモデルをEnvoyの設定に変換して配信 通信方法の詳細は、アプリケーションではなく App Meshのレイヤーで制御される
  • 38. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Meshのネットワークモデル 1. 通信元のアプリケーションは、通信先をサービスディスカバリー で見つけてトラフィックを投げる 2. トラフィックがロードバランサーに到達する 3. ロードバランサーは複数の通信先にトラフィックを振り分ける
  • 39. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Meshのモデルと実際のアプリケーションを紐付け Amazon EC2 AWS Fargate
  • 40. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Meshの動作イメージ / 前提 アプリケーション A EC2 Instance アプリケーション B EC2 Instance http/tcp
  • 41. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Meshの動作イメージ / Envoy Proxyの導入 アプリケー ションA EC2 Instance アプリケー ションB EC2 Instance
  • 42. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Meshの動作イメージ / App Meshのモデルを適用 アプリケー ションA EC2 Instance アプリケー ションB EC2 Instance
  • 43. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Meshのモデル上で設定できる通信制御の例 • リトライやタイムアウトを設定 • 証明書を利用したアプリケーション間の暗号化通信 • 比重を設定してトラフィックを振り分け => Canary • etc.
  • 44. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Meshにおけるトップレベルの概念
  • 45. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Meshにおけるトップレベルの概念
  • 46. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Virtual Node アプリケーションへの論理的なポインター Envoyの環境変数でVirtual Node名を設定 できる
  • 47. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Virtual Service アプリケーションの通信先を表す サービスディスカバリー上のサービスで、 ここにリクエストを投げると後続のVirtual Nodeに ルーティングされる
  • 48. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Virtual Router 通信を複数のVirtual Nodeにルーティング するルーターまたはロードバランサー
  • 49. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Listener Virtual Nodeで、どのようにトラフィックを 受け付けるか • プロトコル(http、http2、grpc、tcp) • ポート番号 • 内部的にはEnvoyがこの設定を取得してリクエスト を受け付けるプロトコルやポートを設定
  • 50. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Backend 送信先として想定されるVirtual Service • デフォルトではBackendとして設定されていない宛先には 通信できない(※) • Backendでない宛先に送信できるよう設定で変更できる ※ AWS APIを呼び出す目的で*.amazonaws.comにはアクセス可能
  • 51. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Meshの構築 Backend Listener • Virtual Nodeは、実際のアプリケーションを表す • Virtual Nodeが、BackendのVirtual Serviceへ通信する • トラフィックはVirtual RouterでVirtual Nodeに振り分けられる • Virtual Nodeは、設定されたListenerで通信を受け付ける Mesh
  • 52. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • サービスメッシュとは何か • AWS App Mesh • 概要 • 利用方法 • 機能と活用例 • ロードマップ • 価格体系
  • 53. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 利用できるインフラストラクチャー Amazon ECS AWS Fargate Amazon EKS Amazon EC2 Kubernetes on EC2
  • 54. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon EC2での利用イメージ アプリケーションA EC2 Instance
  • 55. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon EC2での利用イメージ Management ConsoleやCLIでMeshを作成する アプリケーションA EC2 Instance
  • 56. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon EC2での利用イメージ アプリケー ションA EC2 Instance docker run -e “APPMESH_VIRTUAL_NODE_ NAME=<Virtual Node名>” … Envoyを導入
  • 57. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon EC2での利用イメージ アプリケー ションA EC2 Instance docker run xxx/aws- appmesh-proxy-route- manager … ネットワーク管理イメージを導入 ※ iptablesのルールを管理して通信をenvoy経由にする
  • 58. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon EC2での利用イメージ アプリケー ションA EC2 Instance アプリケー ションB EC2 Instance
  • 59. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon ECS / AWS Fargateでの利用イメージ アプリケーションA ECS Task
  • 60. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon ECS / AWS Fargateでの利用イメージ アプリケーションA ECS Task Management ConsoleやCLIでMeshを作成する
  • 61. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon ECS / AWS Fargateでの利用イメージ アプリケー ションA ECS Task Management ConsoleやCLIでMesh統合を有効にする ECSタスク定義が更新され、Envoyが導入される
  • 62. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon EKS / Fargate for EKS / Kubernetes on EC2での利用イメージ https://github.com/aws/aws-app-mesh-controller-for-k8s AWS App Mesh Controller For K8s • 2020年6月にGA • 主な機能 • App Meshのリソースを Kubernetes上で管理 • PodをApp Meshを利用す るよう更新 • GA前は、上記二つがそれぞれ 別のコントローラーで提供 • App Mesh Controller • App Mesh Inject App Mesh Controller Mesh, VirtualNode, etc… Kubernetesクラスタ App Meshのリソースを CRDで管理
  • 63. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon EKS / Fargate for EKS / Kubernetes on EC2での利用イメージ App Mesh Controller Pod AWS App Mesh Controller For K8sを導入 $ helm repo add eks https://aws.github.io/eks-charts $ kubectl apply -k github.com/aws/eks-charts/stable/appmesh- controller//crds?ref=master $ kubectl create ns appmesh-system $ helm upgrade -i appmesh-controller eks/appmesh-controller -n appmesh-system
  • 64. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Mesh Controller Pod App Mesh用のCustom Resourceをインストールする kubectl apply -f vn-a.yaml Amazon EKS / Fargate for EKS / Kubernetes on EC2での利用イメージ apiVersion: appmesh.k8s.aws/v1beta2 kind: VirtualNode metadata: name: my-service-a Mesh, VirtualNode, etc… https://github.com/aws/aws-app-mesh-controller-for-k8s/blob/master/docs/reference/api_spec.md App Mesh ControllerのCRD • Mesh • VirtualNode • VirtualService • VirtualRouter
  • 65. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Mesh Controller Pod App Mesh ControllerがApp Meshのリソースを作成する Amazon EKS / Fargate for EKS / Kubernetes on EC2での利用イメージ Mesh, VirtualNode, etc…
  • 66. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Mesh Controller Pod アプリケーションをデプロイする アプリケー ションA Deployment kubectl apply -f deployment.yaml Amazon EKS / Fargate for EKS / Kubernetes on EC2での利用イメージ Mesh, VirtualNode, etc…
  • 67. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Mesh Controller Pod App Mesh ControllerがEnvoyをPodにInjectして設定する アプリケー ションA Pod Inject Amazon EKS / Fargate for EKS / Kubernetes on EC2での利用イメージ Mesh, VirtualNode, etc…
  • 68. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 様々なインフラストラクチャーを一つのMeshで管理できる Amazon ECS AWS Fargate Amazon EKSAmazon EC2 Kubernetes on EC2
  • 69. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • サービスメッシュとは何か • AWS App Mesh • 概要 • 利用方法 • 機能と活用例 • ロードマップ • 価格体系
  • 70. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • AWS App Meshのセキュリティ機能 • AWS App Meshで利用できる機能 • 通信可観測性を確保する • カナリアリリース 機能と活用方法
  • 71. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Mesh Security of the Cloud アプリケー ションA 通信経路 • App Meshの設定データの暗号化 (配布時、保存時) • Control Planeの可用性確保(Multi- AZ構成) • Control Planeの自動バックアップ • AWS PrivateLinkによるAWSネット ワークに閉じたEnvoy-Control Plane間通信 • Envoyコンテナイメージの脆弱性ス キャンとパッチ適用 https://docs.aws.amazon.com/app-mesh/latest/userguide/security.html App Meshの構成の内、AWSが管理するところのセキュリティ
  • 72. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Mesh Security in the Cloud アプリケー ションA 通信経路 • App MeshのAPIに対するIAM権限 • セキュリティパッチが適用された Envoyコンテナイメージのデプロイ • AWS CloudTrailでApp Mesh操作の 証跡を監査 https://docs.aws.amazon.com/app-mesh/latest/userguide/security.html App Meshでお客様が管理できるセキュリティ
  • 73. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. App Meshで利用できる機能 クライアントサイドのロードバランシング HTTPヘッダーベースのルーティング Pathベースのルーティング HTTP, HTTP2, gRPC, TCPのサポート リトライポリシー End-to-endのTLS暗号化 CloudWatch Logs and Metrics AWS X-Ray Tracing Envoyがサポートしている Metrics (StatsD, Prometheus) EnvoyがサポートしているTracing(Zipkin, Jaeger) Egress Traffic Policies AWS Cloud Map Service Discovery クロスアカウントのサポート Kubernetes Controller タイムアウトのサポート Ingress Gateway
  • 74. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 活用例: コンテナアプリケーションの通信可観測性 • メトリクス • そのシステムで通信の状況が時間でどう変化してきたか • トレース • システム全体のある時間帯の通信がどのようになっていたか • ログ • あるコンポーネントの通信に関する詳細な情報 AWS Fargate App(front) App(back) システム全体で、通信の状況がどうなっているのか把握する ECS Service ECS Service
  • 75. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 活用例: コンテナアプリケーションの通信可観測性 • メトリクス • Amazon CloudWatch • トレース • AWS X-Ray • ログ • Amazon CloudWatch Logs 可観測性のためにApp Meshと連携できるAWSのサービス AWS Fargate App(front) App(back) ECS Service ECS Service
  • 76. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 活用例: コンテナアプリケーションの通信可観測性 CloudWatchと連携して通信のメトリクスを取得する AWS Fargate App(front) App(back) ECS Service ECS Service ENABLE_ENVOY_DOG_STATSD = 1 Envoy Proxyコンテナに環境変数を設定し、StatsD形式のメトリクス を8125ポートで公開するよう設定する
  • 77. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 活用例: コンテナアプリケーションの通信可観測性 CloudWatchと連携して通信のメトリクスを取得する AWS Fargate App(front) App(back) ECS Service ECS Service cw cw "metrics_collected": { "statsd": {}} CloudWatch Agentをサイドカーとしてデプロイし、8125ポートで公開 されているメトリクスを取得するよう設定する ※ CloudWatch Agentのコンテナイメージは、以下を参考にビルドする https://github.com/aws-samples/aws-app-mesh-cloudwatch-agent/blob/master/Dockerfile
  • 78. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 活用例: コンテナアプリケーションの通信可観測性 CloudWatchと連携して通信のメトリクスを取得する AWS Fargate App(front) App(back) ECS Service ECS Service cw cw CloudWatch Agentが、Envoyが公開するStatsDメトリクスをCloudWatchに 送信する Amazon CloudWatch
  • 79. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 活用例: コンテナアプリケーションの通信可観測性 CloudWatchと連携して通信のメトリクスを取得する CloudWatchに通信の メトリクスが集まる • Dashboardを作成して 一覧性を高める • アラームを設定して 閾値を超えたら通知する
  • 80. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. X-Rayで通信をトレースする 活用例: コンテナアプリケーションの通信可観測性 AWS Fargate App(front) App(back) ECS Service ECS Service cw cw Amazon CloudWatch
  • 81. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. X-Rayで通信をトレースする 活用例: コンテナアプリケーションの通信可観測性 AWS Fargate App(front) App(back) ECS Service ECS Service cw cwX-Ray X-Ray X-Rayデーモンのコンテナ(amazon/aws-xray-daemon)をサイドカーとして デプロイ(※) ※ 詳細は「Amazon ECS で X-Ray デーモンを実行する」を参照 https://docs.aws.amazon.com/ja_jp/xray/latest/devguide/xray-daemon-ecs.html Amazon CloudWatch
  • 82. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. X-Rayで通信をトレースする 活用例: コンテナアプリケーションの通信可観測性 AWS Fargate App(front) App(back) ECS Service ECS Service cw cwX-Ray X-Ray Envoyに環境変数を設定し、X-Rayデーモンにトレースデータを送信する ENABLE_ENVOY_XRAY_TRACING = 1 Amazon CloudWatch
  • 83. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. X-Rayで通信をトレースする 活用例: コンテナアプリケーションの通信可観測性 AWS Fargate App(front) App(back) ECS Service ECS Service cw cwX-Ray X-Ray X-RayデーモンがAWS X-RayにEnvoyのトレースデータを中継する AWS X-Ray Amazon CloudWatch
  • 84. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. X-Rayで通信をトレースする 活用例: コンテナアプリケーションの通信可観測性 メトリクスで異常があったときに、 どこに遅延やエラーがあるか確認 できる
  • 85. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. CloudWatch Logsでアクセスログを表示する 活用例: コンテナアプリケーションの通信可観測性 AWS Fargate App(front) App(back) ECS Service ECS Service cw cwX-Ray X-Ray AWS X-Ray Amazon CloudWatch
  • 86. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. CloudWatch Logsでアクセスログを表示する 活用例: コンテナアプリケーションの通信可観測性
  • 87. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. CloudWatch Logsでアクセスログを表示する 活用例: コンテナアプリケーションの通信可観測性 AWS Fargate App(front) App(back) ECS Service ECS Service cw cwX-Ray X-Ray AWS X-Ray Amazon CloudWatch Virtual Nodeの設定で、 Envoyにアクセスログを /dev/stdoutに出力する よう設定
  • 88. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. CloudWatch Logsでアクセスログを表示する 活用例: コンテナアプリケーションの通信可観測性 AWS Fargate App(front) App(back) ECS Service ECS Service cw cwX-Ray X-Ray AWS X-Ray Amazon CloudWatch / CloudWatch Logs awslogsログドライバーが /dev/stdoutに出力されたアクセス ログをCloudWatch Logsに送信 Envoyアクセスログの送信
  • 89. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. CloudWatch Logsでアクセスログを表示する 活用例: コンテナアプリケーションの通信可観測性
  • 90. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. エラー、遅延が発生したときに状況を把握する 活用例: コンテナアプリケーションの通信可観測性 • メトリクス • Amazon CloudWatch • 異常やアラームが発生したことを把握する • トレース • AWS X-Ray • アラームが発生したとき、どのような通信状況だったか把握する • ログ • Amazon CloudWatch Logs • トレースで特定したコンポーネントの処理を確認する
  • 91. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 活用例: カナリアリリース 66% 33% Virtual Routerによる通信先の振り分け
  • 92. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 活用例: カナリアリリース 66% 33% AWS Fargate EC2上のアプリケーション をFargateに移行する際に カナリアリリースを行う例 Amazon EC2
  • 93. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • サービスメッシュとは何か • AWS App Mesh • 概要 • 利用方法 • 機能と活用例 • ロードマップ • 価格体系
  • 94. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS App Meshのロードマップ github.com/aws/aws-app-mesh-roadmap #33 AWS Lambdaとの連携 LambdaをMeshに追加できるようにする(EnvoyからLambdaを起動する) #6 Circuit Breaker 閾値を超えてエラーや遅延が発生している呼び出しを一時的に遮断する #34 サービス間認証 mTLSでサービス間の認証を行う #61 CloudWatchとの統合を進める EnvoyとCloudWatchの連携を、もっとManagedなレベルで行う #107 Rate Limiting Virtual Nodeへの入出力にレートリミットを設ける ※ 2020年7月時点のロードマップアイテムからピックアップ
  • 95. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • サービスメッシュとは何か • AWS App Mesh • 概要 • 利用方法 • 機能と活用例 • ロードマップ • 価格体系
  • 96. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 利用料金 • App Meshの利用による追加料金はない • Envoy Proxyを稼働するためのリソースに 対して料金が発生 • AWS X-Ray、Amazon CloudWatch Logsなど 連携先のサービスの料金が発生
  • 97. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. まとめ http/tcp Control plane Envoyを管理するコントロールプ レーンを提供し、サービスメッシュ を実現するマネージドサービス EC2, ECS, EKS, Kubernetes on EC2で利用可能 多種多様な技術で稼働する多数のア プリケーションの通信をインフラレ イヤーで制御できる
  • 98. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 手を動かしながら理解する AWS App Mesh Workshop https://www.appmeshworkshop.com/ App Meshの機能と利用方法を理解するための ワークショップ aws / aws-app-mesh-examples https://github.com/aws/aws-app-mesh-examples クロスアカウント、gRPCの利用、リトライ、Header ベースルーティングなど、活用例を手を動かして確認
  • 99. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Q&A お答えできなかったご質問については AWS Japan Blog 「https://aws.amazon.com/jp/blogs/news/」にて 後日掲載します。
  • 100. © 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved.© 2020, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS 公式 Webinar https://amzn.to/JPWebinar 過去資料 https://amzn.to/JPArchive ご視聴ありがとうございました