SlideShare una empresa de Scribd logo
1 de 31
Descargar para leer sin conexión
Running
Containers in
AWS
ANDREW MAY
CLOUD SOLUTIONS LEAD
COLUMBUS
MEET-UP
Docker
Storage
ECR
Orchestration (Services)
Elastic Container
Service (ECS)
EC2 Fargate
EKS Elastic Beanstalk
Single Multi
Discovery
CloudMap AppMesh
Transient
AWS
Batch
CodeBuild
Docker
Storage
ECR
Orchestration (Services)
Elastic Container
Service (ECS)
EC2 Fargate
EKS Elastic Beanstalk
Single Multi
Discovery
CloudMap AppMesh
Transient
AWS
Batch
CodeBuild
ECR Amazon Elastic Container Registry
Elastic Container Registry (ECR)
ECR is a Docker registry hosted within AWS in each region
◦ Images are stored close to where your containers will run
Images are secured using AWS IAM Policies
The Elastic Container Registry contains a Repository for each image
Lifecycle Policies can be used to clean up old versions of images
Login using AWS CLI, use standard Docker commands to pull and push
Image names are prefixed by ECR Repository URL
(<account>.dkr.ecr.<region>.amazonaws.com)
Orchestration Management of the container lifecycles
Orchestration provides:
➢Configuration
➢Scheduling
➢Deployment
➢Scaling
➢Storage (Volume) mapping
➢Secret management
➢High Availability
➢Load balancing integration
Managed Orchestration options (AWS)
ECS Amazon Elastic Container Service
Elastic Container Service (ECS)
Original AWS Service for running containers
ECS Service is free, you only pay for the resources
(EC2/Fargate) that are used with ECS
Strong integration with other AWS Services:
◦ IAM
◦ Load balancers
AutoScaling of containers (similar to EC2 AutoScaling)
• ECS can use either EC2 instances or Fargate to run
Docker containers
• Container Instances = ECS Instances = EC2 Instances
• Tasks have 1 or more running Containers
• Tasks are defined by Task Definitions
Task Definition
and Tasks
❖Template for a Task
❖Runs one or more
Container
❖References Container
Image
❖ECS Agent pulls image
and starts container
❖Port mappings,
CPU/Memory
requirements, Volumes
etc.
❖Versioned
ALB Integration
with ECS
Services
❖Services are long
running collections of
Tasks
❖Run multiple copies
❖Containers have a
container port (e.g. 80)
and a host port
❖Host port zero
= ephemeral
❖ALB Target Group
automatically updated
Other ECS Benefits
ECS Infrastructure can be created using CloudFormation
Updating a Service to use a new Task Definition will perform
a Blue-Green deployment
Possible to use Spot Instances
Metrics => CloudWatch
Logs => CloudWatch Logs (or elsewhere)
Fargate AWS Fargate
(compute engine for ECS)
Fargate
“Serverless” option for running containers in an ECS Cluster
◦ Configure desired CPU/Memory and this will be guaranteed for that
container
◦ Compare to using EC2 where you may be over/under provisioned
Networking is always awsvpc:
i.e. it will use an ENI per instance (one of your subnet IPs)
Scaling at a task level is similar to when using EC2 instances,
but without the complexity of scaling the underlying EC2
AutoScaling group(s)
Why aren’t we all using Fargate?
Fargate was expensive when launched, but the Firecracker VM
technology has allowed AWS to reduce costs
With recent price reductions, Fargate is comparable in price to on-
demand EC2 instances with ~70% utilization
Reserved or Spot instances make using EC2 a lot cheaper
EKS Amazon Elastic Container Service for
Kubernetes
Kubernetes
Predominant Docker Orchestration service
Managed Kubernetes available in:
◦ Google Cloud Platform (Google Kubernetes Engine)
◦ Microsoft Azure (Azure Kubernetes Service – AKS)
◦ Amazon Web Services (EKS)
The GCP offering is the most mature, AKS and EKS were both launched in 2018
Support for running Kubernetes clusters on EC2 and integrating with other
services (e.g. ELB) has existed for longer than EKS has been available
What does EKS manage?
EKS manages three Kubernetes master instances across AZs to provide high availability
Using EKS
Cluster creation can be automated with CloudFormation, and AWS provides
sample templates and a quick-start
◦ Set up VPC
◦ Create EKS Service IAM Role
◦ Create EKS Cluster
◦ Add Node instances to cluster using EKS AMI
Once Cluster created, configure kubectl with access to cluster and use normal
Kubernetes tools and templates to manage and deploy to the cluster
EKS Cluster cost $0.20/hour (about $140/month)
$ eksctl create cluster -p personal -r us-east-2
[ ] using region us-east-2
[ ] setting availability zones to [us-east-2b us-east-2c us-east-2a]
[ ] subnets for us-east-2b - public:192.168.0.0/19 private:192.168.96.0/19
[ ] subnets for us-east-2c - public:192.168.32.0/19 private:192.168.128.0/19
[ ] subnets for us-east-2a - public:192.168.64.0/19 private:192.168.160.0/19
[ ] nodegroup "ng-c94ddd68" will use "ami-04ea7cb66af82ae4a" [AmazonLinux2/1.12]
[ ] creating EKS cluster "floral-painting-1556150853" in "us-east-2" region
[ ] will create 2 separate CloudFormation stacks for cluster itself and the initial nodegroup
[ ] if you encounter any issues, check CloudFormation console or try 'eksctl utils describe-stacks --region=us-east-2 --
name=floral-painting-1556150853’
[ ] 2 sequential tasks: { create cluster control plane "floral-painting-1556150853", create nodegroup "ng-c94ddd68" }
[ ] building cluster stack "eksctl-floral-painting-1556150853-cluster“
[ ] deploying stack "eksctl-floral-painting-1556150853-cluster“
[ ] buildings nodegroup stack "eksctl-floral-painting-1556150853-nodegroup-ng-c94ddd68“
[ ] --nodes-min=2 was set automatically for nodegroup ng-c94ddd68
[ ] --nodes-max=2 was set automatically for nodegroup ng-c94ddd68
[ ] deploying stack "eksctl-floral-painting-1556150853-nodegroup-ng-c94ddd68“
[X] all EKS cluster resource for "floral-painting-1556150853" had been created
[X] saved kubeconfig as "C:Usersandrew.may.CORP/.kube/config“
[ ] adding role "arn:aws:iam::648758314004:role/eksctl-floral-painting-1556150853-NodeInstanceRole-4TJQAGSUVG7Q" to auth ConfigMap
[ ] nodegroup "ng-c94ddd68" has 0 node(s)
[ ] waiting for at least 2 node(s) to become ready in "ng-c94ddd68“
[ ] nodegroup "ng-c94ddd68" has 2 node(s)
[ ] node "ip-192-168-25-233.us-east-2.compute.internal" is ready
[ ] node "ip-192-168-79-171.us-east-2.compute.internal" is ready
[ ] kubectl command should work with "C:Usersandrew.may.CORP/.kube/config", try 'kubectl get nodes’
[x] EKS cluster "floral-painting-1556150853" in "us-east-2" region is ready
EKS Experience
Without eksctrl setting up cluster is time consuming
Integration with other AWS services is more difficult than with ECS
Have to install a variety of services to get IAM, ALB, DNS integrations
Significant changes since launch
EKS Cluster in AWS Console
AWS
CloudMap
“AWS Cloud Map is a cloud resource
discovery service.”
CloudMap
AWS CloudMap superceeds Service Discovery for ECS
◦ Registered in Route 53 namespace, creating A (IP) and SRV (IP and Port)
records
◦ Query DNS for available services
◦ ECS Tasks must use awsvpc networking
AWS CloudMap adds an API based system, allowing it to be used for
resources where DNS does not apply
◦ Supports a variety of services including ECS, EKS, S3, SQS, Lambda, Load
Balancers
Similar to the Service Discovery portions of Hashicorp Consul
CloudMap
AWS
AppMesh
AWS Application Service Mesh
AppMesh
Recently released, but still in early stages
Service Mesh implementation for AWS, using
the Open Source Envoy proxy, but a custom
Control Plane
Manage connectivity between microservices, including traffic shaping functionality like:
◦ Routing: Canary and A/B Testing
◦ Load Balancing and Service Discovery
◦ Handling Failures (Retry, Circuit Breaker)
Integration with CloudMap for Service Discovery
Logging and Tracing (CloudWatch, X-Ray)
AppMesh
Questions?
Ask at Unconference

