SlideShare a Scribd company logo
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Using Containers & Serverless to
Deploy Microservices
Raj Chilakapati
Solutions Architect
AWS
A R C 2 1 4
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Our Goal
Explore the benefits and trade-offs of container and
serverless architectures
• Understand serverless and container options on AWS —
both offer an opportunity to leverage managed platforms.
•Overview of architectural considerations for both models
•Review of common use cases and approaches
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Options for architecting your microservices
AWS Lambda
Amazon EKS
Amazon ECS
AWS Fargate
Containers Serverless
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Containers: ECS, EKS, Fargate
• Platforms to run containerized applications on AWS
• Easily run and scale applications to meet your needs
• Native integration with other AWS services
• Pairs well with CI/CD
• Benefits
• Portability
• Control
• Rich Ecosystem
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Container Web Architecture
VPC
Availability Zone A Availability Zone B
Public Subnet
Private Subnet
Public Subnet
Private Subnet
NAT Gateway NAT Gateway
ECS Cluster
Auto Scaling Group
Instances Instances
Internet
Gateway
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.@ T I F F A N Y F A Y J
Customers needed an easier way to manage large clusters
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.@ T I F F A N Y F A Y J
Amazon Elastic Container Service
Cluster management as a hosted service
Scheduling and Orchestration
Cluster Manager Placement Engine
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.@ T I F F A N Y F A Y J
Scheduling and Orchestration
Cluster Manager Placement Engine
ECS
AMI
Docker
Engine
ECS
Agent
EC2 instance
ECS
AMI
Docker
Engine
ECS
Agent
EC2 instance
ECS
AMI
Docker
Engine
ECS
Agent
EC2 instance
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.@ T I F F A N Y F A Y J
Introducing AWS Fargate
Managed by AWS
No EC2 instances to provision, scale, or manage
Elastic
Scale up & down seamlessly
Pay only for what you use
Integrated
with the AWS ecosystem: VPC networking,
Elastic Load Balancing, IAM permissions, Amazon
CloudWatch, Service Discovery, and more
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.@ T I F F A N Y F A Y J
AWS container services landscape
Management
Deployment, scheduling, scaling, &
management of containerized
applications
Hosting
Where the containers run
Amazon Elastic
Container Service
Amazon Elastic
Container Service for
Kubernetes
Amazon EC2 AWS Fargate
Image registry
Container image repository
Amazon Elastic
Container Registry
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Serverless: Lambda
• Platform to run code without thinking about servers
• Our definition:
• No servers to provision or manage
• Scales with usage
• Never pay for idle
• High Availability built in, Fault tolerance made easier.
• Native integration with other AWS services
• Benefits:
• Event-driven framework
• Multiple invocation models
• Opinionated
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Serverless Web Architecture
AWS Cloud
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Architectural Considerations
• Custom code & services: build
your own environment
• Numerous choices
• Requires management and
orchestration*
• Standardized choices
• Opinionated approach drives
scalable platform
• Security and scaling
managed by AWS
• Serverless and
“containerless”
Containers Serverless
* - Fargate changes this model
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Other Considerations
• Wide array of power options
• Power level managed by container,
scoped by host
• Fargate offers streamlined model
• Multiple networking modes
• Mature tooling
• Easy power level selection
• 128MB to 3GB
• Network and CPU assigned
proportionally
• Can overwhelm backends
• Developing tooling
• Organizational readiness?
Containers Serverless
* - Fargate changes this model
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Ideas on selecting … Containers
When you need…
• Lower startup latency
• Support for long running compute jobs (> 15 minutes)
• Predictable, high traffic usage
When you want…
• Complete control of compute environment
• But not just for the sake of control
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Ideas on selecting … Serverless
When you need…
• To trigger action on an event
• Support for varying utilization
• Ability to handle unknown demand
When you want to…
• Quickly prove business value
• Hand operational complexity (e.g. patching, scaling) to AWS
• Make fewer decisions
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What if I can’t decide?
Runtime environment
compatible with AWS
Lambda?
.NET Core, Go, Java, Python,
or Node.js
Unknown
demand and
below RPS
breakeven
Stateful or
storage-
intensive use
case?
Desire orchestration
portability OR open
source fan?
Amazon EKSAre you comfortable
managing your own
infrastructure?
Amazon ECSAWS Fargate
Deployment
Package size
<= 50MB
Desired Service
runtime <= 15
minutes?
Decision Tree – well, almost!
AWS Lambda
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon API Gateway
Enables best practices for distributed systems:
• Throttling
• Retry with exponential fallback
• Fail fast
Support for public and private services
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS AppSync
Enables data-driven, real-time apps:
• Multiple data sources, one endpoint
• Client specifies payload
• Subscription to latest data
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS X-Ray
Delivers insight into distributed applications:
• Uncover application issues
• Improve application performance
• Ready for ECS, Lambda, and more
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
To learn more…
Containers
https://aws.amazon.com/containers/
Serverless
https://aws.amazon.com/serverless/
Thank you!
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Raj Chilakapati
chilakap@amazon.com
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.

