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.
Ingress Nginx​
This feature is only available when using the following worker node types:
vCluster can install ingress nginx into the vCluster. This can be enabled via:
deploy:
ingressNginx:
enabled: true
Metrics Server​
This feature is only available when using the following worker node types:
vCluster can install metrics server into the vCluster. This can be enabled via:
deploy:
metricsServer:
enabled: true
CNI​
This feature is only available when using the following worker node types:
vCluster installs Flannel by default. You can install your own CNI with the following.
deploy:
cni:
flannel:
enabled: false
Kube proxy​
This feature is only available when using 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​
This feature is only available when using the following worker node types:
vCluster can install Metallb into the vCluster. This can be enabled via:
deploy:
metallb:
enabled: true
ipAddressPool:
addresses:
- 10.X.X.1-10.X.X.100 # your ips here
Local Path Provisioner​
This feature is only available when using 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.
deploy
required object ​kubeProxy
required object ​
KubeProxy holds dedicated kube proxy configuration.
kubeProxy
required object ​enabled
required boolean true ​
Enabled defines if the kube proxy should be enabled.
enabled
required boolean true ​image
required string ​
Image is the image for the kube-proxy.
image
required string ​imagePullPolicy
required string ​
ImagePullPolicy is the policy how to pull the image.
imagePullPolicy
required string ​nodeSelector
required object {} ​
NodeSelector is the node selector for the kube-proxy.
nodeSelector
required object {} ​priorityClassName
required string ​
PriorityClassName is the priority class name for the kube-proxy.
priorityClassName
required string ​tolerations
required object[] [] ​
Tolerations is the tolerations for the kube-proxy.
tolerations
required object[] [] ​extraEnv
required object[] [] ​
ExtraEnv is the extra environment variables for the kube-proxy.
extraEnv
required object[] [] ​extraArgs
required string[] [] ​
ExtraArgs are additional arguments to pass to the kube-proxy.
extraArgs
required string[] [] ​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
config
required object {} ​metallb
required object ​
Metallb holds dedicated metallb configuration.
metallb
required object ​enabled
required boolean false ​
Enabled defines if metallb should be enabled.
enabled
required boolean false ​controllerImage
required string ​
ControllerImage is the image for metallb controller.
controllerImage
required string ​speakerImage
required string ​
SpeakerImage is the image for metallb speaker.
speakerImage
required string ​ipAddressPool
required object ​
IPAddressPool is the IP address pool to use for metallb.
ipAddressPool
required object ​cni
required object ​
CNI holds dedicated CNI configuration.
cni
required object ​flannel
required object ​
Flannel holds dedicated Flannel configuration.
flannel
required object ​enabled
required boolean true ​
Enabled defines if Flannel should be enabled.
enabled
required boolean true ​image
required string ​
Image is the image for Flannel main container.
image
required string ​initImage
required string ​
InitImage is the image for Flannel init container.
initImage
required string ​imagePullPolicy
required string ​
ImagePullPolicy is the policy how to pull the image.
imagePullPolicy
required string ​localPathProvisioner
required object ​
LocalPathProvisioner holds dedicated local path provisioner configuration.
localPathProvisioner
required object ​enabled
required boolean true ​
Enabled defines if LocalPathProvisioner should be enabled.
enabled
required boolean true ​image
required string ​
Image is the image for local path provisioner.
image
required string ​imagePullPolicy
required string ​
ImagePullPolicy is the policy how to pull the image.
imagePullPolicy
required string ​nodePath
required string ​
NodePath is the path on the node where to create the persistent volume directories.
nodePath
required string ​ingressNginx
required object ​
IngressNginx holds dedicated ingress-nginx configuration.
ingressNginx
required object ​