SlideShare a Scribd company logo
1 of 65
Download to read offline
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Service Mesh, 좀 더 쉽게
- AWS App Mesh
안주은
DevOps Engineer
MyMusicTaste
Github: @JooeunAhn
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Introducing AWS App Mesh
App Mesh는 매니지드 서비스 메쉬 서비스로,
마이크로서비스의 Inter-communication을
용이하게 관리할 수 있게 도와주는 서비스
입니다.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Agenda
Service Mesh
What is Service Mesh?
What is Service Mesh Control Plan?
App Mesh Features
What is App Mesh?
Features
Demo
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Before we are talking about it...
Microservice Architecture
하나의 큰 어플리케이션을
여러 개의 작은 서비스로
쪼갠 아키텍쳐
각각의 서비스들이 약속된 Protocol로
Communication
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Before we are talking about it...
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Before we are talking about it...
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What if..
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What if..
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What is Service Mesh?
Service Mesh
A service mesh is a dedicated infrastructure layer for handling
service-to-service communication. It’s responsible for the reliable delivery of
requests through the complex topology of services that comprise a modern,
cloud native application. In practice, the service mesh is typically
implemented as an array of lightweight network proxies that are deployed
alongside application code, without the application needing to be aware.
- Linkerd CEO William Morgan
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What is Service Mesh?
Ref :
https://blog.envoyproxy.io/service-mesh-data-plane-vs-cont
rol-plane-2774e720f7fc
서비스 메쉬의 기본 컨셉.
모든 네트워크 트래픽은
Local sidecar proxy를 통해
적절한 대상으로 흐릅니다.
Service Instance는
전체 Network를 인식하지
않습니다.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
The data plane
Ref :
https://blog.envoyproxy.io/service-mesh-data-plane-vs-cont
rol-plane-2774e720f7fc
Service Discovery
Health Checking
Routing
Load Balancing
Authentication and Authorization
Observability
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
OSS project
Wide community support, numerous integrations
Stable and production-proven
“Graduated Project” in Cloud Native Computing
Foundation
Started at Lyft in 2016
App Mesh uses Envoy proxy
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
How do we tell every proxy what to do?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Configuring lots of proxies is hard!
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What is service mesh control plane?
Ref :
https://blog.envoyproxy.io/service-mesh-data-plane-vs-cont
rol-plane-2774e720f7fc
Control plane의 목표는
Date plane에 적용될 policy를
설정 하는 것 입니다.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh configures every proxy
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dynamic state changes impact proxy configuration
App
developer
Infra
operator
Reporting
Intent
App
developer
App
developer
Magic
Deployments
Scaling
Health
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Application observability
+ others
일관된 데이터를 통해
문제 해결 시간 단축
Prometheus, Datadog
와의 integration
Service간 network
issue를 손쉽게 탐지
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS integrations
Service Discovery Microservices
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Regions
US West
Oregon (US-West-2)
Europe
Ireland (EU-West-1)
US East
N. Virginia (US-East-1)
Ohio (US-East-2)
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Preview v/s GA (capabilities)
Preview
API ready
For use with sample apps
not production
HTTP path based routing
Statd based logs,
metrics integrations
GA
Console
Integrations
Traffic management
AWS Cloud Map
Cross account
Amazon EC2
Post GA
TLS
Ingress
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Demo
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh examples
Link:
https://github.com/awslabs/aws-app-mesh-examples
예제에 필요한 모든 Infrastructure는
CloudFormation을 통해 손쉽게 build 가능.
AWS ECS & AWS EKS 두가지 버전으로
제공 됩니다.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh examples
이 예제를 통해 어떻게 Traffic이
AWS App Mesh를 통해
Routing 되는지 알 수 있습니다.
이 Application은
color-gateway와
color-teller 서비스로
만들어져 있습니다.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ColorTeller
Color-teller 는 Color를 리턴하는
간단한 http service
Configuration은 환경변수로 설정
Envoy task가 sidecar 방식으로 같이 실행함.
환경변수로 여러 버전의 서비스를 만들어
각각 특정 색상을 반환하도록 구성할 예정.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ColorGateway
color-gateway는
color-teller로 부터 응답받은 color를
외부 client에게 리턴하는 간단한 http 서비스
http://colorgateway.{domain}/color
{“color”: “blue” | “green” | “red” | etc}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh examples
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh examples
Mesh란 서비스들 사이의
Network traffic에 대한 logical boundary
Mesh의 구성요소는
Virtual nodes, Virtual routers, and
Routes.
Mesh는 모든 엔티티에 적용될
설정을 가지고 있습니다.
for e.g. monitoring, logging, tracing,
control-plane endpoint
for proxies to connect, etc.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh examples
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh examples
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh examples
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Virtual Node
Virtual Node
Service
Discovery
BackendsListeners
Virtual Node
Logical representation
of runtime services
Backends
이 Node가 통신할 대상의 집합
(hostnames)
Service discovery
Callers가 이 Node를 찾는 방법들
(DNS hostname or AWS Cloud Map*
namespace, serviced, and selectors)
Listeners
incoming traffic을
관리할 정책
Ed: port, Health check*,
Circuit breaker*, Retries*
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh
Mesh–[myapp]
Virtual
Node A
Service
Discovery
Listener Backends
Virtual
Node B
Service
Discovery
Listener Backends
Virtual Node
Source virtual-node:
Backends 집합을 기술한 Virtual Node.
Destination virtual-node:
Listener와 Service Discovery를
기술한 Virtual Node.
Destination Virtual Node만 Route에 등록할 수
있음
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Virtual Node
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Virtual Node
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Virtual Node
White
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Virtual Node (colorgateway)
colorteller.default.svc.cluster.local
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Virtual Node(colorteller)
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Virtual Node
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Virtual Router
Virtual Router: B
Service
names
Service name
Names that clients will use to connect to the service
Virtual-router는 Traffic을
등록된 서비스와 연결된
Virtual Node로
Routing 합니다.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Virtual Router
A B
rq.get(“b.local”)
b.local == Service Name
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Virtual Router
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Virtual Router
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Virtual Router
colorteller.default.svc.cluster.localcolorgateway.default.svc.cluster.local
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Virtual Router
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh
Mesh–[myapp]
Virtual
Node A
Virtual
Node B
Virtual
Router
Routes
Route
Route: Reqs가 처리되는 방법을 정의하는
튜플
For e.g. forwarding a request to
a destination virtual-node
when the http path prefix is “/”.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Route
B
rq.get(“b.local/”)
Virtual Router Virtual Node
match: “/”, target: b
b
Route
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Routes Destination’s virtual
router and route
Virtual router: B
HTTP routes
Match
Prefix: /
Action:
Targets
B
Route B
Virtual node
destination +
weight
Route Name: B1
Match
Action:
Route Name: B2
Other Protocol routes
하나의 Virtual-router에
여러 개의 Route가
등록될 수 있으며,
각각의 Route는
하나 이상의 Virtual
Node를 대상으로 하는
Action을 정의할 수
있습니다.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Route
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Route
White
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Route colorgateway-route colorteller-route
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Route
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh examples
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh examples
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh examples
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh examples
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Update routes
Virtual router: B
HTTP route
targets:
prefix: /
B
B’
A
B
B’
Route B
Virtual node
destination + weight
Route B’
New service or service version
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
A
Mesh—[myapp]
Virtual
Node A
Service
Discovery
BackendListener
Virtual router
Domains
action:
match: /
B
B’
Service B
Service B’
Virtual
Node B’
Service
Discovery
Listener Backends
Virtual
Node B
Service
Discovery
Listener Backends
B
B’
Update routes
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Update routes
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App Mesh examples
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Update routes
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Update routes
Blue: 80%
Red: 20%
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Virtual
Node B1
Mesh
Service A
Service B
Service C
Virtual
router
Virtual
router
A
C
D
Virtual
Node C2
Virtual
Node C1
Service D
Virtual
router
Virtual
Node D1
Virtual
Node D1
B
B’
Summary
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Getting started
Product overview
https://aws.amazon.com/app-mesh
Documentation
https://docs.aws.amazon.com/app-mesh/index.html
Examples
https://github.com/awslabs/aws-app-mesh-examples
Issues & Roadmap
https://github.com/awslabs/aws-app-mesh-examples/issues
Thank you!
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
안주은
DevOps Engineer
MyMusicTaste
Github: @JooeunAhn

