Skip to Main Content
Talk Intermediate CC BY-SA 4.0

Our Agents Cold Start in Under a Second, Thanks to CRIU on Kubernetes

Proposal status is Rejected
Session Description

Today every company is building the same thing, every user gets their own agent and a dedicated container running it, be it coding agents, browser agents or per-tenant LLM sandboxes. That gives great isolation but terrible latency. On our platform, a fresh per-user agent took 15–30 seconds before the user could do anything, because time was taken in pulling the image, booting the runtime, loading config and context, and re-establishing tool connections.

The usual fixes are either not FOSS or just bad. One option is to keep a warm pod per user, which means paying for thousands of idle containers, and making users wait means they leave. The industry's answer is increasingly managed and anti FOSS sandbox platforms and closed serverless snapshot features, which tie your fastest path to one vendor's runtime and one cloud.

At Sabi, we took a FOSS path instead: snapshot the already-warm process with CRIU (Checkpoint/Restore In Userspace), kill the container, and restore it on demand. The whole stack is open: CRIU, runc/crun, CRI-O and the upstream kubelet checkpoint API, with checkpoints stored as OCI images in any registry. It runs on any Kubernetes cluster and serves over a thousand concurrent users in production today.

The talk will be divided into and cover:

  • Where the 30 seconds actually go, with a measured breakdown

  • How CRIU checkpoint/restore works under the hood

  • What upstream Kubernetes gives you today: a checkpoint API (alpha in 1.25, beta in 1.30), but no built-in way to restore, which you have to build yourself

  • The architecture that survived real traffic: warm pool → checkpoint → registry → restore on request, with per-user scale-to-zero

  • What a thousand concurrent restores do to your storage layer

  • Sharp edges:

    • TCP connections, file descriptors and bind mounts

    • Restoring onto a node with different CPU feature flags

    • Memory dumps containing every secret the process touched

    • Archive size

    • GPU state

    • Support differences between containerd and CRI-O

  • And specially when this is a very bad idea

Key Takeaways
  • Fast, cheap, isolated agent sandboxes don't require a proprietary platform. Plain Kubernetes and CRIU can do it and its working in production today.

  • How CRIU works, and what it can and can't restore

  • What upstream Kubernetes and the container runtimes actually support today, and where the gaps are

  • A reusable architecture with real production load behind it

  • The security implications of shipping memory snapshots around

  • How to judge whether checkpoint/restore fits your workload

References

Session Categories

Technology architecture
Tutorial about using a FOSS project
Engineering practice - productivity, debugging
Talk License: CC BY-SA 4.0

Speakers

Akash Singh
Akash Singh Devops Lead | Sabi

I'm Akash Singh (SkySingh04 online), a DevOps and MLOps engineer who specializes in Kubernetes and Golang, and an active speaker and organizer in the Indian FOSS community. At IndiaFOSS 2026, I organized the Cloud & DevOps devroom and gave two talks: "How to Build Long-Lasting Tech Communities That Thrive" and "How Exactly Do We Teach Students the Right FOSS Etiquette." Internationally, I've spoken at FOSSAsia 2026 in Bangkok and SWITCH in Singapore. In India, I've also spoken at the Google Summer of Code Alumni Camp India 2026 and at OOSC 4.0 at IIIT Allahabad, on what GSoC really looks like on the path from contributor to mentor.

I currently lead DevOps and MLOps at Sabi. Previously, I was a DevOps Engineer at FinalRoundAI, Aspora and Embeddings Co., working with AWS, Terraform and infrastructure as code, and a Backend Engineer at CloudSek, building Golang microservices. I'm a Kubestronaut, holding all five CNCF Kubernetes certifications (CKA, CKAD, CKS, KCNA and KCSA).

In open source, I run Point Blank, a student open-source community, and I've spoken about it in front of 2,000 students. I was selected for Google Summer of Code 2024 with Keploy and the Linux Foundation Mentorship 2025 with LitmusChaos.

Sonal Gaud
Sonal Gaud Backend Engineer | Accenture

I'm Sonal Gaud, a Mumbai-based software engineer at Accenture and an open-source contributor focused on Go, observability and cloud native tooling. I'm a code owner for the otelhttp package in OpenTelemetry Go Contrib and part of the OpenTelemetry Go contributor team, where I review and maintain HTTP instrumentation and help keep contributions aligned with the OpenTelemetry specification.

I recently spoke at IndiaFOSS 2026 in the Cloud & DevOps devroom on "How OpenTelemetry Instrumentation Works Under the Hood." I was also a guest on the Grafana OpenTelemetry Community Call, talking about my path to becoming a code owner.

I was a Google Summer of Code 2026 contributor with Sugar Labs. There I automated release versioning and changelogs, consolidated CI into a single parallel pipeline, and added health endpoints and graceful shutdown for reliable deployments. Before that, I was an Outreachy 2025 intern with ODK-X, building CI/CD pipelines and automated testing. I'm a Linux Foundation LIFT Scholar (2024) and volunteered with CNCF's Merge Forward initiative at KubeCon India 2026.

Reviews

Thanks for your submission. While this dives into interesting technical depth with CRIU, we had to pass on it due to track balance. Between the heavy volume of Kubernetes submissions and the flood of AI proposals this year, we simply ran out of room for talks in this space. Space is tight across the schedule, so we are unable to offer a slot this time around. Thank you for your submission, and we hope to see you at the event.

Reviewer #1 Rejected