Skip to main content
Version: main 🚧

Deploy vCluster AddOns

Configure addons​

vCluster supports addons that extend the functionality of your virtual cluster. You can configure these addons during deployment to adjust networking, observability, and other features for your environment and requirements.

[Deprecated]: Ingress Nginx​

Limited vCluster Tenancy Configuration Support

This feature is only available for the following:

Running the control plane as a container and the following worker node types:

vCluster can install ingress nginx into the vCluster. This can be enabled via:

Enable Ingress Nginx
deploy:
ingressNginx:
enabled: true

Metrics Server​

Limited vCluster Tenancy Configuration Support

This feature is only available for the following:

Running the control plane as a container and the following worker node types:

vCluster can install metrics server into the vCluster. This can be enabled via:

Enable Metrics Server
deploy:
metricsServer:
enabled: true

CNI​

Limited vCluster Tenancy Configuration Support

This feature is only available for the following:

Running the control plane as a container and the following worker node types:

vCluster installs Flannel by default. You can install your own CNI with the following.

Disable default Flannel CNI
deploy:
cni:
flannel:
enabled: false

Kube proxy​

Limited vCluster Tenancy Configuration Support

This feature is only available for the following:

Running the control plane as a container and the following worker node types:

vCluster installs Kube Proxy by default to ensure that services are configured on the nodes. Some CNI implement their own kube-proxy functionality. Optionally, you can disable kube-proxy deployment in the vCluster config.

Metallb​

Limited vCluster Tenancy Configuration Support

This feature is only available for the following:

Running the control plane as a container and the following worker node types:

vCluster can install Metallb into the vCluster. This can be enabled via:

Enable Metallb
deploy:
metallb:
enabled: true
ipAddressPool:
addresses:
- 10.X.X.1-10.X.X.100 # your ips here

Local Path Provisioner​

Limited vCluster Tenancy Configuration Support

This feature is only available for the following:

Running the control plane as a container and the following worker node types:

vCluster installs the Local Path Provisioner by default to allow stateful workloads within the vCluster.

Config reference​

deploy required object ​

Deploy holds configuration for the deployment of vCluster.

kubeProxy required object ​

KubeProxy holds dedicated kube proxy configuration.

enabled required boolean true ​

Enabled defines if the kube proxy should be enabled.

image required string ​

Image is the image for the kube-proxy.

imagePullPolicy required string ​

ImagePullPolicy is the policy how to pull the image.

nodeSelector required object {} ​

NodeSelector is the node selector for the kube-proxy.

priorityClassName required string ​

PriorityClassName is the priority class name for the kube-proxy.

tolerations required object[] [] ​

Tolerations is the tolerations for the kube-proxy.

extraEnv required object[] [] ​

ExtraEnv is the extra environment variables for the kube-proxy.

extraArgs required string[] [] ​

ExtraArgs are additional arguments to pass to the kube-proxy.

config required object {} ​

Config is the config for the kube-proxy that will be merged into the default kube-proxy config. More information can be found here: https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/#kubeproxy-config-k8s-io-v1alpha1-KubeProxyConfiguration

metallb required object ​

Metallb holds dedicated metallb configuration.

enabled required boolean false ​

Enabled defines if metallb should be enabled.

controllerImage required string ​

ControllerImage is the image for metallb controller.

speakerImage required string ​

SpeakerImage is the image for metallb speaker.

ipAddressPool required object ​

IPAddressPool is the IP address pool to use for metallb.

addresses required string[] [] ​

Addresses is a list of IP addresses to use for the IP address pool.

l2Advertisement required boolean true ​

L2Advertisement defines if L2 advertisement should be enabled for the IP address pool.

cni required object ​

CNI holds dedicated CNI configuration.

flannel required object ​

Flannel holds dedicated Flannel configuration.

enabled required boolean true ​

Enabled defines if Flannel should be enabled.

image required string ​

Image is the image for Flannel main container.

initImage required string ​

InitImage is the image for Flannel init container.

imagePullPolicy required string ​

ImagePullPolicy is the policy how to pull the image.

localPathProvisioner required object ​

LocalPathProvisioner holds dedicated local path provisioner configuration.

enabled required boolean true ​

Enabled defines if LocalPathProvisioner should be enabled.

image required string ​

Image is the image for local path provisioner.

imagePullPolicy required string ​

ImagePullPolicy is the policy how to pull the image.

nodePath required string ​

NodePath is the path on the node where to create the persistent volume directories.

ingressNginx required object ​

IngressNginx holds dedicated ingress-nginx configuration.

enabled required boolean false ​

Enabled defines if ingress-nginx should be enabled.

defaultIngressClass required boolean true ​

DefaultIngressClass defines if the deployed ingress class should be the default ingress class.

metricsServer required object ​

MetricsServer holds dedicated metrics server configuration.

enabled required boolean false ​

Enabled defines if metrics server should be enabled.

volumeSnapshotController required object ​

VolumeSnapshotController holds dedicated CSI snapshot-controller configuration.

enabled required boolean false ​

Enabled defines if the CSI volumes snapshot-controller should be enabled.