Skip to main content

Deploy vclusters

Let's create a virtual cluster vcluster-1 in namespace host-namespace-1:

# Create a vcluster that can be accessed through port forwarding
vcluster create vcluster-1 -n host-namespace-1
# OR: Use --expose to create a vcluster with an externally accessible LoadBalancer
vcluster create vcluster-1 -n host-namespace-1 --expose
Host Namespace

No matter if we are creating namespaces within the virtual cluster, everything will be encapsulated inside the host namespace that the virtual cluster runs inside.

Air-gapped Clusters

If you want to deploy vclusters in an air-gapped environment, use the kubectl tab and make sure to download and import all required images to your internal container registry first.

Admin Permissions Required?#

One of the biggest benefits of vcluster compared to other virtual cluster approaches is that it does not require any special permissions. Even if you are not cluster-admin and only have access to deploy applications to one specific namespace, you will very likely be able to spin up a virtual cluster.

Check out the kubectl tab above to see what vcluster create is actually deploying to the host-namespace.