netflix/virtual-kubelet — explained in plain English
Analysis updated 2026-07-18 · repo last pushed 2024-06-19
Burst apps to serverless platforms like AWS Fargate during traffic spikes without managing extra servers.
Connect Kubernetes to HashiCorp Nomad so apps can run across both systems.
Tie multiple Kubernetes clusters together so they share computing resources.
Build a custom connector to make any external service act like part of your Kubernetes cluster.
| netflix/virtual-kubelet | geohot/erigon | syncthing/roadmap-votes | |
|---|---|---|---|
| Stars | 5 | 5 | 5 |
| Language | Go | Go | Go |
| Last pushed | 2024-06-19 | 2021-09-12 | 2026-05-26 |
| Maintenance | Dormant | Dormant | Maintained |
| Setup difficulty | hard | hard | moderate |
| Complexity | 4/5 | 4/5 | 2/5 |
| Audience | developer | ops devops | developer |
Figures from each repo's GitHub metadata at analysis time.
It is a library for building custom integrations, not a standalone tool you can just download and run, you need to implement provider functions and have a working Kubernetes cluster.
Virtual Kubelet is a tool that lets you treat outside services, like serverless container platforms from AWS, Azure, or Alibaba, as if they were just regular servers inside your existing Kubernetes setup. Kubernetes normally manages groups of applications running on standard machines, but this project tricks it into thinking it has an extra machine available. When Kubernetes tries to run an app on that "machine," the app actually gets sent to an entirely different cloud service to run. It works using a clever bridge. Normally, a piece of software called a "kubelet" runs on every machine in a Kubernetes cluster to receive instructions and start apps. This project pretends to be a kubelet, but instead of running apps on a local machine, it translates Kubernetes instructions into commands for other platforms. It has a plug-in system, so anyone can write a connector for a new service. You just tell it which service to talk to, and it handles the back-and-forth communication to make the app run there. This is useful for teams who already use Kubernetes but want to tap into serverless computing without retraining everyone or changing how they deploy apps. For example, if you have a sudden spike in traffic, you could burst some apps to a service like AWS Fargate, which spins up containers instantly without requiring you to manage servers. It also works for connecting to other systems entirely, like HashiCorp Nomad, or even tying multiple Kubernetes clusters together so they share resources. The project is designed as a building block rather than a finished product. Developers use it as a library to create their own custom integrations, implementing a few core functions to handle app lifecycles and report status back to Kubernetes. The README includes code examples for these interfaces but does not provide a quick-start guide for simply downloading and running the tool on its own. The plug-in architecture means it can be adapted to many different backend systems.
Virtual Kubelet makes external cloud services like AWS Fargate or Azure Container Instances look like normal servers inside your Kubernetes cluster, so you can run apps there without changing how you deploy.
Mainly Go. The stack also includes Go, Kubernetes.
Dormant — no commits in 2+ years (last push 2024-06-19).
You can use, modify, and distribute this software freely, including for commercial purposes, as long as you include the original copyright and license notice.
Setup difficulty is rated hard, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
double-check against the repo, no cap.