The Challenge
Sharing a Kubernetes cluster across multiple teams or customers is complex:- Namespace isolation isn’t enough - Teams need admin-level access without risking the host cluster
- Security boundaries are weak - CRDs, cluster roles, and webhooks are shared across all tenants
- Resource conflicts - Teams compete for the same API resources and cluster-wide configurations
- Compliance requirements - Regulated industries need stronger isolation guarantees than namespaces provide
How vCluster Solves It
vCluster provides true multi-tenancy by giving each tenant their own virtual Kubernetes control plane. Each virtual cluster has:- Isolated API server - Complete Kubernetes API isolation with independent RBAC
- Admin access per tenant - Teams get cluster-admin inside their vCluster while having minimal permissions on the host
- Separate CRD namespaces - No conflicts between tenant CRDs or cluster-wide resources
- Strong security boundaries - Workloads run in dedicated namespaces with enforced policies
Real-World Examples
Internal Platform Teams
Atlan reduced their cluster count from 100 to 1 by using vCluster for multi-tenant isolation. Each data engineering team gets their own virtual cluster with full autonomy.Software Vendors
Deliver Kubernetes-native software where each customer gets their own isolated virtual cluster. Perfect for SaaS platforms that need to provision per-customer environments quickly.Enterprise Kubernetes Platforms
Deloitte built their enterprise Kubernetes platform using vCluster, providing isolated environments for different business units while maintaining centralized governance.Recommended Configuration
Basic Multi-Tenancy (Shared Nodes)
Maximize density and minimize cost. Tenants share the host cluster’s nodes:Production Multi-Tenancy (Dedicated Nodes)
Each tenant gets dedicated compute resources using node labels:High-Security Multi-Tenancy (Private Nodes)
Complete CNI/CSI isolation for compliance and regulated environments:Best Practices
1. Enforce Resource Quotas
Prevent noisy neighbors by setting hard limits per tenant:2. Implement Network Policies
Isolate tenant traffic and control egress:3. Use Separate Node Pools
For production tenants, dedicate nodes by labeling host cluster nodes:4. Integrate with External Secrets
Securely manage tenant secrets:5. Enable High Availability
For production tenants, run multiple control plane replicas:6. Monitor Per-Tenant Resources
Enable metrics collection for billing and chargeback:Architecture Progression
Start with shared nodes for development and scale to dedicated or private nodes for production:| Isolation Level | Use Case | Cost | Security |
|---|---|---|---|
| Shared Nodes | Dev/test environments, internal teams | Lowest | Basic |
| Dedicated Nodes | Production tenants, regulated workloads | Medium | Strong |
| Private Nodes | Compliance, financial services, healthcare | Highest | Maximum |