SlideShare a Scribd company logo
1 of 26
Download to read offline
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
K Y I V
11.05.2019
CI/CD for Modern Applications
Massimo Re Ferrè
Developer Advocate
Amazon Web Services
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Who Am I ?
Amazon Web Services (Developer Advocate)
VMware (Solutions Architect and Technical Product Manager)
IBM (Professional Services and Solutions Architect)
Developer (many kilos ago)
Email: mreferre@amazon.com
Twitter: @mreferre
Github: github.com/mreferre
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
How software value gets created (in the old model)
Monolithic
application
“Time to user”: months / years
Very heavy
manual
integrations
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
How software value gets created (in the new model)
“Time to user”: hours / days
Small
independent
components…
End-to-end
(hands off)
automation
…. with
different
release cycles
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Agenda
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Agenda
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What are the compute options to run my code?
Instances
Containers
Lambda
Containers control plane
Containers data plane
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS compute abstractions layers
AWS
Lambda
Amazon
EC2
Metal
AWS
Fargate
Amazon
EKS
physicalseverVMcontainerfunction
Levelofabstraction
Provider space
(managed by AWS)
Consumer space
(managed by the customer)
Amazon
ECS
For this session, we are going to focus on this (as an example)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ECS w/ EC2 data plane
AWS Account Cust Account
VPC
Amazon EC2
TaskService
ENI
aws ecs run-task … --launch-type EC2 …
You have to manage this
capacity (e.g. with ASGs)
Amazon ECS
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Scaling metrics
https://garbe.io/blog/2017/04/12/a-better-solution-to-ecs-autoscaling/
https://medium.com/thron-tech/aws-ecs-host-auto-scaling-with-custom-cloudwatch-metrics-and-aws-lambda-b9a9f55faf1d
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Need for speed – (all lines are made up)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Need for speed – real example (all lines are for real)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ECS w/ FARGATE data plane
AWS Account
AWS Fargate
Cust Account
VPC
TaskService
ENI
aws ecs run-task … --launch-type FARGATE …
You don’t have to manage
capacity
Amazon ECS
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Agenda
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Blue/Green and the pressure on infrastructure
Task
Auto Scaling group
Instance
Task Task Task Task Task Task Task Task Task Task Task
Instance Instance Instance
Task Task Task Task Task Task Task Task Task Task Task Task
AWS Fargate
On ECS/EC2 On ECS/Fargate
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Blue/Green and the pressure on infrastructure
Task
Auto Scaling group
Instance
Task Task Task Task Task Task Task Task Task Task Task
Task Task Task Task Task Task Task Task Task Task Task Task
Instance Instance Instance
Task Task Task Task Task Task Task Task Task Task Task Task
Task Task Task Task Task Task Task Task Task Task Task Task
AWS Fargate
On ECS/EC2 On ECS/Fargate
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Blue/Green and the pressure on infrastructure
Task
Auto Scaling group
Instance
Task Task Task Task Task Task Task Task Task Task Task
Task Task Task Task Task Task Task Task Task Task Task Task
Instance Instance Instance
Task Task Task Task Task Task Task Task Task Task Task Task
Task Task Task Task Task Task Task Task Task Task Task Task
AWS Fargate
Instance Instance Instance Instance
On ECS/EC2 On ECS/Fargate
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Blue/Green and the pressure on infrastructure
Auto Scaling group
Instance Instance Instance Instance
AWS Fargate
Instance Instance Instance Instance
Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task
On ECS/EC2 On ECS/Fargate
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Blue/Green and the pressure on infrastructure
AWS Fargate
Auto Scaling group
Instance Instance Instance Instance
Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task
On ECS/EC2 On ECS/Fargate
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Blue/Green deployments
Service
Target-Group-Green Task Task Task
Service
Amazon ECR
Amazon ECS
Amazon ALB
Image1
THIS IS VER1
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Blue/Green deployments
Service
Target-Group-Green
Target-Group-Blue
Task Task Task
Service
Amazon ECR
Amazon ECS
Amazon ALB
Image1
THIS IS VER1
THIS IS VER1
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Blue/Green deployments
Service
Target-Group-Green
Target-Group-Blue
Task Task Task
Service
AWS CodeCommit AWS CodeBuild
AWS CodePipeline
AWS CodeDeploy Amazon ECR
Amazon ECS
Amazon ALB
Image1
THIS IS VER1
THIS IS VER1
<html>
<body>
<h1>THIS IS VER 1</h1>
</body>
</html>
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Blue/Green deployments
Service
Target-Group-Green
Target-Group-Blue
Task Task Task
Service
AWS CodeCommit AWS CodeBuild
AWS CodePipeline
AWS CodeDeploy Amazon ECR
Amazon ECS
<html>
<body>
<h1>THIS IS VER 1</h1>
</body>
</html>
<html>
<body>
<h1>THIS IS A NEW VER</h1>
</body>
</html>
Amazon ALB
Image1
Image2
THIS IS VER1
THIS IS VER1
Trigger
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Blue/Green deployments
Service
Target-Group-Green
Target-Group-Blue
Task Task Task
Service
AWS CodeCommit AWS CodeBuild
AWS CodePipeline
AWS CodeDeploy Amazon ECR
Amazon ECS
Amazon ALB
Image1
Image2
Task Task TaskTHIS IS A NEW VER
THIS IS VER1
<html>
<body>
<h1>THIS IS A NEW VER</h1>
</body>
</html>
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Blue/Green deployments
Service
Target-Group-Green
Target-Group-Blue Service
AWS CodeCommit AWS CodeBuild
AWS CodePipeline
AWS CodeDeploy Amazon ECR
Amazon ECS
Amazon ALB
Image1
Image2
Task Task TaskTHIS IS A NEW VER
THIS IS A NEW VER
<html>
<body>
<h1>THIS IS A NEW VER</h1>
</body>
</html>
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Demo?