Más contenido relacionado

La actualidad más candente

Amazon Elastic Container Service (ECS)
Amazon Elastic Container Service (ECS)Amazon Elastic Container Service (ECS)
Amazon Elastic Container Service (ECS)Andrew Dixon
 
Container Orchestration with Amazon ECS
Container Orchestration with Amazon ECSContainer Orchestration with Amazon ECS
Container Orchestration with Amazon ECSAmazon Web Services
 
Advanced Container Management and Scheduling
Advanced Container Management and SchedulingAdvanced Container Management and Scheduling
Advanced Container Management and SchedulingAmazon Web Services
 
Building and Scaling Your First Containerized Microservice
Building and Scaling Your First Containerized MicroserviceBuilding and Scaling Your First Containerized Microservice
Building and Scaling Your First Containerized MicroserviceAmazon Web Services
 
AWS November Webinar Series - From Local Development to Production Using the ...
AWS November Webinar Series - From Local Development to Production Using the ...AWS November Webinar Series - From Local Development to Production Using the ...
AWS November Webinar Series - From Local Development to Production Using the ...Amazon Web Services
 
Kubernetes on AWS => EKS || CNCF Meetup Zurich, Feb 2019
Kubernetes on AWS => EKS || CNCF Meetup Zurich, Feb 2019Kubernetes on AWS => EKS || CNCF Meetup Zurich, Feb 2019
Kubernetes on AWS => EKS || CNCF Meetup Zurich, Feb 2019Gerd König
 
Getting Started with Amazon EC2 Container Service
Getting Started with Amazon EC2 Container ServiceGetting Started with Amazon EC2 Container Service
Getting Started with Amazon EC2 Container ServiceAmazon Web Services
 
Getting Started with Amazon EKS (Managed Kubernetes)
Getting Started with Amazon EKS (Managed Kubernetes)Getting Started with Amazon EKS (Managed Kubernetes)
Getting Started with Amazon EKS (Managed Kubernetes)Tanya Seno
 
AWS re:Invent 2016: Workshop: Deploy a Deep Learning Framework on Amazon ECS ...
AWS re:Invent 2016: Workshop: Deploy a Deep Learning Framework on Amazon ECS ...AWS re:Invent 2016: Workshop: Deploy a Deep Learning Framework on Amazon ECS ...
AWS re:Invent 2016: Workshop: Deploy a Deep Learning Framework on Amazon ECS ...Amazon Web Services
 