More Related Content

What's hot

AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
Amazon Web Services Korea
 
10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)
10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)
10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)
Amazon Web Services Korea
 

What's hot (20)

AWS Summit Seoul 2023 | 클라우드 정책의 현재와 미래: 전문가 대담
AWS Summit Seoul 2023 | 클라우드 정책의 현재와 미래: 전문가 대담AWS Summit Seoul 2023 | 클라우드 정책의 현재와 미래: 전문가 대담
AWS Summit Seoul 2023 | 클라우드 정책의 현재와 미래: 전문가 대담
 
K8s on AWS: Introducing Amazon EKS
K8s on AWS: Introducing Amazon EKSK8s on AWS: Introducing Amazon EKS
K8s on AWS: Introducing Amazon EKS
 
AWS 기반 클라우드 아키텍처 모범사례 - 삼성전자 개발자 포털/개발자 워크스페이스 - 정영준 솔루션즈 아키텍트, AWS / 유현성 수석,...
AWS 기반 클라우드 아키텍처 모범사례 - 삼성전자 개발자 포털/개발자 워크스페이스 - 정영준 솔루션즈 아키텍트, AWS / 유현성 수석,...AWS 기반 클라우드 아키텍처 모범사례 - 삼성전자 개발자 포털/개발자 워크스페이스 - 정영준 솔루션즈 아키텍트, AWS / 유현성 수석,...
AWS 기반 클라우드 아키텍처 모범사례 - 삼성전자 개발자 포털/개발자 워크스페이스 - 정영준 솔루션즈 아키텍트, AWS / 유현성 수석,...
 
