chornous.dev
All writing

AWS Lambda MicroVMs: isolation belongs in the product boundary

AWS Lambda MicroVMs combine Firecracker isolation, snapshot startup, dedicated HTTPS endpoints, and retained state for code-execution products.

AWS Lambda MicroVMs changes the serverless boundary for products that execute code they did not write. Each user or job can get a Firecracker-backed environment with VM-level isolation instead of sharing a general-purpose worker.

The product shape is different from a Lambda function. An environment is built from a Dockerfile into a pre-initialized snapshot, launched with its own HTTPS endpoint, and able to retain state across suspend and resume for up to eight hours. That fits AI sandboxes, browser IDEs, CI jobs, and data tools better than a short-lived invocation does.

Snapshot startup is also the part that deserves the most care. AWS says unique IDs, secrets, and random seeds must be created after a MicroVM starts. Credentials and network connections may expire while an environment is suspended, so startup and resume hooks need to refresh them.

For a sandbox product, I would make the lifecycle explicit in the application model: a narrow execution role per job, identity minted after startup, a resume hook that rebuilds expired connections, and a hard teardown path. Fast boot is useful. Knowing exactly what survives a snapshot is the security work.

This is not “a VM without servers.” It is isolation, startup, and lifecycle control packaged as one managed boundary. That can simplify untrusted-code products, but only when the application treats the sandbox as real security architecture.

Official sources: AWS Lambda MicroVMs launch announcement and the technical deep dive.

Cover image: “Servers in a Rack” by Abigor, used under CC BY-SA 3.0. No local edits were made; the layout crops it responsively. No endorsement is implied.

VC

Written by

Volodymyr Chornous

Get in touch