This guide walks you through installing vCluster using Helm, the recommended method for production deployments.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/loft-sh/vcluster/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
Before installing vCluster, ensure you have:- Kubernetes 1.18+ cluster (host cluster)
- Helm 3.10.0+ installed locally
- kubectl configured to access your host cluster
- Appropriate permissions to create namespaces and cluster-scoped resources
Installation Methods
Quick Installation
For a basic vCluster installation with default settings:Install vCluster
Install vCluster in a new namespace:This creates a virtual cluster named
my-vcluster in the vcluster-my-vcluster namespace.Custom Installation with Values
For production deployments, create a customvalues.yaml file:
Connecting to vCluster
After installation, connect to your vCluster using the vCluster CLI:Connect to vCluster
- Establishes a port-forward to the vCluster
- Updates your kubeconfig to include the vCluster context
- Switches to the vCluster context
Installation Options
Kubernetes Distribution Selection
vCluster supports different Kubernetes distributions. By default, it uses K3s, but you can configure vanilla Kubernetes:Backing Store Options
vCluster supports multiple backing store configurations:Embedded Database (Default)
Embedded etcd
Deployed etcd (Recommended for Production)
External Database
Upgrading vCluster
To upgrade an existing vCluster installation:Uninstalling vCluster
To completely remove a vCluster:By default, persistent volume claims are retained even after uninstallation. To delete them, you need to manually remove the PVCs or configure the retention policy.
Common Installation Pitfalls
Insufficient Permissions
Problem: Installation fails with permission errors. Solution: Ensure your service account has cluster-admin privileges or at minimum:- Create/manage namespaces
- Create cluster roles and bindings
- Create custom resource definitions (if using integrations)
Resource Constraints
Problem: vCluster pods are stuck in Pending state. Solution: Check node resources and adjust resource requests:Namespace Conflicts
Problem: “namespace already exists” error during installation. Solution: Either:- Use a different namespace name
- Delete the existing namespace (after backing up any important data)
- Use
helm upgrade --installinstead ofhelm install
Storage Class Issues
Problem: PVCs remain in Pending state. Solution: Verify your cluster has a default storage class or specify one explicitly:Next Steps
- Configuration Options - Learn about available configuration options
- High Availability Setup - Configure vCluster for production HA
- Networking Configuration - Set up networking for your use case
- Storage Configuration - Configure persistent storage options