AWS 상의 컨테이너 서비스 소개 ECS, EKS - 이종립 / Principle Enterprise Evangelist @베스핀글로벌
AWS 상의 컨테이너 서비스 소개 ECS, EKS - 이종립 / Principle Enterprise Evangelist @베스핀글로벌AWS 상의 컨테이너 서비스 소개 ECS, EKS - 이종립 / Principle Enterprise Evangelist @베스핀글로벌
AWS 상의 컨테이너 서비스 소개 ECS, EKS - 이종립 / Principle Enterprise Evangelist @베스핀글로벌
 
Setting Up a Landing Zone
Setting Up a Landing ZoneSetting Up a Landing Zone
Setting Up a Landing Zone
 
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
 
[AWS Builders] AWS상의 보안 위협 탐지 및 대응
[AWS Builders] AWS상의 보안 위협 탐지 및 대응[AWS Builders] AWS상의 보안 위협 탐지 및 대응
[AWS Builders] AWS상의 보안 위협 탐지 및 대응
 
Deep Dive on AWS Lambda
Deep Dive on AWS LambdaDeep Dive on AWS Lambda
Deep Dive on AWS Lambda
 
CI/CD on AWS
CI/CD on AWSCI/CD on AWS
CI/CD on AWS
 
AWS 6월 웨비나 | Amazon VPC Deep Dive (김상필 솔루션즈아키텍트)
AWS 6월 웨비나 | Amazon VPC Deep Dive (김상필 솔루션즈아키텍트)AWS 6월 웨비나 | Amazon VPC Deep Dive (김상필 솔루션즈아키텍트)
AWS 6월 웨비나 | Amazon VPC Deep Dive (김상필 솔루션즈아키텍트)
 
AWS Security Week: AWS Secrets Manager
AWS Security Week: AWS Secrets ManagerAWS Security Week: AWS Secrets Manager
AWS Security Week: AWS Secrets Manager
 
AWS Security Best Practices and Design Patterns
AWS Security Best Practices and Design PatternsAWS Security Best Practices and Design Patterns
AWS Security Best Practices and Design Patterns
 
[AWS Builders] AWS와 함께하는 클라우드 컴퓨팅
[AWS Builders] AWS와 함께하는 클라우드 컴퓨팅[AWS Builders] AWS와 함께하는 클라우드 컴퓨팅
[AWS Builders] AWS와 함께하는 클라우드 컴퓨팅
 
AWS Summit Seoul 2023 | 다중 계정 및 하이브리드 환경에서 안전한 IAM 체계 만들기
AWS Summit Seoul 2023 | 다중 계정 및 하이브리드 환경에서 안전한 IAM 체계 만들기AWS Summit Seoul 2023 | 다중 계정 및 하이브리드 환경에서 안전한 IAM 체계 만들기
AWS Summit Seoul 2023 | 다중 계정 및 하이브리드 환경에서 안전한 IAM 체계 만들기
 
AWS Transit Gateway를 통한 Multi-VPC 아키텍처 패턴 - 강동환 솔루션즈 아키텍트, AWS :: AWS Summit ...
AWS Transit Gateway를 통한 Multi-VPC 아키텍처 패턴 - 강동환 솔루션즈 아키텍트, AWS :: AWS Summit ...AWS Transit Gateway를 통한 Multi-VPC 아키텍처 패턴 - 강동환 솔루션즈 아키텍트, AWS :: AWS Summit ...
AWS Transit Gateway를 통한 Multi-VPC 아키텍처 패턴 - 강동환 솔루션즈 아키텍트, AWS :: AWS Summit ...
 
금융 분야 마이데이터 (My Data) 산업 도입 방안 및 AWS 활용법 – 고종원 AWS 어카운트 매니저, 양찬욱 KB국민카드 팀장:: ...
금융 분야 마이데이터 (My Data) 산업 도입 방안 및 AWS 활용법 – 고종원 AWS 어카운트 매니저, 양찬욱 KB국민카드 팀장:: ...금융 분야 마이데이터 (My Data) 산업 도입 방안 및 AWS 활용법 – 고종원 AWS 어카운트 매니저, 양찬욱 KB국민카드 팀장:: ...
금융 분야 마이데이터 (My Data) 산업 도입 방안 및 AWS 활용법 – 고종원 AWS 어카운트 매니저, 양찬욱 KB국민카드 팀장:: ...
 
데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...
데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...
데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...
 
10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)
10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)
10월 웨비나 - AWS에서 Active Directory 구축 및 연동 옵션 살펴보기 (김용우 솔루션즈 아키텍트)
 
Migrating Your AD to the Cloud with AWS Directory Services for Microsoft Acti...
Migrating Your AD to the Cloud with AWS Directory Services for Microsoft Acti...Migrating Your AD to the Cloud with AWS Directory Services for Microsoft Acti...
Migrating Your AD to the Cloud with AWS Directory Services for Microsoft Acti...
 
AWS Backup을 이용한 데이터베이스의 백업 자동화와 편리한 복구방법
AWS Backup을 이용한 데이터베이스의 백업 자동화와 편리한 복구방법AWS Backup을 이용한 데이터베이스의 백업 자동화와 편리한 복구방법
AWS Backup을 이용한 데이터베이스의 백업 자동화와 편리한 복구방법
 