ContainerDay 2020 - Using Docker as a frontend for Amazon ECS and AWS Fargate
ContainerDay 2020 - Using Docker as a frontend for Amazon ECS and AWS Fargate ContainerDay 2020 - Using Docker as a frontend for Amazon ECS and AWS Fargate
ContainerDay 2020 - Using Docker as a frontend for Amazon ECS and AWS Fargate Massimo Ferre'
 
Packer + Ansible을 이용한 AMI 생성 및 AutoScaling Group 이미지 교체 이야기
Packer + Ansible을 이용한 AMI 생성 및 AutoScaling Group 이미지 교체 이야기Packer + Ansible을 이용한 AMI 생성 및 AutoScaling Group 이미지 교체 이야기
Packer + Ansible을 이용한 AMI 생성 및 AutoScaling Group 이미지 교체 이야기창훈 정
 
Amazon Web Services - Running Containers with ECS
Amazon Web Services - Running Containers with ECSAmazon Web Services - Running Containers with ECS
Amazon Web Services - Running Containers with ECSScott Weber
 
Intro to Batch Processing on AWS - DevDay Austin 2017
Intro to Batch Processing on AWS - DevDay Austin 2017Intro to Batch Processing on AWS - DevDay Austin 2017
Intro to Batch Processing on AWS - DevDay Austin 2017Amazon Web Services
 
Introduction to EKS and eksctl
Introduction to EKS and eksctlIntroduction to EKS and eksctl
Introduction to EKS and eksctlWeaveworks
 
Getting Started with Docker on AWS - DevDay Austin 2017
Getting Started with Docker on AWS - DevDay Austin 2017Getting Started with Docker on AWS - DevDay Austin 2017
Getting Started with Docker on AWS - DevDay Austin 2017Amazon Web Services
 
Getting Started with Docker on AWS
Getting Started with Docker on AWSGetting Started with Docker on AWS
Getting Started with Docker on AWSAmazon Web Services
 

La actualidad más candente (20)

Amazon Elastic Container Service (ECS)
Amazon Elastic Container Service (ECS)Amazon Elastic Container Service (ECS)
Amazon Elastic Container Service (ECS)
 
Container Orchestration with Amazon ECS
Container Orchestration with Amazon ECSContainer Orchestration with Amazon ECS
Container Orchestration with Amazon ECS
 
Advanced Container Management and Scheduling
Advanced Container Management and SchedulingAdvanced Container Management and Scheduling
Advanced Container Management and Scheduling
 
Building and Scaling Your First Containerized Microservice
Building and Scaling Your First Containerized MicroserviceBuilding and Scaling Your First Containerized Microservice
Building and Scaling Your First Containerized Microservice
 
AWS November Webinar Series - From Local Development to Production Using the ...
AWS November Webinar Series - From Local Development to Production Using the ...AWS November Webinar Series - From Local Development to Production Using the ...
AWS November Webinar Series - From Local Development to Production Using the ...
 
Kubernetes on AWS => EKS || CNCF Meetup Zurich, Feb 2019
Kubernetes on AWS => EKS || CNCF Meetup Zurich, Feb 2019Kubernetes on AWS => EKS || CNCF Meetup Zurich, Feb 2019
Kubernetes on AWS => EKS || CNCF Meetup Zurich, Feb 2019
 
Introduzione ad Amazon EKS
Introduzione ad Amazon EKSIntroduzione ad Amazon EKS
Introduzione ad Amazon EKS
 
Getting Started with Amazon EC2 Container Service
Getting Started with Amazon EC2 Container ServiceGetting Started with Amazon EC2 Container Service
Getting Started with Amazon EC2 Container Service
 
Intro to Amazon ECS
Intro to Amazon ECSIntro to Amazon ECS
Intro to Amazon ECS
 
Getting Started with Amazon EKS (Managed Kubernetes)
Getting Started with Amazon EKS (Managed Kubernetes)Getting Started with Amazon EKS (Managed Kubernetes)
Getting Started with Amazon EKS (Managed Kubernetes)
 
AWS re:Invent 2016: Workshop: Deploy a Deep Learning Framework on Amazon ECS ...
AWS re:Invent 2016: Workshop: Deploy a Deep Learning Framework on Amazon ECS ...AWS re:Invent 2016: Workshop: Deploy a Deep Learning Framework on Amazon ECS ...
AWS re:Invent 2016: Workshop: Deploy a Deep Learning Framework on Amazon ECS ...
 
ContainerDay 2020 - Using Docker as a frontend for Amazon ECS and AWS Fargate
ContainerDay 2020 - Using Docker as a frontend for Amazon ECS and AWS Fargate ContainerDay 2020 - Using Docker as a frontend for Amazon ECS and AWS Fargate
ContainerDay 2020 - Using Docker as a frontend for Amazon ECS and AWS Fargate
 
Packer + Ansible을 이용한 AMI 생성 및 AutoScaling Group 이미지 교체 이야기
Packer + Ansible을 이용한 AMI 생성 및 AutoScaling Group 이미지 교체 이야기Packer + Ansible을 이용한 AMI 생성 및 AutoScaling Group 이미지 교체 이야기
Packer + Ansible을 이용한 AMI 생성 및 AutoScaling Group 이미지 교체 이야기
 
Amazon Web Services - Running Containers with ECS
Amazon Web Services - Running Containers with ECSAmazon Web Services - Running Containers with ECS
Amazon Web Services - Running Containers with ECS
 
AWS ECS vs EKS
AWS ECS vs EKSAWS ECS vs EKS
AWS ECS vs EKS
 