More Related Content

More from Provectus

More from Provectus (20)

ODSC webinar "Kubeflow, MLFlow and Beyond — augmenting ML delivery" Stepan Pu...
ODSC webinar "Kubeflow, MLFlow and Beyond — augmenting ML delivery" Stepan Pu...ODSC webinar "Kubeflow, MLFlow and Beyond — augmenting ML delivery" Stepan Pu...
ODSC webinar "Kubeflow, MLFlow and Beyond — augmenting ML delivery" Stepan Pu...
 
"Building a Modern Data platform in the Cloud", Alex Casalboni, AWS Dev Day K...
"Building a Modern Data platform in the Cloud", Alex Casalboni, AWS Dev Day K..."Building a Modern Data platform in the Cloud", Alex Casalboni, AWS Dev Day K...
"Building a Modern Data platform in the Cloud", Alex Casalboni, AWS Dev Day K...
 
"How to build a global serverless service", Alex Casalboni, AWS Dev Day Kyiv ...
"How to build a global serverless service", Alex Casalboni, AWS Dev Day Kyiv ..."How to build a global serverless service", Alex Casalboni, AWS Dev Day Kyiv ...
"How to build a global serverless service", Alex Casalboni, AWS Dev Day Kyiv ...
 
"Automating AWS Infrastructure with PowerShell", Martin Beeby, AWS Dev Day Ky...
"Automating AWS Infrastructure with PowerShell", Martin Beeby, AWS Dev Day Ky..."Automating AWS Infrastructure with PowerShell", Martin Beeby, AWS Dev Day Ky...
"Automating AWS Infrastructure with PowerShell", Martin Beeby, AWS Dev Day Ky...
 
"Analyzing your web and application logs", Javier Ramirez, AWS Dev Day Kyiv 2...
"Analyzing your web and application logs", Javier Ramirez, AWS Dev Day Kyiv 2..."Analyzing your web and application logs", Javier Ramirez, AWS Dev Day Kyiv 2...
"Analyzing your web and application logs", Javier Ramirez, AWS Dev Day Kyiv 2...
 
"Resiliency and Availability Design Patterns for the Cloud", Sebastien Storma...
"Resiliency and Availability Design Patterns for the Cloud", Sebastien Storma..."Resiliency and Availability Design Patterns for the Cloud", Sebastien Storma...
"Resiliency and Availability Design Patterns for the Cloud", Sebastien Storma...
 