Similar to Service Mesh, 좀 더 쉽게 - AWS App Mesh :: 안주은 - AWS Community Day 2019

Similar to Service Mesh, 좀 더 쉽게 - AWS App Mesh :: 안주은 - AWS Community Day 2019 (20)

[NEW LAUNCH!] Introducing AWS App Mesh – service mesh on AWS (CON367) - AWS r...
[NEW LAUNCH!] Introducing AWS App Mesh – service mesh on AWS (CON367) - AWS r...[NEW LAUNCH!] Introducing AWS App Mesh – service mesh on AWS (CON367) - AWS r...
[NEW LAUNCH!] Introducing AWS App Mesh – service mesh on AWS (CON367) - AWS r...
 
AWS App Mesh: Manage services mesh discovery, recovery, and monitoring - MAD3...
AWS App Mesh: Manage services mesh discovery, recovery, and monitoring - MAD3...AWS App Mesh: Manage services mesh discovery, recovery, and monitoring - MAD3...
AWS App Mesh: Manage services mesh discovery, recovery, and monitoring - MAD3...
 
Introduction to AWS App Mesh - MAD301 - Anaheim AWS Summit
Introduction to AWS App Mesh - MAD301 - Anaheim AWS SummitIntroduction to AWS App Mesh - MAD301 - Anaheim AWS Summit
Introduction to AWS App Mesh - MAD301 - Anaheim AWS Summit
 
Managing microservices using AWS App Mesh - MAD302 - Chicago AWS Summit
Managing microservices using AWS App Mesh - MAD302 - Chicago AWS SummitManaging microservices using AWS App Mesh - MAD302 - Chicago AWS Summit
Managing microservices using AWS App Mesh - MAD302 - Chicago AWS Summit
 
Introduction to AWS App Mesh - MAD303 - Atlanta AWS Summit
Introduction to AWS App Mesh - MAD303 - Atlanta AWS SummitIntroduction to AWS App Mesh - MAD303 - Atlanta AWS Summit
Introduction to AWS App Mesh - MAD303 - Atlanta AWS Summit
 
Microservices for Startups
Microservices for StartupsMicroservices for Startups
Microservices for Startups
 
Introducing AWS App Mesh - MAD303 - Santa Clara AWS Summit
Introducing AWS App Mesh - MAD303 - Santa Clara AWS SummitIntroducing AWS App Mesh - MAD303 - Santa Clara AWS Summit
Introducing AWS App Mesh - MAD303 - Santa Clara AWS Summit
 
Instrumenting Kubernetes for Observability Using AWS X-Ray and Amazon CloudWa...
Instrumenting Kubernetes for Observability Using AWS X-Ray and Amazon CloudWa...Instrumenting Kubernetes for Observability Using AWS X-Ray and Amazon CloudWa...
Instrumenting Kubernetes for Observability Using AWS X-Ray and Amazon CloudWa...
 
AWS X-Ray: Debugging Applications at Scale - AWS Online Tech Talks
AWS X-Ray: Debugging Applications at Scale - AWS Online Tech TalksAWS X-Ray: Debugging Applications at Scale - AWS Online Tech Talks
AWS X-Ray: Debugging Applications at Scale - AWS Online Tech Talks
 
善用 GraphQL 與 AWS AppSync 讓您的 Progressive Web App (PWA) 加速進化 (Level 200)
善用  GraphQL 與 AWS AppSync 讓您的  Progressive Web App (PWA) 加速進化 (Level 200)善用  GraphQL 與 AWS AppSync 讓您的  Progressive Web App (PWA) 加速進化 (Level 200)
善用 GraphQL 與 AWS AppSync 讓您的 Progressive Web App (PWA) 加速進化 (Level 200)
 
Ripping off the Bandage: Re-Architecting Traditional Three-Tier Monoliths to ...
Ripping off the Bandage: Re-Architecting Traditional Three-Tier Monoliths to ...Ripping off the Bandage: Re-Architecting Traditional Three-Tier Monoliths to ...
Ripping off the Bandage: Re-Architecting Traditional Three-Tier Monoliths to ...
 
Application Performance Management on AWS
Application Performance Management on AWSApplication Performance Management on AWS
Application Performance Management on AWS
 
Deep-Dive for AWS X-Ray - DEV402 - re:Invent 2017
Deep-Dive for AWS X-Ray - DEV402 - re:Invent 2017Deep-Dive for AWS X-Ray - DEV402 - re:Invent 2017
Deep-Dive for AWS X-Ray - DEV402 - re:Invent 2017
 
Debug your Container and Serverless Applications with AWS X-Ray in 5 Minutes ...
Debug your Container and Serverless Applications with AWS X-Ray in 5 Minutes ...Debug your Container and Serverless Applications with AWS X-Ray in 5 Minutes ...
Debug your Container and Serverless Applications with AWS X-Ray in 5 Minutes ...
 
