gitmyhub

vcluster

Go ★ 11k updated 1d ago

vCluster - Create fully functional virtual Kubernetes clusters - Each vcluster runs inside a namespace of the underlying k8s cluster. It's cheaper than creating separate full-blown clusters and it offers better multi-tenancy and isolation than regular namespaces.

A tool that creates lightweight virtual Kubernetes clusters inside an existing cluster, giving teams isolated environments at lower cost than running separate full clusters.

GoKubernetesDockersetup: hardcomplexity 4/5

vCluster is a tool that lets engineering teams create virtual Kubernetes clusters that run inside an existing Kubernetes cluster. Kubernetes is an open-source system for running containerized software at scale, and usually each team or project that needs one gets a separate, full installation of it. vCluster offers an alternative: spin up a lightweight virtual cluster in minutes, and teams get the same experience as a dedicated cluster without the overhead of running an entirely separate one.

Each virtual cluster has its own Kubernetes API server, its own permission system, and its own configuration space. From a tenant's point of view, the cluster looks and behaves like a real one. In practice it runs inside a namespace (an isolated section) of a larger parent cluster, sharing the underlying computing resources. This arrangement reduces infrastructure costs compared to maintaining many separate clusters, while still keeping different teams or customers from interfering with each other.

The tool supports several deployment modes. Teams can run it on top of an existing cluster, deploy it on bare metal without any parent cluster, or run it locally on Docker for development without a Kubernetes installation at all. A command-line tool handles creation and management: a few commands create a new cluster and connect kubectl (the standard Kubernetes command tool) to it.

Common uses include giving AI and machine learning teams isolated access to GPU resources, providing each software customer their own environment, replacing dozens of separate development clusters with virtual ones to save costs, and enabling platform teams to offer self-service Kubernetes to internal users. The project reports over 40 million tenant clusters deployed by organizations including Adobe, NVIDIA, and CoreWeave.

vCluster is certified by the Cloud Native Computing Foundation as a conformant Kubernetes distribution. A free tier allows unlimited clusters up to 64 CPUs or 32 GPUs. The source code is available on GitHub under an open-source license.

Where it fits