Sharing a Kernel

You currently run untrusted user code in ordinary containers on a shared host and are considering microVMs (Firecracker style) instead. What is the security argument for the change?

A

Containers cannot cap CPU or memory per tenant, so a noisy neighbour starves the host until that workload is moved into a VM

B

Containers share the host kernel, so one kernel bug reaches every tenant, while a microVM gives each run its own guest kernel behind a hypervisor boundary

C

MicroVMs boot in milliseconds and can be discarded after each run, and that shorter lifetime is what shrinks the window of exposure

D

MicroVMs apply syscall filtering and network policy at the hypervisor for you, so per-process seccomp profiles and egress rules are no longer needed at all