運用 AWS Edge Services 作為遊戲行業的關鍵基礎設施元件 (Level 200)
運用 AWS Edge Services 作為遊戲行業的關鍵基礎設施元件 (Level 200)運用 AWS Edge Services 作為遊戲行業的關鍵基礎設施元件 (Level 200)
運用 AWS Edge Services 作為遊戲行業的關鍵基礎設施元件 (Level 200)
 
Instrumenting Applications for Observability Using AWS X-Ray (DEV402-R2) - AW...
Instrumenting Applications for Observability Using AWS X-Ray (DEV402-R2) - AW...Instrumenting Applications for Observability Using AWS X-Ray (DEV402-R2) - AW...
Instrumenting Applications for Observability Using AWS X-Ray (DEV402-R2) - AW...
 
Keynote Gregor Hohpe - Serverless Architectures
Keynote Gregor Hohpe - Serverless ArchitecturesKeynote Gregor Hohpe - Serverless Architectures
Keynote Gregor Hohpe - Serverless Architectures
 
A New Approach to Continuous Monitoring in the Cloud: Migrate to AWS with NET...
A New Approach to Continuous Monitoring in the Cloud: Migrate to AWS with NET...A New Approach to Continuous Monitoring in the Cloud: Migrate to AWS with NET...
A New Approach to Continuous Monitoring in the Cloud: Migrate to AWS with NET...
 
The Serverless Tidal Wave - SwampUP 2018 Keynote
The Serverless Tidal Wave - SwampUP 2018 KeynoteThe Serverless Tidal Wave - SwampUP 2018 Keynote
The Serverless Tidal Wave - SwampUP 2018 Keynote
 
Building API Driven Microservices
Building API Driven MicroservicesBuilding API Driven Microservices
Building API Driven Microservices
 

More from AWSKRUG - AWS한국사용자모임

More from AWSKRUG - AWS한국사용자모임 (20)

IaC로 AWS인프라 관리하기 - 이진성 (AUSG) :: AWS Community Day Online 2021
IaC로 AWS인프라 관리하기 - 이진성 (AUSG) :: AWS Community Day Online 2021IaC로 AWS인프라 관리하기 - 이진성 (AUSG) :: AWS Community Day Online 2021
IaC로 AWS인프라 관리하기 - 이진성 (AUSG) :: AWS Community Day Online 2021
 
Docker를 활용한 손쉬운 ECS 활용기 - 김민태 (AUSG) :: AWS Community Day Online 2021
Docker를 활용한 손쉬운 ECS 활용기 - 김민태 (AUSG) :: AWS Community Day Online 2021Docker를 활용한 손쉬운 ECS 활용기 - 김민태 (AUSG) :: AWS Community Day Online 2021
Docker를 활용한 손쉬운 ECS 활용기 - 김민태 (AUSG) :: AWS Community Day Online 2021
 
AWS와 함께하는 무중단 배포 파이프라인 개선기 - 황성찬 (AUSG) :: AWS Community Day Online 2021
AWS와 함께하는 무중단 배포 파이프라인 개선기 - 황성찬 (AUSG) :: AWS Community Day Online 2021AWS와 함께하는 무중단 배포 파이프라인 개선기 - 황성찬 (AUSG) :: AWS Community Day Online 2021
AWS와 함께하는 무중단 배포 파이프라인 개선기 - 황성찬 (AUSG) :: AWS Community Day Online 2021
 
보안을 위한 AWS Network 구성 - 우수연 (AUSG) :: AWS Community Day Online 2021
보안을 위한 AWS Network 구성 - 우수연 (AUSG) :: AWS Community Day Online 2021보안을 위한 AWS Network 구성 - 우수연 (AUSG) :: AWS Community Day Online 2021
보안을 위한 AWS Network 구성 - 우수연 (AUSG) :: AWS Community Day Online 2021
 
자연어 처리 ML모델을 활용한 이커머스 문제 해결하기 - 진현두 (카카오스타일) :: AWS Community Day Online 2021
자연어 처리 ML모델을 활용한 이커머스 문제 해결하기 - 진현두 (카카오스타일) :: AWS Community Day Online 2021자연어 처리 ML모델을 활용한 이커머스 문제 해결하기 - 진현두 (카카오스타일) :: AWS Community Day Online 2021
자연어 처리 ML모델을 활용한 이커머스 문제 해결하기 - 진현두 (카카오스타일) :: AWS Community Day Online 2021
 
Athena & Step Function 으로 통계 파이프라인 구축하기 - 변규현 (당근마켓) :: AWS Community Day Onl...
Athena & Step Function 으로 통계 파이프라인 구축하기 - 변규현 (당근마켓) :: AWS Community Day Onl...Athena & Step Function 으로 통계 파이프라인 구축하기 - 변규현 (당근마켓) :: AWS Community Day Onl...
Athena & Step Function 으로 통계 파이프라인 구축하기 - 변규현 (당근마켓) :: AWS Community Day Onl...
 
