Post #226
1.08K
Imagine a Kubernetes Pod that automatically scales to zero when there’s no load. No, it’s not KEDA doing that, but an implementation on a container runtime level!
Meet zeropod, a containerd shim that performs a container checkpoint for your Pod (i.e. freezes your container and saves it on a disk) when no new TCP connections are coming. After it’s done, the needed port is still listened to, which allows it to restore the container whenever a new connection arrives. Why would you need it? Think of low-traffic websites or your dev environments. Zeropod:
- is implemented as a DaemonSet that installs a binary on the node and leverages a Runtime Class;
- relies on the CRIU (Checkpoint and Restore in Userspace) tool and requires Kubernetes v1.23+ and containerd 1.6+ to work;
- comes with ready-to-use manifests for general deployments and customisations for kind, k3s, GKE, and RKE2;
- offers some experimental features, such as migrating a scaled-down container and live migrating a running container.
Language: Go | License: Apache 2.0 | 434 ⭐️
▶️ GitHub repo
#tools
Meet zeropod, a containerd shim that performs a container checkpoint for your Pod (i.e. freezes your container and saves it on a disk) when no new TCP connections are coming. After it’s done, the needed port is still listened to, which allows it to restore the container whenever a new connection arrives. Why would you need it? Think of low-traffic websites or your dev environments. Zeropod:
- is implemented as a DaemonSet that installs a binary on the node and leverages a Runtime Class;
- relies on the CRIU (Checkpoint and Restore in Userspace) tool and requires Kubernetes v1.23+ and containerd 1.6+ to work;
- comes with ready-to-use manifests for general deployments and customisations for kind, k3s, GKE, and RKE2;
- offers some experimental features, such as migrating a scaled-down container and live migrating a running container.
Language: Go | License: Apache 2.0 | 434 ⭐️
▶️ GitHub repo
#tools
- 🔥 9
- ❤ 2
- 👍 2




