Advanced
Config reference​
advanced object ​
Advanced holds additional configuration for the vCluster control plane.
advanced object ​defaultImageRegistry string ​
DefaultImageRegistry will be used as a prefix for all internal images deployed by vCluster or Helm. This makes it easy to
upload all required vCluster images to a single private repository and set this value. Workload images are not affected by this.
defaultImageRegistry string ​virtualScheduler object ​
VirtualScheduler defines if a scheduler should be used within the virtual cluster or the scheduling decision for workloads will be made by the host cluster.
Deprecated: Use ControlPlane.Distro.K8S.Scheduler instead.
virtualScheduler object ​enabled boolean false ​
Enabled defines if this option should be enabled.
enabled boolean false ​serviceAccount object ​
ServiceAccount specifies options for the vCluster control plane service account.
serviceAccount object ​enabled boolean true ​
Enabled specifies if the service account should get deployed.
enabled boolean true ​name string ​
Name specifies what name to use for the service account.
name string ​imagePullSecrets object[] ​
ImagePullSecrets defines extra image pull secrets for the service account.
imagePullSecrets object[] ​name string ​
Name of the image pull secret to use.
name string ​annotations object {} ​
Annotations are extra annotations for this resource.
annotations object {} ​labels object {} ​
Labels are extra labels for this resource.
labels object {} ​workloadServiceAccount object ​
WorkloadServiceAccount specifies options for the service account that will be used for the workloads that run within the virtual cluster.
workloadServiceAccount object ​enabled boolean true ​
Enabled specifies if the service account for the workloads should get deployed.
enabled boolean true ​name string ​
Name specifies what name to use for the service account for the virtual cluster workloads.
name string ​imagePullSecrets object[] ​
ImagePullSecrets defines extra image pull secrets for the workload service account.
imagePullSecrets object[] ​name string ​
Name of the image pull secret to use.
name string ​annotations object {} ​
Annotations are extra annotations for this resource.
annotations object {} ​labels object {} ​
Labels are extra labels for this resource.
labels object {} ​headlessService object ​
HeadlessService specifies options for the headless service used for the vCluster StatefulSet.
headlessService object ​annotations object {} ​
Annotations are extra annotations for this resource.
annotations object {} ​labels object {} ​
Labels are extra labels for this resource.
labels object {} ​konnectivity object ​
Konnectivity holds dedicated konnectivity configuration. This is only available when privateNodes.enabled is true.
konnectivity object ​server object ​
Server holds configuration for the konnectivity server.
server object ​enabled boolean true ​
Enabled defines if the konnectivity server should be enabled.
enabled boolean true ​extraArgs string[] [] ​
ExtraArgs are additional arguments to pass to the konnectivity server.
extraArgs string[] [] ​agent object ​
Agent holds configuration for the konnectivity agent.
agent object ​enabled boolean true ​
Enabled defines if the konnectivity agent should be enabled.
enabled boolean true ​replicas integer 1 ​
Replicas is the number of replicas for the konnectivity agent.
replicas integer 1 ​image string ​
Image is the image for the konnectivity agent.
image string ​imagePullPolicy string ​
ImagePullPolicy is the policy how to pull the image.
imagePullPolicy string ​nodeSelector object {} ​
NodeSelector is the node selector for the konnectivity agent.
nodeSelector object {} ​priorityClassName string ​
PriorityClassName is the priority class name for the konnectivity agent.
priorityClassName string ​tolerations object[] [] ​
Tolerations is the tolerations for the konnectivity agent.
tolerations object[] [] ​extraEnv object[] [] ​
ExtraEnv is the extra environment variables for the konnectivity agent.
extraEnv object[] [] ​extraArgs string[] [] ​
ExtraArgs are additional arguments to pass to the konnectivity agent.
extraArgs string[] [] ​registry object ​
Registry allows enabling an embedded docker image registry in vCluster. This is useful for air-gapped environments or when you don't have a public registry available to distribute images.
registry object ​enabled boolean false ​
Enabled defines if the embedded registry should be enabled.
enabled boolean false ​anonymousPull boolean true ​
AnonymousPull allows enabling anonymous pull for the embedded registry. This allows anybody to pull images from the registry without authentication.
anonymousPull boolean true ​config object {} ​
Config is the regular docker registry config. See https://distribution.github.io/distribution/about/configuration/ for more details.
config object {} ​cloudControllerManager object ​
CloudControllerManager holds configuration for the embedded cloud controller manager. This is only available when private nodes are enabled.
The cloud controller manager is responsible for setting the node's ip addresses as well as the provider id for the node and other node metadata.
cloudControllerManager object ​enabled boolean true ​
Enabled defines if the embedded cloud controller manager should be enabled. This defaults to true, but can be disabled if you want to use
an external cloud controller manager such as AWS or GCP. The cloud controller manager is responsible for setting the node's ip addresses as well
as the provider id for the node and other node metadata.
enabled boolean true ​kubeOvn object ​
KubeOvn holds configuration for the kube-ovn integration of the embedded cloud controller manager. When enabled, services of
type LoadBalancer are translated into kube-ovn RouterLBRule and OvnEip resources in the host cluster.
kubeOvn object ​enabled boolean ​
Enabled defines if the kube-ovn integration of the embedded cloud controller manager should be enabled. This requires kube-ovn to be
deployed in the host cluster and private nodes to be enabled.
enabled boolean ​vpc string ​
VPC is the name of the kube-ovn VPC that the integration operates on. It is shared by loadBalancers and podRoutes.
vpc string ​loadBalancers object ​
LoadBalancers holds configuration for translating services of type LoadBalancer into kube-ovn resources in the host cluster.
loadBalancers object ​externalSubnet string ​
ExternalSubnet is the name of the kube-ovn subnet that the load balancer VIPs are allocated from.
externalSubnet string ​backendSubnet string ​
BackendSubnet is the name of a kube-ovn subnet in the load balancer's VPC. It is stamped as the
generated Service's ovn.kubernetes.io/logical_switch so kube-ovn places the VIP on the VPC's
load balancer; the value only needs to be a real subnet in that VPC.
backendSubnet string ​globalMetadata object ​
GlobalMetadata is metadata that will be added to all resources deployed by Helm.
globalMetadata object ​annotations object {} ​
Annotations are extra annotations for this resource.
annotations object {} ​kubeVip object ​
KubeVip holds configuration for embedded kube-vip that announces the virtual cluster endpoint IP on layer 2.
kubeVip object ​enabled boolean false ​
Enabled defines if embedded kube-vip should be enabled.
enabled boolean false ​interface string ​
Interface is the network interface on which the VIP is announced.
interface string ​gateway string ​
Gateway is the gateway address in CIDR notation (e.g., 10.100.0.1/24).
This is used to configure policy-based routing for the VIP and must include the subnet prefix.
gateway string ​podDisruptionBudget object ​
PodDisruptionBudget limits how many pods of an application can be voluntarily disrupted at once
to ensure availability during maintenance or scaling operations.
podDisruptionBudget object ​enabled boolean false ​
Enabled defines if the pod disruption budget should be enabled.
enabled boolean false ​minAvailable object ​
MinAvailable describes the minimal number or percentage of available pods.
minAvailable object ​maxUnavailable object ​
MaxUnavailable describes the minimal number or percentage of unavailable pods.
maxUnavailable object ​unhealthyPodEvictionPolicy string ​
UnhealthyPodEvictionPolicy defines the criteria when unhealthy pods should be considered for eviction.
Currently supported values are:
- IfHealthyBudget - pods that are in the Running phase but not yet healthy are considered disrupted
and may be evicted even if the PodDisruptionBudget criteria are not met.
- AlwaysAllow - pods that are in the Running phase but not yet healthy are considered disrupted
and can be evicted regardless of whether the criteria in a PDB is met.
unhealthyPodEvictionPolicy string ​