자바개발자가 최대한 빠르게 서비스를 오픈하는 방법 - 최진환 (드라마앤컴퍼니) :: AWS Community Day Online 2021
자바개발자가 최대한 빠르게 서비스를 오픈하는 방법 - 최진환 (드라마앤컴퍼니) :: AWS Community Day Online 2021자바개발자가 최대한 빠르게 서비스를 오픈하는 방법 - 최진환 (드라마앤컴퍼니) :: AWS Community Day Online 2021
자바개발자가 최대한 빠르게 서비스를 오픈하는 방법 - 최진환 (드라마앤컴퍼니) :: AWS Community Day Online 2021
 
스타트업 나홀로 데이터 엔지니어: 데이터 분석 환경 구축기 - 천지은 (Tappytoon) :: AWS Community Day Onlin...
스타트업 나홀로 데이터 엔지니어: 데이터 분석 환경 구축기 - 천지은 (Tappytoon) :: AWS Community Day Onlin...스타트업 나홀로 데이터 엔지니어: 데이터 분석 환경 구축기 - 천지은 (Tappytoon) :: AWS Community Day Onlin...
스타트업 나홀로 데이터 엔지니어: 데이터 분석 환경 구축기 - 천지은 (Tappytoon) :: AWS Community Day Onlin...
 
커뮤니티 빌더를 아시나요? - 윤평호(AWSKRUG) :: AWS Community Day Online 2021
커뮤니티 빌더를 아시나요? - 윤평호(AWSKRUG) :: AWS Community Day Online 2021커뮤니티 빌더를 아시나요? - 윤평호(AWSKRUG) :: AWS Community Day Online 2021
커뮤니티 빌더를 아시나요? - 윤평호(AWSKRUG) :: AWS Community Day Online 2021
 
복잡한 권한신청문제 ConsoleMe로 해결하기 - 손건 (AB180) :: AWS Community Day Online 2021
복잡한 권한신청문제 ConsoleMe로 해결하기 - 손건 (AB180) :: AWS Community Day Online 2021복잡한 권한신청문제 ConsoleMe로 해결하기 - 손건 (AB180) :: AWS Community Day Online 2021
복잡한 권한신청문제 ConsoleMe로 해결하기 - 손건 (AB180) :: AWS Community Day Online 2021
 
ECS to EKS 마이그레이션 경험기 - 유용환(Superb AI) :: AWS Community Day Online 2021
ECS to EKS 마이그레이션 경험기 - 유용환(Superb AI) :: AWS Community Day Online 2021ECS to EKS 마이그레이션 경험기 - 유용환(Superb AI) :: AWS Community Day Online 2021
ECS to EKS 마이그레이션 경험기 - 유용환(Superb AI) :: AWS Community Day Online 2021
 
복잡한 기존 시스템에 피쳐 애드업 후기 - 김태웅(브랜디) :: AWS Community Day Online 2021
복잡한 기존 시스템에 피쳐 애드업 후기 - 김태웅(브랜디) :: AWS Community Day Online 2021복잡한 기존 시스템에 피쳐 애드업 후기 - 김태웅(브랜디) :: AWS Community Day Online 2021
복잡한 기존 시스템에 피쳐 애드업 후기 - 김태웅(브랜디) :: AWS Community Day Online 2021
 
EKS에서 Opentelemetry로 코드실행 모니터링하기 - 신재현 (인덴트코퍼레이션) :: AWS Community Day Online...
EKS에서 Opentelemetry로 코드실행 모니터링하기 - 신재현 (인덴트코퍼레이션) :: AWS Community Day Online...EKS에서 Opentelemetry로 코드실행 모니터링하기 - 신재현 (인덴트코퍼레이션) :: AWS Community Day Online...
EKS에서 Opentelemetry로 코드실행 모니터링하기 - 신재현 (인덴트코퍼레이션) :: AWS Community Day Online...
 
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
 
[AWS Hero 스페셜] 서버리스 기반 검색 서비스 구축하기 - 이상현(스마일벤처스) :: AWS Community Day Online ...
[AWS Hero 스페셜] 서버리스 기반 검색 서비스 구축하기 - 이상현(스마일벤처스) :: AWS Community Day Online ...[AWS Hero 스페셜] 서버리스 기반 검색 서비스 구축하기 - 이상현(스마일벤처스) :: AWS Community Day Online ...
[AWS Hero 스페셜] 서버리스 기반 검색 서비스 구축하기 - 이상현(스마일벤처스) :: AWS Community Day Online ...
 
초기 스타트업의 AWS - 김지훈(투어라이브) :: AWS Community Day Online 2020
초기 스타트업의 AWS - 김지훈(투어라이브) :: AWS Community Day Online 2020초기 스타트업의 AWS - 김지훈(투어라이브) :: AWS Community Day Online 2020
초기 스타트업의 AWS - 김지훈(투어라이브) :: AWS Community Day Online 2020
 
[AWS Hero 스페셜] Amazon Personalize를 통한 개인화/추천 서비스 개발 노하우 - 소성운(크로키닷컴) :: AWS C...
[AWS Hero 스페셜] Amazon Personalize를 통한 개인화/추천 서비스 개발 노하우 - 소성운(크로키닷컴) :: AWS C...[AWS Hero 스페셜] Amazon Personalize를 통한 개인화/추천 서비스 개발 노하우 - 소성운(크로키닷컴) :: AWS C...
[AWS Hero 스페셜] Amazon Personalize를 통한 개인화/추천 서비스 개발 노하우 - 소성운(크로키닷컴) :: AWS C...
 
goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020
goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020
goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020
 
온라인 주문 서비스를 서버리스 아키텍쳐로 구축하기 - 김태우(Classmethod) :: AWS Community Day Online 2020
온라인 주문 서비스를 서버리스 아키텍쳐로 구축하기 - 김태우(Classmethod) :: AWS Community Day Online 2020온라인 주문 서비스를 서버리스 아키텍쳐로 구축하기 - 김태우(Classmethod) :: AWS Community Day Online 2020
온라인 주문 서비스를 서버리스 아키텍쳐로 구축하기 - 김태우(Classmethod) :: AWS Community Day Online 2020
 
엔터프라이즈 기업을 위한 Digital 플랫폼 구축 사례 - 권낙주(SK C&C) :: AWS Community Day Online 2020
엔터프라이즈 기업을 위한 Digital 플랫폼 구축 사례 - 권낙주(SK C&C)  :: AWS Community Day Online 2020엔터프라이즈 기업을 위한 Digital 플랫폼 구축 사례 - 권낙주(SK C&C)  :: AWS Community Day Online 2020
엔터프라이즈 기업을 위한 Digital 플랫폼 구축 사례 - 권낙주(SK C&C) :: AWS Community Day Online 2020
 

Recently uploaded

Recently uploaded (20)

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 