Mtbc cloud ehr
Mtbc cloud ehrMtbc cloud ehr
Mtbc cloud ehr
 
Intro to Batch Processing on AWS - DevDay Austin 2017
Intro to Batch Processing on AWS - DevDay Austin 2017Intro to Batch Processing on AWS - DevDay Austin 2017
Intro to Batch Processing on AWS - DevDay Austin 2017
 
Introduction to EKS and eksctl
Introduction to EKS and eksctlIntroduction to EKS and eksctl
Introduction to EKS and eksctl
 
Getting Started with Docker on AWS - DevDay Austin 2017
Getting Started with Docker on AWS - DevDay Austin 2017Getting Started with Docker on AWS - DevDay Austin 2017
Getting Started with Docker on AWS - DevDay Austin 2017
 
Getting Started with Docker on AWS
Getting Started with Docker on AWSGetting Started with Docker on AWS
Getting Started with Docker on AWS
 

Similar a AWS Community Day - Andrew May - Running Containers in AWS

Building a Kubernetes App with Amazon EKS
Building a Kubernetes App with Amazon EKSBuilding a Kubernetes App with Amazon EKS
Building a Kubernetes App with Amazon EKSDevOps.com
 
Deploying a Kubernetes App with Amazon EKS
Deploying a Kubernetes App with Amazon EKSDeploying a Kubernetes App with Amazon EKS
Deploying a Kubernetes App with Amazon EKSLaura Frank Tacho
 
Aws container webinar day 1
Aws container webinar day 1Aws container webinar day 1
Aws container webinar day 1HoseokSeo7
 
Kubernetes-Fundamentals.pptx
Kubernetes-Fundamentals.pptxKubernetes-Fundamentals.pptx
Kubernetes-Fundamentals.pptxsatish642065
 
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECSWeaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECSWeaveworks
 
Running containers in AWS
Running containers in AWSRunning containers in AWS
Running containers in AWSAndrewMay59
 
AWS ECS Meetup Talentica
AWS ECS Meetup TalenticaAWS ECS Meetup Talentica
AWS ECS Meetup TalenticaAnshul Patel
 