"Architecting SaaS solutions on AWS", Oleksandr Mykhalchuk, AWS Dev Day Kyiv ...
"Architecting SaaS solutions on AWS", Oleksandr Mykhalchuk, AWS Dev Day Kyiv ..."Architecting SaaS solutions on AWS", Oleksandr Mykhalchuk, AWS Dev Day Kyiv ...
"Architecting SaaS solutions on AWS", Oleksandr Mykhalchuk, AWS Dev Day Kyiv ...
 
"Developing with .NET Core on AWS", Martin Beeby, AWS Dev Day Kyiv 2019
"Developing with .NET Core on AWS", Martin Beeby, AWS Dev Day Kyiv 2019"Developing with .NET Core on AWS", Martin Beeby, AWS Dev Day Kyiv 2019
"Developing with .NET Core on AWS", Martin Beeby, AWS Dev Day Kyiv 2019
 
"How to build real-time backends", Martin Beeby, AWS Dev Day Kyiv 2019
"How to build real-time backends", Martin Beeby, AWS Dev Day Kyiv 2019"How to build real-time backends", Martin Beeby, AWS Dev Day Kyiv 2019
"How to build real-time backends", Martin Beeby, AWS Dev Day Kyiv 2019
 
"Integrate your front end apps with serverless backend in the cloud", Sebasti...
"Integrate your front end apps with serverless backend in the cloud", Sebasti..."Integrate your front end apps with serverless backend in the cloud", Sebasti...
"Integrate your front end apps with serverless backend in the cloud", Sebasti...
 
"Scaling ML from 0 to millions of users", Julien Simon, AWS Dev Day Kyiv 2019
"Scaling ML from 0 to millions of users", Julien Simon, AWS Dev Day Kyiv 2019"Scaling ML from 0 to millions of users", Julien Simon, AWS Dev Day Kyiv 2019
"Scaling ML from 0 to millions of users", Julien Simon, AWS Dev Day Kyiv 2019
 
How to implement authorization in your backend with AWS IAM
How to implement authorization in your backend with AWS IAMHow to implement authorization in your backend with AWS IAM
How to implement authorization in your backend with AWS IAM
 
Yurii Gavrilin | ML Interpretability: From A to Z | Kazan ODSC Meetup
Yurii Gavrilin | ML Interpretability: From A to Z | Kazan ODSC MeetupYurii Gavrilin | ML Interpretability: From A to Z | Kazan ODSC Meetup
Yurii Gavrilin | ML Interpretability: From A to Z | Kazan ODSC Meetup
 
Andrei Grigoriev | Version Control in Data Science | Kazan ODSC Meetup
Andrei Grigoriev | Version Control in Data Science | Kazan ODSC MeetupAndrei Grigoriev | Version Control in Data Science | Kazan ODSC Meetup
Andrei Grigoriev | Version Control in Data Science | Kazan ODSC Meetup
 
Modern word embeddings | Andrei Kulagin | Kazan ODSC Meetup
Modern word embeddings | Andrei Kulagin | Kazan ODSC MeetupModern word embeddings | Andrei Kulagin | Kazan ODSC Meetup
Modern word embeddings | Andrei Kulagin | Kazan ODSC Meetup
 
Eva Sokolyanskaya, QA Stand Up: Episode 4
Eva Sokolyanskaya, QA Stand Up: Episode 4Eva Sokolyanskaya, QA Stand Up: Episode 4
Eva Sokolyanskaya, QA Stand Up: Episode 4
 
Mikhail Dovgiy, QA Stand Up: Episode 4
Mikhail Dovgiy, QA Stand Up: Episode 4Mikhail Dovgiy, QA Stand Up: Episode 4
Mikhail Dovgiy, QA Stand Up: Episode 4
 
“Process optimization system”, Dmitry Blazhvskiy.
“Process optimization system”, Dmitry Blazhvskiy.“Process optimization system”, Dmitry Blazhvskiy.
“Process optimization system”, Dmitry Blazhvskiy.
 
