Build Pipelines
Cloud
Application
Code
Figure 2: Serverless App Deployments
Using container-based functions is one attempt at addressing this problem. These func-
tions package applications into short-lived, transient containers, ideal for serverless
type workloads. Every major cloud provider is innovating their hypervisors and proces-
sors to support these transient containers, which they can create within a few microsec-
onds. However, the implementations are different across the major cloud providers.
kubernetes
Build Pipelines
Application
Code
App Container
AWS ECR
MicroVMs
KVM
Host
Figure 3: AWS Firecracker Architecture
AWS Firecracker deploys transient container images as micro VMs powered by KVM and
Rust. KVM offers fast startup time and low memory overhead to create thousands of
micro VMs on the same machine. Both Lambda and Fargate use Firecracker behind the
scenes.
kubernetes
Virtual
Kubelets
Build Pipelines
Application
Code
App Container
ACR
Figure 4: Azure Container Instances (ACI) Architecture
46 | THE DOPPLER |
SPRING 2019
ACI VMs