More Related Content

What's hot

Leadership Session: Using DevOps, Microservices, and Serverless to Accelerate...
Leadership Session: Using DevOps, Microservices, and Serverless to Accelerate...Leadership Session: Using DevOps, Microservices, and Serverless to Accelerate...
Leadership Session: Using DevOps, Microservices, and Serverless to Accelerate...
Amazon Web Services
 
AWS 微服務中的 Container 選項比較 (Level 400)
AWS 微服務中的 Container 選項比較   (Level 400)AWS 微服務中的 Container 選項比較   (Level 400)
AWS 微服務中的 Container 選項比較 (Level 400)
Amazon Web Services
 
AWS Certificate Management and Private Certificate Authority Deep Dive (SEC41...
AWS Certificate Management and Private Certificate Authority Deep Dive (SEC41...AWS Certificate Management and Private Certificate Authority Deep Dive (SEC41...
AWS Certificate Management and Private Certificate Authority Deep Dive (SEC41...
Amazon Web Services
 
[REPEAT 1] Elastic Load Balancing: Deep Dive and Best Practices (NET404-R1) -...
[REPEAT 1] Elastic Load Balancing: Deep Dive and Best Practices (NET404-R1) -...[REPEAT 1] Elastic Load Balancing: Deep Dive and Best Practices (NET404-R1) -...
[REPEAT 1] Elastic Load Balancing: Deep Dive and Best Practices (NET404-R1) -...
Amazon Web Services
 
DEM18 How SendBird Built a Serverless Log-Processing Pipeline in a Week
DEM18 How SendBird Built a Serverless Log-Processing Pipeline in a WeekDEM18 How SendBird Built a Serverless Log-Processing Pipeline in a Week
DEM18 How SendBird Built a Serverless Log-Processing Pipeline in a Week
Amazon Web Services
 
Thomson Reuters Shows How It Hosted a .NET App on Amazon ECS Using Windows Co...
Thomson Reuters Shows How It Hosted a .NET App on Amazon ECS Using Windows Co...Thomson Reuters Shows How It Hosted a .NET App on Amazon ECS Using Windows Co...
Thomson Reuters Shows How It Hosted a .NET App on Amazon ECS Using Windows Co...
Amazon Web Services
 
DEM06 How Demandbase Cut Its Container Costs by 79%
DEM06 How Demandbase Cut Its Container Costs by 79%DEM06 How Demandbase Cut Its Container Costs by 79%
DEM06 How Demandbase Cut Its Container Costs by 79%
Amazon Web Services
 
Amazon EC2 Foundations (CMP208-R1) - AWS re:Invent 2018
Amazon EC2 Foundations (CMP208-R1) - AWS re:Invent 2018Amazon EC2 Foundations (CMP208-R1) - AWS re:Invent 2018
Amazon EC2 Foundations (CMP208-R1) - AWS re:Invent 2018
Amazon Web Services
 
OTT 成功的關鍵:打造影劇品質監控儀表板 (Level: 200)
OTT 成功的關鍵:打造影劇品質監控儀表板 (Level: 200)OTT 成功的關鍵:打造影劇品質監控儀表板 (Level: 200)
OTT 成功的關鍵:打造影劇品質監控儀表板 (Level: 200)
Amazon Web Services
 
Networking for VMware Cloud on AWS (NET307-R1) - AWS re:Invent 2018
Networking for VMware Cloud on AWS (NET307-R1) - AWS re:Invent 2018Networking for VMware Cloud on AWS (NET307-R1) - AWS re:Invent 2018
Networking for VMware Cloud on AWS (NET307-R1) - AWS re:Invent 2018
Amazon Web Services
 
Executive Security Simulation Workshop (WPS206) - AWS re:Invent 2018
Executive Security Simulation Workshop (WPS206) - AWS re:Invent 2018Executive Security Simulation Workshop (WPS206) - AWS re:Invent 2018
Executive Security Simulation Workshop (WPS206) - AWS re:Invent 2018
Amazon Web Services
 
以 Amazon EC2 Spot 執行個體有效控制專案成本 (Level: 200)
以 Amazon EC2 Spot 執行個體有效控制專案成本 (Level: 200)以 Amazon EC2 Spot 執行個體有效控制專案成本 (Level: 200)
以 Amazon EC2 Spot 執行個體有效控制專案成本 (Level: 200)
Amazon Web Services
 
SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018
SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018
SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018
Amazon Web Services
 
Hands-On: Automating AWS Infrastructure with PowerShell (WIN308) - AWS re:Inv...
Hands-On: Automating AWS Infrastructure with PowerShell (WIN308) - AWS re:Inv...Hands-On: Automating AWS Infrastructure with PowerShell (WIN308) - AWS re:Inv...
Hands-On: Automating AWS Infrastructure with PowerShell (WIN308) - AWS re:Inv...
Amazon Web Services
 
Build a Kubernetes Cluster with Amazon EKS
Build a Kubernetes Cluster with Amazon EKSBuild a Kubernetes Cluster with Amazon EKS
Build a Kubernetes Cluster with Amazon EKS
Amazon Web Services
 
SID305 AWS Certificate Manager Private CA
SID305 AWS Certificate Manager Private CASID305 AWS Certificate Manager Private CA
SID305 AWS Certificate Manager Private CA
Amazon Web Services
 
AWSome Day - Solutions Architecture Best Practices
AWSome Day - Solutions Architecture Best PracticesAWSome Day - Solutions Architecture Best Practices
AWSome Day - Solutions Architecture Best Practices
Amazon Web Services
 
ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre...
 ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre... ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre...
ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre...
Amazon Web Services
 
善用 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)
Amazon Web Services
 
Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...
Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...
Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...
Amazon Web Services
 

What's hot (20)

Leadership Session: Using DevOps, Microservices, and Serverless to Accelerate...
Leadership Session: Using DevOps, Microservices, and Serverless to Accelerate...Leadership Session: Using DevOps, Microservices, and Serverless to Accelerate...
Leadership Session: Using DevOps, Microservices, and Serverless to Accelerate...
 
AWS 微服務中的 Container 選項比較 (Level 400)
AWS 微服務中的 Container 選項比較   (Level 400)AWS 微服務中的 Container 選項比較   (Level 400)
AWS 微服務中的 Container 選項比較 (Level 400)
 
AWS Certificate Management and Private Certificate Authority Deep Dive (SEC41...
AWS Certificate Management and Private Certificate Authority Deep Dive (SEC41...AWS Certificate Management and Private Certificate Authority Deep Dive (SEC41...
AWS Certificate Management and Private Certificate Authority Deep Dive (SEC41...
 
[REPEAT 1] Elastic Load Balancing: Deep Dive and Best Practices (NET404-R1) -...
[REPEAT 1] Elastic Load Balancing: Deep Dive and Best Practices (NET404-R1) -...[REPEAT 1] Elastic Load Balancing: Deep Dive and Best Practices (NET404-R1) -...
[REPEAT 1] Elastic Load Balancing: Deep Dive and Best Practices (NET404-R1) -...
 
DEM18 How SendBird Built a Serverless Log-Processing Pipeline in a Week
DEM18 How SendBird Built a Serverless Log-Processing Pipeline in a WeekDEM18 How SendBird Built a Serverless Log-Processing Pipeline in a Week
DEM18 How SendBird Built a Serverless Log-Processing Pipeline in a Week
 
Thomson Reuters Shows How It Hosted a .NET App on Amazon ECS Using Windows Co...
Thomson Reuters Shows How It Hosted a .NET App on Amazon ECS Using Windows Co...Thomson Reuters Shows How It Hosted a .NET App on Amazon ECS Using Windows Co...
Thomson Reuters Shows How It Hosted a .NET App on Amazon ECS Using Windows Co...
 
DEM06 How Demandbase Cut Its Container Costs by 79%
DEM06 How Demandbase Cut Its Container Costs by 79%DEM06 How Demandbase Cut Its Container Costs by 79%
DEM06 How Demandbase Cut Its Container Costs by 79%
 
Amazon EC2 Foundations (CMP208-R1) - AWS re:Invent 2018
Amazon EC2 Foundations (CMP208-R1) - AWS re:Invent 2018Amazon EC2 Foundations (CMP208-R1) - AWS re:Invent 2018
Amazon EC2 Foundations (CMP208-R1) - AWS re:Invent 2018
 
OTT 成功的關鍵:打造影劇品質監控儀表板 (Level: 200)
OTT 成功的關鍵:打造影劇品質監控儀表板 (Level: 200)OTT 成功的關鍵:打造影劇品質監控儀表板 (Level: 200)
OTT 成功的關鍵:打造影劇品質監控儀表板 (Level: 200)
 
Networking for VMware Cloud on AWS (NET307-R1) - AWS re:Invent 2018
Networking for VMware Cloud on AWS (NET307-R1) - AWS re:Invent 2018Networking for VMware Cloud on AWS (NET307-R1) - AWS re:Invent 2018
Networking for VMware Cloud on AWS (NET307-R1) - AWS re:Invent 2018
 
Executive Security Simulation Workshop (WPS206) - AWS re:Invent 2018
Executive Security Simulation Workshop (WPS206) - AWS re:Invent 2018Executive Security Simulation Workshop (WPS206) - AWS re:Invent 2018
Executive Security Simulation Workshop (WPS206) - AWS re:Invent 2018
 
以 Amazon EC2 Spot 執行個體有效控制專案成本 (Level: 200)
以 Amazon EC2 Spot 執行個體有效控制專案成本 (Level: 200)以 Amazon EC2 Spot 執行個體有效控制專案成本 (Level: 200)
以 Amazon EC2 Spot 執行個體有效控制專案成本 (Level: 200)
 
SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018
SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018
SPEKE-ing of Content Protection & DRM (MAE302) - AWS re:Invent 2018
 
Hands-On: Automating AWS Infrastructure with PowerShell (WIN308) - AWS re:Inv...
Hands-On: Automating AWS Infrastructure with PowerShell (WIN308) - AWS re:Inv...Hands-On: Automating AWS Infrastructure with PowerShell (WIN308) - AWS re:Inv...
Hands-On: Automating AWS Infrastructure with PowerShell (WIN308) - AWS re:Inv...
 
Build a Kubernetes Cluster with Amazon EKS
Build a Kubernetes Cluster with Amazon EKSBuild a Kubernetes Cluster with Amazon EKS
Build a Kubernetes Cluster with Amazon EKS
 
SID305 AWS Certificate Manager Private CA
SID305 AWS Certificate Manager Private CASID305 AWS Certificate Manager Private CA
SID305 AWS Certificate Manager Private CA
 
AWSome Day - Solutions Architecture Best Practices
AWSome Day - Solutions Architecture Best PracticesAWSome Day - Solutions Architecture Best Practices
AWSome Day - Solutions Architecture Best Practices
 
ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre...
 ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre... ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre...
ENT307 Move your Desktops and Apps to AWS with Amazon WorkSpaces and AppStre...
 
善用 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)
 
Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...
Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...
Autonomous DevSecOps: Five Steps to a Self-Driving Cloud (ENT214-S) - AWS re:...
 

Similar to Using Containers and Serverless to Deploy Microservices

Using Containers and Serverless to Deploy Microservices (ARC214) - AWS re:Inv...
Using Containers and Serverless to Deploy Microservices (ARC214) - AWS re:Inv...Using Containers and Serverless to Deploy Microservices (ARC214) - AWS re:Inv...
Using Containers and Serverless to Deploy Microservices (ARC214) - AWS re:Inv...
Amazon Web Services
 
Simplifying Microsoft Architectures with AWS Services
Simplifying Microsoft Architectures with AWS Services Simplifying Microsoft Architectures with AWS Services
Simplifying Microsoft Architectures with AWS Services
Amazon Web Services
 
[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...
[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...
[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...
Amazon Web Services
 
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
Arun Gupta
 
Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...
Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...
Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...
Chris Munns
 
AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...
AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...
AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...
Amazon Web Services Japan
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
Amazon Web Services
 
Introduction to Serverless on AWS - Builders Day Jerusalem
Introduction to Serverless on AWS - Builders Day JerusalemIntroduction to Serverless on AWS - Builders Day Jerusalem
Introduction to Serverless on AWS - Builders Day Jerusalem
Amazon Web Services
 
Getting-started-with-containers on AWS
Getting-started-with-containers on AWSGetting-started-with-containers on AWS
Getting-started-with-containers on AWS
Amazon Web Services
 
Design, Deploy, & Optimize SQL Server Workloads - SRV209 - Chicago AWS Summit
Design, Deploy, & Optimize SQL Server Workloads - SRV209 - Chicago AWS SummitDesign, Deploy, & Optimize SQL Server Workloads - SRV209 - Chicago AWS Summit
Design, Deploy, & Optimize SQL Server Workloads - SRV209 - Chicago AWS Summit
Amazon Web Services
 
Deep Dive into Amazon Fargate
Deep Dive into Amazon FargateDeep Dive into Amazon Fargate
Deep Dive into Amazon Fargate
Amazon Web Services
 
Containers - State of the Union
Containers - State of the UnionContainers - State of the Union
Containers - State of the Union
Amazon Web Services
 
2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless
2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless
2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless
Kim Kao
 
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
 
Design, Deploy, Optimize SQL Server Workloads on AWS - SRV209 - Anaheim AWS S...
Design, Deploy, Optimize SQL Server Workloads on AWS - SRV209 - Anaheim AWS S...Design, Deploy, Optimize SQL Server Workloads on AWS - SRV209 - Anaheim AWS S...
Design, Deploy, Optimize SQL Server Workloads on AWS - SRV209 - Anaheim AWS S...
Amazon Web Services
 
Develop Containerized Apps with AWS Fargate - SRV314 - Chicago AWS Summit
Develop Containerized Apps with AWS Fargate - SRV314 - Chicago AWS SummitDevelop Containerized Apps with AWS Fargate - SRV314 - Chicago AWS Summit
Develop Containerized Apps with AWS Fargate - SRV314 - Chicago AWS Summit
Amazon Web Services
 
Design, Deploy, & Optimize SQL Server Workloads
Design, Deploy, & Optimize SQL Server Workloads Design, Deploy, & Optimize SQL Server Workloads
Design, Deploy, & Optimize SQL Server Workloads
Amazon Web Services
 
Una introduzione alle differenti risorse computazionali disponibili con AWS
Una introduzione alle differenti risorse computazionali disponibili con AWSUna introduzione alle differenti risorse computazionali disponibili con AWS
Una introduzione alle differenti risorse computazionali disponibili con AWS
Amazon Web Services
 
Serverless use cases with AWS Lambda - More Serverless Event
Serverless use cases with AWS Lambda - More Serverless EventServerless use cases with AWS Lambda - More Serverless Event
Serverless use cases with AWS Lambda - More Serverless Event
Boaz Ziniman
 
Develop Containerized Apps with AWS Fargate
Develop Containerized Apps with AWS Fargate Develop Containerized Apps with AWS Fargate
Develop Containerized Apps with AWS Fargate
Amazon Web Services
 

Similar to Using Containers and Serverless to Deploy Microservices (20)

Using Containers and Serverless to Deploy Microservices (ARC214) - AWS re:Inv...
Using Containers and Serverless to Deploy Microservices (ARC214) - AWS re:Inv...Using Containers and Serverless to Deploy Microservices (ARC214) - AWS re:Inv...
Using Containers and Serverless to Deploy Microservices (ARC214) - AWS re:Inv...
 
Simplifying Microsoft Architectures with AWS Services
Simplifying Microsoft Architectures with AWS Services Simplifying Microsoft Architectures with AWS Services
Simplifying Microsoft Architectures with AWS Services
 
[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...
[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...
[NEW LAUNCH!] Advancing Software Procurement in a Containerized World with th...
 
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
 
Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...
Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...
Gluecon 2018 - The Best Practices and Hard Lessons Learned of Serverless Appl...
 
AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...
AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...
AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
 
Introduction to Serverless on AWS - Builders Day Jerusalem
Introduction to Serverless on AWS - Builders Day JerusalemIntroduction to Serverless on AWS - Builders Day Jerusalem
Introduction to Serverless on AWS - Builders Day Jerusalem
 
Getting-started-with-containers on AWS
Getting-started-with-containers on AWSGetting-started-with-containers on AWS
Getting-started-with-containers on AWS
 
Design, Deploy, & Optimize SQL Server Workloads - SRV209 - Chicago AWS Summit
Design, Deploy, & Optimize SQL Server Workloads - SRV209 - Chicago AWS SummitDesign, Deploy, & Optimize SQL Server Workloads - SRV209 - Chicago AWS Summit
Design, Deploy, & Optimize SQL Server Workloads - SRV209 - Chicago AWS Summit
 
Deep Dive into Amazon Fargate
Deep Dive into Amazon FargateDeep Dive into Amazon Fargate
Deep Dive into Amazon Fargate
 
Containers - State of the Union
Containers - State of the UnionContainers - State of the Union
Containers - State of the Union
 
2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless
2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless
2018 10-19-jc conf-embrace-legacy-java-ee-by-aws-serverless
 
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
 
Design, Deploy, Optimize SQL Server Workloads on AWS - SRV209 - Anaheim AWS S...
Design, Deploy, Optimize SQL Server Workloads on AWS - SRV209 - Anaheim AWS S...Design, Deploy, Optimize SQL Server Workloads on AWS - SRV209 - Anaheim AWS S...
Design, Deploy, Optimize SQL Server Workloads on AWS - SRV209 - Anaheim AWS S...
 
Develop Containerized Apps with AWS Fargate - SRV314 - Chicago AWS Summit
Develop Containerized Apps with AWS Fargate - SRV314 - Chicago AWS SummitDevelop Containerized Apps with AWS Fargate - SRV314 - Chicago AWS Summit
Develop Containerized Apps with AWS Fargate - SRV314 - Chicago AWS Summit
 
Design, Deploy, & Optimize SQL Server Workloads
Design, Deploy, & Optimize SQL Server Workloads Design, Deploy, & Optimize SQL Server Workloads
Design, Deploy, & Optimize SQL Server Workloads
 
Una introduzione alle differenti risorse computazionali disponibili con AWS
Una introduzione alle differenti risorse computazionali disponibili con AWSUna introduzione alle differenti risorse computazionali disponibili con AWS
Una introduzione alle differenti risorse computazionali disponibili con AWS
 
Serverless use cases with AWS Lambda - More Serverless Event
Serverless use cases with AWS Lambda - More Serverless EventServerless use cases with AWS Lambda - More Serverless Event
Serverless use cases with AWS Lambda - More Serverless Event
 
Develop Containerized Apps with AWS Fargate
Develop Containerized Apps with AWS Fargate Develop Containerized Apps with AWS Fargate
Develop Containerized Apps with AWS Fargate
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
Amazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
Amazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
Amazon Web Services
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Amazon Web Services
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
Amazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
Amazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Amazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
Amazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Amazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
Amazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Using Containers and Serverless to Deploy Microservices

  • 1.
  • 2. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Using Containers & Serverless to Deploy Microservices Raj Chilakapati Solutions Architect AWS A R C 2 1 4
  • 3. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Our Goal Explore the benefits and trade-offs of container and serverless architectures • Understand serverless and container options on AWS — both offer an opportunity to leverage managed platforms. •Overview of architectural considerations for both models •Review of common use cases and approaches
  • 4. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 5. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Options for architecting your microservices AWS Lambda Amazon EKS Amazon ECS AWS Fargate Containers Serverless
  • 6. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Containers: ECS, EKS, Fargate • Platforms to run containerized applications on AWS • Easily run and scale applications to meet your needs • Native integration with other AWS services • Pairs well with CI/CD • Benefits • Portability • Control • Rich Ecosystem
  • 7. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS Container Web Architecture VPC Availability Zone A Availability Zone B Public Subnet Private Subnet Public Subnet Private Subnet NAT Gateway NAT Gateway ECS Cluster Auto Scaling Group Instances Instances Internet Gateway
  • 8. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.@ T I F F A N Y F A Y J Customers needed an easier way to manage large clusters
  • 9. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.@ T I F F A N Y F A Y J Amazon Elastic Container Service Cluster management as a hosted service Scheduling and Orchestration Cluster Manager Placement Engine
  • 10. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.@ T I F F A N Y F A Y J Scheduling and Orchestration Cluster Manager Placement Engine ECS AMI Docker Engine ECS Agent EC2 instance ECS AMI Docker Engine ECS Agent EC2 instance ECS AMI Docker Engine ECS Agent EC2 instance
  • 11. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.@ T I F F A N Y F A Y J Introducing AWS Fargate Managed by AWS No EC2 instances to provision, scale, or manage Elastic Scale up & down seamlessly Pay only for what you use Integrated with the AWS ecosystem: VPC networking, Elastic Load Balancing, IAM permissions, Amazon CloudWatch, Service Discovery, and more
  • 12. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.@ T I F F A N Y F A Y J AWS container services landscape Management Deployment, scheduling, scaling, & management of containerized applications Hosting Where the containers run Amazon Elastic Container Service Amazon Elastic Container Service for Kubernetes Amazon EC2 AWS Fargate Image registry Container image repository Amazon Elastic Container Registry
  • 13. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Serverless: Lambda • Platform to run code without thinking about servers • Our definition: • No servers to provision or manage • Scales with usage • Never pay for idle • High Availability built in, Fault tolerance made easier. • Native integration with other AWS services • Benefits: • Event-driven framework • Multiple invocation models • Opinionated
  • 14. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS Serverless Web Architecture AWS Cloud
  • 15. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Architectural Considerations • Custom code & services: build your own environment • Numerous choices • Requires management and orchestration* • Standardized choices • Opinionated approach drives scalable platform • Security and scaling managed by AWS • Serverless and “containerless” Containers Serverless * - Fargate changes this model
  • 16. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Other Considerations • Wide array of power options • Power level managed by container, scoped by host • Fargate offers streamlined model • Multiple networking modes • Mature tooling • Easy power level selection • 128MB to 3GB • Network and CPU assigned proportionally • Can overwhelm backends • Developing tooling • Organizational readiness? Containers Serverless * - Fargate changes this model
  • 17. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 18. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Ideas on selecting … Containers When you need… • Lower startup latency • Support for long running compute jobs (> 15 minutes) • Predictable, high traffic usage When you want… • Complete control of compute environment • But not just for the sake of control
  • 19. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Ideas on selecting … Serverless When you need… • To trigger action on an event • Support for varying utilization • Ability to handle unknown demand When you want to… • Quickly prove business value • Hand operational complexity (e.g. patching, scaling) to AWS • Make fewer decisions
  • 20. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What if I can’t decide?
  • 21. Runtime environment compatible with AWS Lambda? .NET Core, Go, Java, Python, or Node.js Unknown demand and below RPS breakeven Stateful or storage- intensive use case? Desire orchestration portability OR open source fan? Amazon EKSAre you comfortable managing your own infrastructure? Amazon ECSAWS Fargate Deployment Package size <= 50MB Desired Service runtime <= 15 minutes? Decision Tree – well, almost! AWS Lambda
  • 22. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 23. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon API Gateway Enables best practices for distributed systems: • Throttling • Retry with exponential fallback • Fail fast Support for public and private services
  • 24. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS AppSync Enables data-driven, real-time apps: • Multiple data sources, one endpoint • Client specifies payload • Subscription to latest data
  • 25. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS X-Ray Delivers insight into distributed applications: • Uncover application issues • Improve application performance • Ready for ECS, Lambda, and more
  • 26. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. To learn more… Containers https://aws.amazon.com/containers/ Serverless https://aws.amazon.com/serverless/
  • 27. Thank you! © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Raj Chilakapati chilakap@amazon.com
  • 28. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.