«Training Deep Learning Models on Multi-GPUs Systems», Dmitry Spodarets.
«Training Deep Learning Models on Multi-GPUs Systems», Dmitry Spodarets.«Training Deep Learning Models on Multi-GPUs Systems», Dmitry Spodarets.
«Training Deep Learning Models on Multi-GPUs Systems», Dmitry Spodarets.
 
«Design and purpose of convolutional layers in neural networks», Andrii Latysh.
 «Design and purpose of convolutional layers in neural networks», Andrii Latysh. «Design and purpose of convolutional layers in neural networks», Andrii Latysh.
«Design and purpose of convolutional layers in neural networks», Andrii Latysh.
 

Recently uploaded

如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
ju0dztxtn
 
Toko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra Malang
Toko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra MalangToko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra Malang
Toko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra Malang
adet6151
 
如何办理滑铁卢大学毕业证(Waterloo毕业证)成绩单本科学位证原版一比一
如何办理滑铁卢大学毕业证(Waterloo毕业证)成绩单本科学位证原版一比一如何办理滑铁卢大学毕业证(Waterloo毕业证)成绩单本科学位证原版一比一
如何办理滑铁卢大学毕业证(Waterloo毕业证)成绩单本科学位证原版一比一
0uyfyq0q4
 
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
pyhepag
 
Audience Researchndfhcvnfgvgbhujhgfv.pptx
Audience Researchndfhcvnfgvgbhujhgfv.pptxAudience Researchndfhcvnfgvgbhujhgfv.pptx
Audience Researchndfhcvnfgvgbhujhgfv.pptx
Stephen266013
 
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
pyhepag
 
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Valters Lauzums
 
edited gordis ebook sixth edition david d.pdf
edited gordis ebook sixth edition david d.pdfedited gordis ebook sixth edition david d.pdf
edited gordis ebook sixth edition david d.pdf
great91
 
如何办理新加坡国立大学毕业证(NUS毕业证)学位证成绩单原版一比一
如何办理新加坡国立大学毕业证(NUS毕业证)学位证成绩单原版一比一如何办理新加坡国立大学毕业证(NUS毕业证)学位证成绩单原版一比一
如何办理新加坡国立大学毕业证(NUS毕业证)学位证成绩单原版一比一
hwhqz6r1y
 
一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理
cyebo
 

Recently uploaded (20)

123.docx. .
123.docx.                                 .123.docx.                                 .
123.docx. .
 
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
如何办理英国卡迪夫大学毕业证(Cardiff毕业证书)成绩单留信学历认证
 
ℂall Girls Balbir Nagar ℂall Now Chhaya ☎ 9899900591 WhatsApp Number 24/7
ℂall Girls Balbir Nagar ℂall Now Chhaya ☎ 9899900591 WhatsApp  Number 24/7ℂall Girls Balbir Nagar ℂall Now Chhaya ☎ 9899900591 WhatsApp  Number 24/7
ℂall Girls Balbir Nagar ℂall Now Chhaya ☎ 9899900591 WhatsApp Number 24/7
 
Toko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra Malang
Toko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra MalangToko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra Malang
Toko Jual Viagra Asli Di Malang 081229400522 COD Obat Kuat Viagra Malang
 
The Significance of Transliteration Enhancing
The Significance of Transliteration EnhancingThe Significance of Transliteration Enhancing
The Significance of Transliteration Enhancing
 
Artificial_General_Intelligence__storm_gen_article.pdf
Artificial_General_Intelligence__storm_gen_article.pdfArtificial_General_Intelligence__storm_gen_article.pdf
Artificial_General_Intelligence__storm_gen_article.pdf
 
Atlantic Grupa Case Study (Mintec Data AI)
Atlantic Grupa Case Study (Mintec Data AI)Atlantic Grupa Case Study (Mintec Data AI)
Atlantic Grupa Case Study (Mintec Data AI)
 
如何办理滑铁卢大学毕业证(Waterloo毕业证)成绩单本科学位证原版一比一
如何办理滑铁卢大学毕业证(Waterloo毕业证)成绩单本科学位证原版一比一如何办理滑铁卢大学毕业证(Waterloo毕业证)成绩单本科学位证原版一比一
如何办理滑铁卢大学毕业证(Waterloo毕业证)成绩单本科学位证原版一比一
 
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
一比一原版加利福尼亚大学尔湾分校毕业证成绩单如何办理
 
