5. twitter:nerdypaws | linkedin:/in/amycodes
What is serverless?
Cloud-Native, service-based
application architecture.
OR
Using AWS Parts instead of
Building your own Parts.
What are the
benefits of
serverless?
No Server Management
Flexible Scaling
Pay for Value
Automated High
Availability
7. twitter:nerdypaws | linkedin:/in/amycodes
How FaaS Works?
Your code gets built into a
Container Image
Initial Invocation builds a new
Cloud Managed Container from
the Image
Every Subsequent Image spins
up a new Container
Containers are destroyed once
all executions are complete
10. twitter:nerdypaws | linkedin:/in/amycodes
What is ELF?
The Executable and Linkable
Format is a common standard file
format for executable files, object
code, shared libraries, and core
dumps.
Or…
It’s a file format used for Binary
Files.
12. twitter:nerdypaws | linkedin:/in/amycodes
Pros:
• All of your Dependencies
• Your Own Security
• Overall Control
Cons:
• No more Optimizations
• Responsible for the “Glue”
• More Work
What would we get?
13. twitter:nerdypaws | linkedin:/in/amycodes
A Function-Ready Base Container
o A Runtime Supported by the CSP
o Required Middleware
A CSP that can run this Container like a FaaS
o Horizontal Scaling
o Event-based Triggers
What do we need?
15. twitter:nerdypaws | linkedin:/in/amycodes
“AWS Fargate is a serverless compute engine for containers
that works with both Amazon Elastic Container Service
(ECS) and Amazon Elastic Kubernetes Service (EKS). Fargate
makes it easy for you to focus on building your applications.
Fargate removes the need to provision and manage servers,
lets you specify and pay for resources per application, and
improves security through application isolation by design.”
https://aws.amazon.com/fargate/
17. twitter:nerdypaws | linkedin:/in/amycodes
No Server Management
Flexible Scaling
Pay for Value
Automated High Availability
How Serverless is it?
Deploy a zipped deployment
package to Lambda via
CFN/SAM
No Generic Lambda Container
18. twitter:nerdypaws | linkedin:/in/amycodes
A Suite to deploy FaaS in
Kubernetes
Custom Base Containers
Deployable into Fargate
OpenFaas
OpenFaaS Gateway (API
Gateway)
FaaS-Fargate Provider
(Terraform)
Prometheus Monitoring & Alerts
NATS Messaging Server (OSS)
19. twitter:nerdypaws | linkedin:/in/amycodes
× No Server Management
Flexible Scaling
Pay for Value
Automated High Availability
How Serverless is it?
Deploy a zipped deployment
package to Lambda via
CFN/SAM
No Generic Lambda Container
A Base Image Library
#AWSWISHLIST
20. twitter:nerdypaws | linkedin:/in/amycodes
× No Server Management
Flexible Scaling
Pay for Value
Automated High Availability
How Serverless is it?
Horizontal Scaling to 1,000 Concurrent Invocations
Runtime Configuration Limits (15 min Timeout, 250
mb Deployment Package)
No Default Autoscaling Policy
21. twitter:nerdypaws | linkedin:/in/amycodes
@nathankpeck offers a summary
of Containerization, how to use
Containers on AWS, and several
tools for standard practices to use
as quick starts or base templates.
Containers on AWS
22. twitter:nerdypaws | linkedin:/in/amycodes
× No Server Management
× Flexible Scaling
Pay for Value
Automated High Availability
How Serverless is it?
Horizontal Scaling to 1,000 Concurrent Invocations
Runtime Configuration Limits (15 min Timeout, 250
mb Deployment Package)
No Default Autoscaling Policy
A FaaS Like Template
#AWSWISHLIST
23. twitter:nerdypaws | linkedin:/in/amycodes
× No Server Management
× Flexible Scaling
? Pay for Value
Automated High Availability
How Serverless is it?
Availability as a Managed AWS
Service
Availability as a Managed AWS
Service
25. twitter:nerdypaws | linkedin:/in/amycodes
• Unpredictable Lambda Errors due to Missing
Dependencies
My Actual Problem:
• Loses ALL Runtime management, including messaging and
request features
• Taken responsibility of ALL infrastructure, including Networking
and Scaling
Fargate as a
Solution:
26. twitter:nerdypaws | linkedin:/in/amycodes
• Unpredictable Lambda Errors due to Missing
Dependencies
My Actual Problem:
• Creating a Custom Python Deployment Package using
Virtual Environments (And Serverless framework and
Docker)
https://docs.aws.amazon.com/lambda/latest/dg/python-package.html
My actual Solution:
28. twitter:nerdypaws | linkedin:/in/amycodes
• I could re-use it!
• My Security Team could Bless it!
• I would know how it behaved BEFORE deployment
If I had a Container… (#awswishlist)
29. twitter:nerdypaws | linkedin:/in/amycodes
Fargate as a Solution …
to a completely different problem:
• Migrating from ECS to Serverless
• More expensive than ECS when not taking the EC2
Orchestrator into account
• Price comparisons should include the cost of the EC2
30. twitter:nerdypaws | linkedin:/in/amycodes
• How Lambda Works
• When Lambda Breaks
• How Fargate Works
• How Serverless is Fargate
Really?
What did we learn…
• When is Fargate the
Answer?