[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...
[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...
[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...Amazon Web Services Korea
 
Kubernetes and Amazon ECS
Kubernetes and Amazon ECSKubernetes and Amazon ECS
Kubernetes and Amazon ECSGeert Pante
 
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul Maddox
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul MaddoxAWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul Maddox
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul MaddoxAWS Riyadh User Group
 
aks_training_document_Azure_kuberne.pptx
aks_training_document_Azure_kuberne.pptxaks_training_document_Azure_kuberne.pptx
aks_training_document_Azure_kuberne.pptxWaseemShare
 
February 2016 Webinar Series - EC2 Container Service Deep Dive
February 2016 Webinar Series - EC2 Container Service Deep Dive February 2016 Webinar Series - EC2 Container Service Deep Dive
February 2016 Webinar Series - EC2 Container Service Deep Dive Amazon Web Services
 
Artem Zhurbila - docker clusters (solit 2015)
Artem Zhurbila - docker clusters (solit 2015)Artem Zhurbila - docker clusters (solit 2015)
Artem Zhurbila - docker clusters (solit 2015)Artem Zhurbila
 
Monitoring Containers at Scale - September Webinar Series
Monitoring Containers at Scale - September Webinar SeriesMonitoring Containers at Scale - September Webinar Series
Monitoring Containers at Scale - September Webinar SeriesAmazon Web Services
 
Best Practices with Azure Kubernetes Services
Best Practices with Azure Kubernetes ServicesBest Practices with Azure Kubernetes Services
Best Practices with Azure Kubernetes ServicesQAware GmbH
 
Bitbucket Pipelines - Powered by Kubernetes
Bitbucket Pipelines - Powered by KubernetesBitbucket Pipelines - Powered by Kubernetes
Bitbucket Pipelines - Powered by KubernetesNathan Burrell
 

Similar a AWS Community Day - Andrew May - Running Containers in AWS (20)

Building a Kubernetes App with Amazon EKS
Building a Kubernetes App with Amazon EKSBuilding a Kubernetes App with Amazon EKS
Building a Kubernetes App with Amazon EKS
 
Deploying a Kubernetes App with Amazon EKS
Deploying a Kubernetes App with Amazon EKSDeploying a Kubernetes App with Amazon EKS
Deploying a Kubernetes App with Amazon EKS
 
Aws container webinar day 1
Aws container webinar day 1Aws container webinar day 1
Aws container webinar day 1
 
Kubernetes-Fundamentals.pptx
Kubernetes-Fundamentals.pptxKubernetes-Fundamentals.pptx
Kubernetes-Fundamentals.pptx
 
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECSWeaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
 
Running containers in AWS
Running containers in AWSRunning containers in AWS
Running containers in AWS
 
AWS ECS Meetup Talentica
AWS ECS Meetup TalenticaAWS ECS Meetup Talentica
AWS ECS Meetup Talentica
 
[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...
[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...
[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...
 
Kubernetes and Amazon ECS
Kubernetes and Amazon ECSKubernetes and Amazon ECS
Kubernetes and Amazon ECS
 
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul Maddox
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul MaddoxAWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul Maddox
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul Maddox
 
Amazon EKS Deep Dive
Amazon EKS Deep DiveAmazon EKS Deep Dive
Amazon EKS Deep Dive
 
aks_training_document_Azure_kuberne.pptx
aks_training_document_Azure_kuberne.pptxaks_training_document_Azure_kuberne.pptx
aks_training_document_Azure_kuberne.pptx
 
February 2016 Webinar Series - EC2 Container Service Deep Dive
February 2016 Webinar Series - EC2 Container Service Deep Dive February 2016 Webinar Series - EC2 Container Service Deep Dive
February 2016 Webinar Series - EC2 Container Service Deep Dive
 
ECS and ECR deep dive
ECS and ECR deep diveECS and ECR deep dive
ECS and ECR deep dive
 
Artem Zhurbila - docker clusters (solit 2015)
Artem Zhurbila - docker clusters (solit 2015)Artem Zhurbila - docker clusters (solit 2015)
Artem Zhurbila - docker clusters (solit 2015)
 
A quick introduction to AKS
A quick introduction to AKSA quick introduction to AKS
A quick introduction to AKS
 
Monitoring Containers at Scale - September Webinar Series
Monitoring Containers at Scale - September Webinar SeriesMonitoring Containers at Scale - September Webinar Series
Monitoring Containers at Scale - September Webinar Series
 
Best Practices with Azure Kubernetes Services
Best Practices with Azure Kubernetes ServicesBest Practices with Azure Kubernetes Services
Best Practices with Azure Kubernetes Services
 
Bitbucket Pipelines - Powered by Kubernetes
Bitbucket Pipelines - Powered by KubernetesBitbucket Pipelines - Powered by Kubernetes
Bitbucket Pipelines - Powered by Kubernetes
 
Amazon ECS Deep Dive
Amazon ECS Deep DiveAmazon ECS Deep Dive
Amazon ECS Deep Dive
 

Más de AWS Chicago

AWS reInvent 2023 recaps from Chicago AWS user group
AWS reInvent 2023 recaps from Chicago AWS user groupAWS reInvent 2023 recaps from Chicago AWS user group
AWS reInvent 2023 recaps from Chicago AWS user groupAWS Chicago
 
Chicago AWS Solutions Architect Mehdy Haghy recaps the new AI/ML releases and...
Chicago AWS Solutions Architect Mehdy Haghy recaps the new AI/ML releases and...Chicago AWS Solutions Architect Mehdy Haghy recaps the new AI/ML releases and...
Chicago AWS Solutions Architect Mehdy Haghy recaps the new AI/ML releases and...AWS Chicago
 
WilliamCollins_Road-to-Transit-Gateway.pptx
WilliamCollins_Road-to-Transit-Gateway.pptxWilliamCollins_Road-to-Transit-Gateway.pptx
WilliamCollins_Road-to-Transit-Gateway.pptxAWS Chicago
 
Suresh Poopandi_Generative AI On AWS-MidWestCommunityDay-Final.pdf
Suresh Poopandi_Generative AI On AWS-MidWestCommunityDay-Final.pdfSuresh Poopandi_Generative AI On AWS-MidWestCommunityDay-Final.pdf
Suresh Poopandi_Generative AI On AWS-MidWestCommunityDay-Final.pdfAWS Chicago
 
Streamlined Entitlements with AWS Lake Formation - Anusha Dwivedula
Streamlined Entitlements with AWS Lake Formation - Anusha DwivedulaStreamlined Entitlements with AWS Lake Formation - Anusha Dwivedula
Streamlined Entitlements with AWS Lake Formation - Anusha DwivedulaAWS Chicago
 
Steve Seaney_AWS Control Tower - 2023 Midwest Community Day - Final.pptx
Steve Seaney_AWS Control Tower - 2023 Midwest Community Day - Final.pptxSteve Seaney_AWS Control Tower - 2023 Midwest Community Day - Final.pptx
Steve Seaney_AWS Control Tower - 2023 Midwest Community Day - Final.pptxAWS Chicago
 
Saurabh_Shanbhag - Building_SaaS_on_AWS.pptx
Saurabh_Shanbhag - Building_SaaS_on_AWS.pptxSaurabh_Shanbhag - Building_SaaS_on_AWS.pptx
Saurabh_Shanbhag - Building_SaaS_on_AWS.pptxAWS Chicago
 
Sanket_Nasre_Simplify Modernization.pdf
Sanket_Nasre_Simplify Modernization.pdfSanket_Nasre_Simplify Modernization.pdf
Sanket_Nasre_Simplify Modernization.pdfAWS Chicago
 
Ross Stuart_Using ML to Solve Lifes Problems.pptx
Ross Stuart_Using ML to Solve Lifes Problems.pptxRoss Stuart_Using ML to Solve Lifes Problems.pptx
Ross Stuart_Using ML to Solve Lifes Problems.pptxAWS Chicago
 
robsable_Enhancing DevOps Practices with CloudWatch APM FINAL.pdf
robsable_Enhancing DevOps Practices with CloudWatch APM FINAL.pdfrobsable_Enhancing DevOps Practices with CloudWatch APM FINAL.pdf
robsable_Enhancing DevOps Practices with CloudWatch APM FINAL.pdfAWS Chicago
 
Sanket_Nasre_Simplify Modernization.pdf
Sanket_Nasre_Simplify Modernization.pdfSanket_Nasre_Simplify Modernization.pdf
Sanket_Nasre_Simplify Modernization.pdfAWS Chicago
 
Mohamed Wali_AWS Security Reference Architecture.pptx
Mohamed Wali_AWS Security Reference Architecture.pptxMohamed Wali_AWS Security Reference Architecture.pptx
Mohamed Wali_AWS Security Reference Architecture.pptxAWS Chicago
 
Nick-Walter-HOB_Migrating_Dinosaurs.pptx
Nick-Walter-HOB_Migrating_Dinosaurs.pptxNick-Walter-HOB_Migrating_Dinosaurs.pptx
Nick-Walter-HOB_Migrating_Dinosaurs.pptxAWS Chicago
 
Pat_Davies_AWSCostOptimization_Final.pdf
Pat_Davies_AWSCostOptimization_Final.pdfPat_Davies_AWSCostOptimization_Final.pdf
Pat_Davies_AWSCostOptimization_Final.pdfAWS Chicago
 
MARK GAMBLE_ASC For Really Remote Edge Computing - AWS Community Day Chicago ...
MARK GAMBLE_ASC For Really Remote Edge Computing - AWS Community Day Chicago ...MARK GAMBLE_ASC For Really Remote Edge Computing - AWS Community Day Chicago ...
MARK GAMBLE_ASC For Really Remote Edge Computing - AWS Community Day Chicago ...AWS Chicago
 
MichaelSoule-UsingJupyterNotebooks.pptx
MichaelSoule-UsingJupyterNotebooks.pptxMichaelSoule-UsingJupyterNotebooks.pptx
MichaelSoule-UsingJupyterNotebooks.pptxAWS Chicago
 
Michal Brygidyn_CloudHackingScenarios.pdf
Michal Brygidyn_CloudHackingScenarios.pdfMichal Brygidyn_CloudHackingScenarios.pdf
Michal Brygidyn_CloudHackingScenarios.pdfAWS Chicago
 
Kamil Kolodziejski_Structura-AWS.pptx
Kamil Kolodziejski_Structura-AWS.pptxKamil Kolodziejski_Structura-AWS.pptx
Kamil Kolodziejski_Structura-AWS.pptxAWS Chicago
 
John Merline AWS Certification FAQ.pptx
John Merline AWS Certification FAQ.pptxJohn Merline AWS Certification FAQ.pptx
John Merline AWS Certification FAQ.pptxAWS Chicago
 
JuliaFMorgado_Breaking_bad_habits.pptx
JuliaFMorgado_Breaking_bad_habits.pptxJuliaFMorgado_Breaking_bad_habits.pptx
JuliaFMorgado_Breaking_bad_habits.pptxAWS Chicago
 

Más de AWS Chicago (20)

AWS reInvent 2023 recaps from Chicago AWS user group
AWS reInvent 2023 recaps from Chicago AWS user groupAWS reInvent 2023 recaps from Chicago AWS user group
AWS reInvent 2023 recaps from Chicago AWS user group
 
Chicago AWS Solutions Architect Mehdy Haghy recaps the new AI/ML releases and...
Chicago AWS Solutions Architect Mehdy Haghy recaps the new AI/ML releases and...Chicago AWS Solutions Architect Mehdy Haghy recaps the new AI/ML releases and...
Chicago AWS Solutions Architect Mehdy Haghy recaps the new AI/ML releases and...
 
WilliamCollins_Road-to-Transit-Gateway.pptx
WilliamCollins_Road-to-Transit-Gateway.pptxWilliamCollins_Road-to-Transit-Gateway.pptx
WilliamCollins_Road-to-Transit-Gateway.pptx
 
Suresh Poopandi_Generative AI On AWS-MidWestCommunityDay-Final.pdf
Suresh Poopandi_Generative AI On AWS-MidWestCommunityDay-Final.pdfSuresh Poopandi_Generative AI On AWS-MidWestCommunityDay-Final.pdf
Suresh Poopandi_Generative AI On AWS-MidWestCommunityDay-Final.pdf
 
Streamlined Entitlements with AWS Lake Formation - Anusha Dwivedula
Streamlined Entitlements with AWS Lake Formation - Anusha DwivedulaStreamlined Entitlements with AWS Lake Formation - Anusha Dwivedula
Streamlined Entitlements with AWS Lake Formation - Anusha Dwivedula
 
Steve Seaney_AWS Control Tower - 2023 Midwest Community Day - Final.pptx
Steve Seaney_AWS Control Tower - 2023 Midwest Community Day - Final.pptxSteve Seaney_AWS Control Tower - 2023 Midwest Community Day - Final.pptx
Steve Seaney_AWS Control Tower - 2023 Midwest Community Day - Final.pptx
 
Saurabh_Shanbhag - Building_SaaS_on_AWS.pptx
Saurabh_Shanbhag - Building_SaaS_on_AWS.pptxSaurabh_Shanbhag - Building_SaaS_on_AWS.pptx
Saurabh_Shanbhag - Building_SaaS_on_AWS.pptx
 
Sanket_Nasre_Simplify Modernization.pdf
Sanket_Nasre_Simplify Modernization.pdfSanket_Nasre_Simplify Modernization.pdf
Sanket_Nasre_Simplify Modernization.pdf
 
Ross Stuart_Using ML to Solve Lifes Problems.pptx
Ross Stuart_Using ML to Solve Lifes Problems.pptxRoss Stuart_Using ML to Solve Lifes Problems.pptx
Ross Stuart_Using ML to Solve Lifes Problems.pptx
 
robsable_Enhancing DevOps Practices with CloudWatch APM FINAL.pdf
robsable_Enhancing DevOps Practices with CloudWatch APM FINAL.pdfrobsable_Enhancing DevOps Practices with CloudWatch APM FINAL.pdf
robsable_Enhancing DevOps Practices with CloudWatch APM FINAL.pdf
 
Sanket_Nasre_Simplify Modernization.pdf
Sanket_Nasre_Simplify Modernization.pdfSanket_Nasre_Simplify Modernization.pdf
Sanket_Nasre_Simplify Modernization.pdf
 
Mohamed Wali_AWS Security Reference Architecture.pptx
Mohamed Wali_AWS Security Reference Architecture.pptxMohamed Wali_AWS Security Reference Architecture.pptx
Mohamed Wali_AWS Security Reference Architecture.pptx
 
Nick-Walter-HOB_Migrating_Dinosaurs.pptx
Nick-Walter-HOB_Migrating_Dinosaurs.pptxNick-Walter-HOB_Migrating_Dinosaurs.pptx
Nick-Walter-HOB_Migrating_Dinosaurs.pptx
 
Pat_Davies_AWSCostOptimization_Final.pdf
Pat_Davies_AWSCostOptimization_Final.pdfPat_Davies_AWSCostOptimization_Final.pdf
Pat_Davies_AWSCostOptimization_Final.pdf
 
MARK GAMBLE_ASC For Really Remote Edge Computing - AWS Community Day Chicago ...
MARK GAMBLE_ASC For Really Remote Edge Computing - AWS Community Day Chicago ...MARK GAMBLE_ASC For Really Remote Edge Computing - AWS Community Day Chicago ...
MARK GAMBLE_ASC For Really Remote Edge Computing - AWS Community Day Chicago ...
 
MichaelSoule-UsingJupyterNotebooks.pptx
MichaelSoule-UsingJupyterNotebooks.pptxMichaelSoule-UsingJupyterNotebooks.pptx
MichaelSoule-UsingJupyterNotebooks.pptx
 
Michal Brygidyn_CloudHackingScenarios.pdf
Michal Brygidyn_CloudHackingScenarios.pdfMichal Brygidyn_CloudHackingScenarios.pdf
Michal Brygidyn_CloudHackingScenarios.pdf
 
Kamil Kolodziejski_Structura-AWS.pptx
Kamil Kolodziejski_Structura-AWS.pptxKamil Kolodziejski_Structura-AWS.pptx
Kamil Kolodziejski_Structura-AWS.pptx
 
John Merline AWS Certification FAQ.pptx
John Merline AWS Certification FAQ.pptxJohn Merline AWS Certification FAQ.pptx
John Merline AWS Certification FAQ.pptx
 
JuliaFMorgado_Breaking_bad_habits.pptx
JuliaFMorgado_Breaking_bad_habits.pptxJuliaFMorgado_Breaking_bad_habits.pptx
JuliaFMorgado_Breaking_bad_habits.pptx
 

Último

Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 

Último (20)

Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 

AWS Community Day - Andrew May - Running Containers in AWS

  • 1. Running Containers in AWS ANDREW MAY CLOUD SOLUTIONS LEAD COLUMBUS MEET-UP
  • 2. Docker Storage ECR Orchestration (Services) Elastic Container Service (ECS) EC2 Fargate EKS Elastic Beanstalk Single Multi Discovery CloudMap AppMesh Transient AWS Batch CodeBuild
  • 3. Docker Storage ECR Orchestration (Services) Elastic Container Service (ECS) EC2 Fargate EKS Elastic Beanstalk Single Multi Discovery CloudMap AppMesh Transient AWS Batch CodeBuild
  • 4. ECR Amazon Elastic Container Registry
  • 5. Elastic Container Registry (ECR) ECR is a Docker registry hosted within AWS in each region ◦ Images are stored close to where your containers will run Images are secured using AWS IAM Policies The Elastic Container Registry contains a Repository for each image Lifecycle Policies can be used to clean up old versions of images Login using AWS CLI, use standard Docker commands to pull and push Image names are prefixed by ECR Repository URL (<account>.dkr.ecr.<region>.amazonaws.com)
  • 6. Orchestration Management of the container lifecycles
  • 7. Orchestration provides: ➢Configuration ➢Scheduling ➢Deployment ➢Scaling ➢Storage (Volume) mapping ➢Secret management ➢High Availability ➢Load balancing integration
  • 9. ECS Amazon Elastic Container Service
  • 10. Elastic Container Service (ECS) Original AWS Service for running containers ECS Service is free, you only pay for the resources (EC2/Fargate) that are used with ECS Strong integration with other AWS Services: ◦ IAM ◦ Load balancers AutoScaling of containers (similar to EC2 AutoScaling)
  • 11. • ECS can use either EC2 instances or Fargate to run Docker containers • Container Instances = ECS Instances = EC2 Instances • Tasks have 1 or more running Containers • Tasks are defined by Task Definitions
  • 12. Task Definition and Tasks ❖Template for a Task ❖Runs one or more Container ❖References Container Image ❖ECS Agent pulls image and starts container ❖Port mappings, CPU/Memory requirements, Volumes etc. ❖Versioned
  • 13. ALB Integration with ECS Services ❖Services are long running collections of Tasks ❖Run multiple copies ❖Containers have a container port (e.g. 80) and a host port ❖Host port zero = ephemeral ❖ALB Target Group automatically updated
  • 14. Other ECS Benefits ECS Infrastructure can be created using CloudFormation Updating a Service to use a new Task Definition will perform a Blue-Green deployment Possible to use Spot Instances Metrics => CloudWatch Logs => CloudWatch Logs (or elsewhere)
  • 15. Fargate AWS Fargate (compute engine for ECS)
  • 16. Fargate “Serverless” option for running containers in an ECS Cluster ◦ Configure desired CPU/Memory and this will be guaranteed for that container ◦ Compare to using EC2 where you may be over/under provisioned Networking is always awsvpc: i.e. it will use an ENI per instance (one of your subnet IPs) Scaling at a task level is similar to when using EC2 instances, but without the complexity of scaling the underlying EC2 AutoScaling group(s)
  • 17. Why aren’t we all using Fargate? Fargate was expensive when launched, but the Firecracker VM technology has allowed AWS to reduce costs With recent price reductions, Fargate is comparable in price to on- demand EC2 instances with ~70% utilization Reserved or Spot instances make using EC2 a lot cheaper
  • 18. EKS Amazon Elastic Container Service for Kubernetes
  • 19. Kubernetes Predominant Docker Orchestration service Managed Kubernetes available in: ◦ Google Cloud Platform (Google Kubernetes Engine) ◦ Microsoft Azure (Azure Kubernetes Service – AKS) ◦ Amazon Web Services (EKS) The GCP offering is the most mature, AKS and EKS were both launched in 2018 Support for running Kubernetes clusters on EC2 and integrating with other services (e.g. ELB) has existed for longer than EKS has been available
  • 20. What does EKS manage? EKS manages three Kubernetes master instances across AZs to provide high availability
  • 21. Using EKS Cluster creation can be automated with CloudFormation, and AWS provides sample templates and a quick-start ◦ Set up VPC ◦ Create EKS Service IAM Role ◦ Create EKS Cluster ◦ Add Node instances to cluster using EKS AMI Once Cluster created, configure kubectl with access to cluster and use normal Kubernetes tools and templates to manage and deploy to the cluster EKS Cluster cost $0.20/hour (about $140/month)
  • 22. $ eksctl create cluster -p personal -r us-east-2 [ ] using region us-east-2 [ ] setting availability zones to [us-east-2b us-east-2c us-east-2a] [ ] subnets for us-east-2b - public:192.168.0.0/19 private:192.168.96.0/19 [ ] subnets for us-east-2c - public:192.168.32.0/19 private:192.168.128.0/19 [ ] subnets for us-east-2a - public:192.168.64.0/19 private:192.168.160.0/19 [ ] nodegroup "ng-c94ddd68" will use "ami-04ea7cb66af82ae4a" [AmazonLinux2/1.12] [ ] creating EKS cluster "floral-painting-1556150853" in "us-east-2" region [ ] will create 2 separate CloudFormation stacks for cluster itself and the initial nodegroup [ ] if you encounter any issues, check CloudFormation console or try 'eksctl utils describe-stacks --region=us-east-2 -- name=floral-painting-1556150853’ [ ] 2 sequential tasks: { create cluster control plane "floral-painting-1556150853", create nodegroup "ng-c94ddd68" } [ ] building cluster stack "eksctl-floral-painting-1556150853-cluster“ [ ] deploying stack "eksctl-floral-painting-1556150853-cluster“ [ ] buildings nodegroup stack "eksctl-floral-painting-1556150853-nodegroup-ng-c94ddd68“ [ ] --nodes-min=2 was set automatically for nodegroup ng-c94ddd68 [ ] --nodes-max=2 was set automatically for nodegroup ng-c94ddd68 [ ] deploying stack "eksctl-floral-painting-1556150853-nodegroup-ng-c94ddd68“ [X] all EKS cluster resource for "floral-painting-1556150853" had been created [X] saved kubeconfig as "C:Usersandrew.may.CORP/.kube/config“ [ ] adding role "arn:aws:iam::648758314004:role/eksctl-floral-painting-1556150853-NodeInstanceRole-4TJQAGSUVG7Q" to auth ConfigMap [ ] nodegroup "ng-c94ddd68" has 0 node(s) [ ] waiting for at least 2 node(s) to become ready in "ng-c94ddd68“ [ ] nodegroup "ng-c94ddd68" has 2 node(s) [ ] node "ip-192-168-25-233.us-east-2.compute.internal" is ready [ ] node "ip-192-168-79-171.us-east-2.compute.internal" is ready [ ] kubectl command should work with "C:Usersandrew.may.CORP/.kube/config", try 'kubectl get nodes’ [x] EKS cluster "floral-painting-1556150853" in "us-east-2" region is ready
  • 23. EKS Experience Without eksctrl setting up cluster is time consuming Integration with other AWS services is more difficult than with ECS Have to install a variety of services to get IAM, ALB, DNS integrations Significant changes since launch
  • 24. EKS Cluster in AWS Console
  • 25. AWS CloudMap “AWS Cloud Map is a cloud resource discovery service.”
  • 26. CloudMap AWS CloudMap superceeds Service Discovery for ECS ◦ Registered in Route 53 namespace, creating A (IP) and SRV (IP and Port) records ◦ Query DNS for available services ◦ ECS Tasks must use awsvpc networking AWS CloudMap adds an API based system, allowing it to be used for resources where DNS does not apply ◦ Supports a variety of services including ECS, EKS, S3, SQS, Lambda, Load Balancers Similar to the Service Discovery portions of Hashicorp Consul
  • 29. AppMesh Recently released, but still in early stages Service Mesh implementation for AWS, using the Open Source Envoy proxy, but a custom Control Plane Manage connectivity between microservices, including traffic shaping functionality like: ◦ Routing: Canary and A/B Testing ◦ Load Balancing and Service Discovery ◦ Handling Failures (Retry, Circuit Breaker) Integration with CloudMap for Service Discovery Logging and Tracing (CloudWatch, X-Ray)