Audience Researchndfhcvnfgvgbhujhgfv.pptx
Audience Researchndfhcvnfgvgbhujhgfv.pptxAudience Researchndfhcvnfgvgbhujhgfv.pptx
Audience Researchndfhcvnfgvgbhujhgfv.pptx
 
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
一比一原版(Monash毕业证书)莫纳什大学毕业证成绩单如何办理
 
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
Data Analytics for Digital Marketing Lecture for Advanced Digital & Social Me...
 
edited gordis ebook sixth edition david d.pdf
edited gordis ebook sixth edition david d.pdfedited gordis ebook sixth edition david d.pdf
edited gordis ebook sixth edition david d.pdf
 
2024 Q2 Orange County (CA) Tableau User Group Meeting
2024 Q2 Orange County (CA) Tableau User Group Meeting2024 Q2 Orange County (CA) Tableau User Group Meeting
2024 Q2 Orange County (CA) Tableau User Group Meeting
 
Machine Learning for Accident Severity Prediction
Machine Learning for Accident Severity PredictionMachine Learning for Accident Severity Prediction
Machine Learning for Accident Severity Prediction
 
ℂall Girls Kashmiri Gate ℂall Now Chhaya ☎ 9899900591 WhatsApp Number 24/7
ℂall Girls Kashmiri Gate ℂall Now Chhaya ☎ 9899900591 WhatsApp  Number 24/7ℂall Girls Kashmiri Gate ℂall Now Chhaya ☎ 9899900591 WhatsApp  Number 24/7
ℂall Girls Kashmiri Gate ℂall Now Chhaya ☎ 9899900591 WhatsApp Number 24/7
 
如何办理新加坡国立大学毕业证(NUS毕业证)学位证成绩单原版一比一
如何办理新加坡国立大学毕业证(NUS毕业证)学位证成绩单原版一比一如何办理新加坡国立大学毕业证(NUS毕业证)学位证成绩单原版一比一
如何办理新加坡国立大学毕业证(NUS毕业证)学位证成绩单原版一比一
 
Genuine love spell caster )! ,+27834335081) Ex lover back permanently in At...
Genuine love spell caster )! ,+27834335081)   Ex lover back permanently in At...Genuine love spell caster )! ,+27834335081)   Ex lover back permanently in At...
Genuine love spell caster )! ,+27834335081) Ex lover back permanently in At...
 
Pre-ProductionImproveddsfjgndflghtgg.pptx
Pre-ProductionImproveddsfjgndflghtgg.pptxPre-ProductionImproveddsfjgndflghtgg.pptx
Pre-ProductionImproveddsfjgndflghtgg.pptx
 
一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理一比一原版麦考瑞大学毕业证成绩单如何办理
一比一原版麦考瑞大学毕业证成绩单如何办理
 

