Clusterless Serverless
container deployment
with AWS Fargate
Rodrigo Galba
Agenda
• Intro
• Concepts
• Demo
• Conclusion
whoami
Rodrigo Galba Barbosa Nunes de Miranda(Rogal)
Software DevelopmentEngineer
Organizer AWS UG CE Meetup
Github, twitter: @rgalba
Containers at scale
Containers
Container is an imutable and self-contained software
that includes everything needed to run (code,
runtime, libs, packages, etc).
• Portable
• Light
• Standardized
• Easy to deploy
Microservice
Autonomous
Specialized
Pros
Agility
Elasticity
Tech agnostic
Resilient
Container = Microservice
Single job per container
Independent Deployment
Easy to scale
Unique versions keep simple to maintain
YOU BUILD IT,
YOU RUN IT
Handle a single
container
is a piece of cake.
Manage various containers can be challenging
Containers needs to be
orchestrated
AWS Container Services landscape
AWS ECS
Containers managed service, providing
high availability and performance.
• Managed Cluster
• Containers orchestration
• Workload on EC2 nodes
• AWS native integration, at container
level
AWS ECS – EC2 mode
ECS
EC2
EC2
EC2
ECR
Docker
image
AWS EKS
Container managed service for
Kubernetes cluster-based
• Managed Cluster
• Community contributions
• Workload on EC2 nodes
• AWS native integration, at container
level
AWS EKS
K8S
EC2
EC2
EC2
ECR
Docker
image
Containers are
cool, but
are heavy-lift.
Can you make it
easy?
AWS ECS - Fargate
Container service fully managed.
• No cluster to manage (clusterless)
• No nodes to manage (serverless)
• AWS native integration, at container
level
• Task/Service execution based
How does
Fargate
work?
Register container definition
Create cluster
Create Service
Run Task
Pricing model
Region US-EAST-1 Price
Per vCPU per hour 0,04048 USD
per GB per hour 0,004445 USD
With AWS Fargate, there are no upfront payments and you only pay for the resources that you use. You pay for
the amount of vCPU and memory resources consumed by your containerized applications.
CPU Memory Values
0,25 vCPU 0,5 GB, 1 GB e 2 GB
0,5 vCPU Min. 1 GB and max. 4 GB, in 1 GB increments
1 vCPU Min. 2 GB and max. 8 GB, in 1 GB increments
2 vCPUs Min. 4 GB and max. 16 GB, in 1 GB increments
4 vCPUs Min. 8 GB and max. 30 GB, in 1 GB increments
Pricing is per second with a 1-minute minimum. Durationis calculatedfrom the time you start to download
your containerimage (docker pull) untilthe Task terminates, roundedup to the nearest second.
Sample: Fibonacci App
Web service to calculate Fibonacci sequence for a given value "n".
+
+
curl --request POST 
--url http://localhost:8080/10
[ 1, 1, 2, 3, 5, 8, 13, 21, 34, 55 ]
Works on my cluster
Any Questions?
Thank you.

Aws Fargate clusterless serverless