Service Mesh, 좀 더 쉽게 - AWS App Mesh :: 안주은 - AWS Community Day 2019

  • 1. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Service Mesh, 좀 더 쉽게 - AWS App Mesh 안주은 DevOps Engineer MyMusicTaste Github: @JooeunAhn
  • 2. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Introducing AWS App Mesh App Mesh는 매니지드 서비스 메쉬 서비스로, 마이크로서비스의 Inter-communication을 용이하게 관리할 수 있게 도와주는 서비스 입니다.
  • 3. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Agenda Service Mesh What is Service Mesh? What is Service Mesh Control Plan? App Mesh Features What is App Mesh? Features Demo
  • 4. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Before we are talking about it... Microservice Architecture 하나의 큰 어플리케이션을 여러 개의 작은 서비스로 쪼갠 아키텍쳐 각각의 서비스들이 약속된 Protocol로 Communication
  • 5. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Before we are talking about it...
  • 6. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Before we are talking about it...
  • 7. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What if..
  • 8. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What if..
  • 9. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What is Service Mesh? Service Mesh A service mesh is a dedicated infrastructure layer for handling service-to-service communication. It’s responsible for the reliable delivery of requests through the complex topology of services that comprise a modern, cloud native application. In practice, the service mesh is typically implemented as an array of lightweight network proxies that are deployed alongside application code, without the application needing to be aware. - Linkerd CEO William Morgan
  • 10. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What is Service Mesh? Ref : https://blog.envoyproxy.io/service-mesh-data-plane-vs-cont rol-plane-2774e720f7fc 서비스 메쉬의 기본 컨셉. 모든 네트워크 트래픽은 Local sidecar proxy를 통해 적절한 대상으로 흐릅니다. Service Instance는 전체 Network를 인식하지 않습니다.
  • 11. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. The data plane Ref : https://blog.envoyproxy.io/service-mesh-data-plane-vs-cont rol-plane-2774e720f7fc Service Discovery Health Checking Routing Load Balancing Authentication and Authorization Observability
  • 12. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. OSS project Wide community support, numerous integrations Stable and production-proven “Graduated Project” in Cloud Native Computing Foundation Started at Lyft in 2016 App Mesh uses Envoy proxy
  • 13. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. How do we tell every proxy what to do?
  • 14. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Configuring lots of proxies is hard!
  • 15. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What is service mesh control plane? Ref : https://blog.envoyproxy.io/service-mesh-data-plane-vs-cont rol-plane-2774e720f7fc Control plane의 목표는 Date plane에 적용될 policy를 설정 하는 것 입니다.
  • 16. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh configures every proxy
  • 17. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Dynamic state changes impact proxy configuration App developer Infra operator Reporting Intent App developer App developer Magic Deployments Scaling Health
  • 18. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Application observability + others 일관된 데이터를 통해 문제 해결 시간 단축 Prometheus, Datadog 와의 integration Service간 network issue를 손쉽게 탐지
  • 19. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS integrations Service Discovery Microservices
  • 20. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Regions US West Oregon (US-West-2) Europe Ireland (EU-West-1) US East N. Virginia (US-East-1) Ohio (US-East-2)
  • 21. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Preview v/s GA (capabilities) Preview API ready For use with sample apps not production HTTP path based routing Statd based logs, metrics integrations GA Console Integrations Traffic management AWS Cloud Map Cross account Amazon EC2 Post GA TLS Ingress
  • 22. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Demo
  • 23. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh examples Link: https://github.com/awslabs/aws-app-mesh-examples 예제에 필요한 모든 Infrastructure는 CloudFormation을 통해 손쉽게 build 가능. AWS ECS & AWS EKS 두가지 버전으로 제공 됩니다.
  • 24. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh examples 이 예제를 통해 어떻게 Traffic이 AWS App Mesh를 통해 Routing 되는지 알 수 있습니다. 이 Application은 color-gateway와 color-teller 서비스로 만들어져 있습니다.
  • 25. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. ColorTeller Color-teller 는 Color를 리턴하는 간단한 http service Configuration은 환경변수로 설정 Envoy task가 sidecar 방식으로 같이 실행함. 환경변수로 여러 버전의 서비스를 만들어 각각 특정 색상을 반환하도록 구성할 예정.
  • 26. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. ColorGateway color-gateway는 color-teller로 부터 응답받은 color를 외부 client에게 리턴하는 간단한 http 서비스 http://colorgateway.{domain}/color {“color”: “blue” | “green” | “red” | etc}
  • 27. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh examples
  • 28. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh examples Mesh란 서비스들 사이의 Network traffic에 대한 logical boundary Mesh의 구성요소는 Virtual nodes, Virtual routers, and Routes. Mesh는 모든 엔티티에 적용될 설정을 가지고 있습니다. for e.g. monitoring, logging, tracing, control-plane endpoint for proxies to connect, etc.
  • 29. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh examples
  • 30. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh examples
  • 31. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh examples
  • 32. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Virtual Node Virtual Node Service Discovery BackendsListeners Virtual Node Logical representation of runtime services Backends 이 Node가 통신할 대상의 집합 (hostnames) Service discovery Callers가 이 Node를 찾는 방법들 (DNS hostname or AWS Cloud Map* namespace, serviced, and selectors) Listeners incoming traffic을 관리할 정책 Ed: port, Health check*, Circuit breaker*, Retries*
  • 33. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh Mesh–[myapp] Virtual Node A Service Discovery Listener Backends Virtual Node B Service Discovery Listener Backends Virtual Node Source virtual-node: Backends 집합을 기술한 Virtual Node. Destination virtual-node: Listener와 Service Discovery를 기술한 Virtual Node. Destination Virtual Node만 Route에 등록할 수 있음
  • 34. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Virtual Node
  • 35. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Virtual Node
  • 36. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Virtual Node White
  • 37. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Virtual Node (colorgateway) colorteller.default.svc.cluster.local
  • 38. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Virtual Node(colorteller)
  • 39. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Virtual Node
  • 40. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Virtual Router Virtual Router: B Service names Service name Names that clients will use to connect to the service Virtual-router는 Traffic을 등록된 서비스와 연결된 Virtual Node로 Routing 합니다.
  • 41. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Virtual Router A B rq.get(“b.local”) b.local == Service Name
  • 42. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Virtual Router
  • 43. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Virtual Router
  • 44. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Virtual Router colorteller.default.svc.cluster.localcolorgateway.default.svc.cluster.local
  • 45. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Virtual Router
  • 46. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh Mesh–[myapp] Virtual Node A Virtual Node B Virtual Router Routes Route Route: Reqs가 처리되는 방법을 정의하는 튜플 For e.g. forwarding a request to a destination virtual-node when the http path prefix is “/”.
  • 47. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Route B rq.get(“b.local/”) Virtual Router Virtual Node match: “/”, target: b b Route
  • 48. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Routes Destination’s virtual router and route Virtual router: B HTTP routes Match Prefix: / Action: Targets B Route B Virtual node destination + weight Route Name: B1 Match Action: Route Name: B2 Other Protocol routes 하나의 Virtual-router에 여러 개의 Route가 등록될 수 있으며, 각각의 Route는 하나 이상의 Virtual Node를 대상으로 하는 Action을 정의할 수 있습니다.
  • 49. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Route
  • 50. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Route White
  • 51. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Route colorgateway-route colorteller-route
  • 52. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Route
  • 53. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh examples
  • 54. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh examples
  • 55. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh examples
  • 56. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh examples
  • 57. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Update routes Virtual router: B HTTP route targets: prefix: / B B’ A B B’ Route B Virtual node destination + weight Route B’ New service or service version
  • 58. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. A Mesh—[myapp] Virtual Node A Service Discovery BackendListener Virtual router Domains action: match: / B B’ Service B Service B’ Virtual Node B’ Service Discovery Listener Backends Virtual Node B Service Discovery Listener Backends B B’ Update routes
  • 59. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Update routes
  • 60. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App Mesh examples
  • 61. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Update routes
  • 62. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Update routes Blue: 80% Red: 20%
  • 63. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Virtual Node B1 Mesh Service A Service B Service C Virtual router Virtual router A C D Virtual Node C2 Virtual Node C1 Service D Virtual router Virtual Node D1 Virtual Node D1 B B’ Summary
  • 64. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Getting started Product overview https://aws.amazon.com/app-mesh Documentation https://docs.aws.amazon.com/app-mesh/index.html Examples https://github.com/awslabs/aws-app-mesh-examples Issues & Roadmap https://github.com/awslabs/aws-app-mesh-examples/issues
  • 65. Thank you! © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 안주은 DevOps Engineer MyMusicTaste Github: @JooeunAhn