"From zero to Blue/Green deployments on Amazon ECS", Massimo Re Ferré, AWS Dev Day Kyiv 2019 "

  • 1. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. K Y I V 11.05.2019 CI/CD for Modern Applications Massimo Re Ferrè Developer Advocate Amazon Web Services
  • 2. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Who Am I ? Amazon Web Services (Developer Advocate) VMware (Solutions Architect and Technical Product Manager) IBM (Professional Services and Solutions Architect) Developer (many kilos ago) Email: mreferre@amazon.com Twitter: @mreferre Github: github.com/mreferre
  • 3. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. How software value gets created (in the old model) Monolithic application “Time to user”: months / years Very heavy manual integrations
  • 4. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. How software value gets created (in the new model) “Time to user”: hours / days Small independent components… End-to-end (hands off) automation …. with different release cycles
  • 5. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Agenda
  • 6. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Agenda
  • 7. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. What are the compute options to run my code? Instances Containers Lambda Containers control plane Containers data plane
  • 8. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS compute abstractions layers AWS Lambda Amazon EC2 Metal AWS Fargate Amazon EKS physicalseverVMcontainerfunction Levelofabstraction Provider space (managed by AWS) Consumer space (managed by the customer) Amazon ECS For this session, we are going to focus on this (as an example)
  • 9. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. ECS w/ EC2 data plane AWS Account Cust Account VPC Amazon EC2 TaskService ENI aws ecs run-task … --launch-type EC2 … You have to manage this capacity (e.g. with ASGs) Amazon ECS
  • 10. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Scaling metrics https://garbe.io/blog/2017/04/12/a-better-solution-to-ecs-autoscaling/ https://medium.com/thron-tech/aws-ecs-host-auto-scaling-with-custom-cloudwatch-metrics-and-aws-lambda-b9a9f55faf1d
  • 11. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Need for speed – (all lines are made up)
  • 12. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Need for speed – real example (all lines are for real)
  • 13. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. ECS w/ FARGATE data plane AWS Account AWS Fargate Cust Account VPC TaskService ENI aws ecs run-task … --launch-type FARGATE … You don’t have to manage capacity Amazon ECS
  • 14. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Agenda
  • 15. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Blue/Green and the pressure on infrastructure Task Auto Scaling group Instance Task Task Task Task Task Task Task Task Task Task Task Instance Instance Instance Task Task Task Task Task Task Task Task Task Task Task Task AWS Fargate On ECS/EC2 On ECS/Fargate
  • 16. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Blue/Green and the pressure on infrastructure Task Auto Scaling group Instance Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Instance Instance Instance Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task AWS Fargate On ECS/EC2 On ECS/Fargate
  • 17. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Blue/Green and the pressure on infrastructure Task Auto Scaling group Instance Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Instance Instance Instance Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task AWS Fargate Instance Instance Instance Instance On ECS/EC2 On ECS/Fargate
  • 18. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Blue/Green and the pressure on infrastructure Auto Scaling group Instance Instance Instance Instance AWS Fargate Instance Instance Instance Instance Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task On ECS/EC2 On ECS/Fargate
  • 19. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Blue/Green and the pressure on infrastructure AWS Fargate Auto Scaling group Instance Instance Instance Instance Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task Task On ECS/EC2 On ECS/Fargate
  • 20. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Blue/Green deployments Service Target-Group-Green Task Task Task Service Amazon ECR Amazon ECS Amazon ALB Image1 THIS IS VER1
  • 21. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Blue/Green deployments Service Target-Group-Green Target-Group-Blue Task Task Task Service Amazon ECR Amazon ECS Amazon ALB Image1 THIS IS VER1 THIS IS VER1
  • 22. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Blue/Green deployments Service Target-Group-Green Target-Group-Blue Task Task Task Service AWS CodeCommit AWS CodeBuild AWS CodePipeline AWS CodeDeploy Amazon ECR Amazon ECS Amazon ALB Image1 THIS IS VER1 THIS IS VER1 <html> <body> <h1>THIS IS VER 1</h1> </body> </html>
  • 23. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Blue/Green deployments Service Target-Group-Green Target-Group-Blue Task Task Task Service AWS CodeCommit AWS CodeBuild AWS CodePipeline AWS CodeDeploy Amazon ECR Amazon ECS <html> <body> <h1>THIS IS VER 1</h1> </body> </html> <html> <body> <h1>THIS IS A NEW VER</h1> </body> </html> Amazon ALB Image1 Image2 THIS IS VER1 THIS IS VER1 Trigger
  • 24. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Blue/Green deployments Service Target-Group-Green Target-Group-Blue Task Task Task Service AWS CodeCommit AWS CodeBuild AWS CodePipeline AWS CodeDeploy Amazon ECR Amazon ECS Amazon ALB Image1 Image2 Task Task TaskTHIS IS A NEW VER THIS IS VER1 <html> <body> <h1>THIS IS A NEW VER</h1> </body> </html>
  • 25. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Blue/Green deployments Service Target-Group-Green Target-Group-Blue Service AWS CodeCommit AWS CodeBuild AWS CodePipeline AWS CodeDeploy Amazon ECR Amazon ECS Amazon ALB Image1 Image2 Task Task TaskTHIS IS A NEW VER THIS IS A NEW VER <html> <body> <h1>THIS IS A NEW VER</h1> </body> </html>
  • 26. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Demo?