Sync to host from virtual
Read more about how syncing works before deciding which resources to sync from the virtual cluster to the host cluster.
vCluster syncs specific Kubernetes resources from the virtual cluster to the host cluster. These resources are expected to be created and updated within the virtual cluster. In addition to standard Kubernetes resources, custom resources can also be synced if configured.
Enabled by default​
The following resources are synced by default.
Disabled by default​
The following resources are not synced by default. You can explicitly enable them in your vcluster.yaml
configuration.
- CustomResources
- Ingresses
- NetworkPolicies
- PersistentVolumes
- VolumeSnapshots
- StorageClasses
- ServiceAccounts
- PodDisruptionBudgets
- PriorityClasses
- Custom Resources
- Namespaces
Bidirectional syncing​
For all resources synced from the virtual cluster to the host cluster, metadata.labels
and metadata.annotations
are synchronized in both directions.
This means changes made in the virtual cluster are reflected in the host cluster, and changes made in the host cluster are also reflected in the virtual cluster.
Any labels prefixed with vcluster.loft.sh
on the host resources should not be updated by the user. These labels are managed by the vCluster control plane to track resources and prevent conflicts.
Additional fields that support bidirectional sync​
All metadata.labels
and metadata.annotations
are bidirectionally synced for resources synced from the virtual cluster to the host cluster.
In addition to these fields, vCluster also supports bidirectional syncing for the following resource-specific fields:
Resource | Fields |
---|---|
Pods |
|
Secrets |
|
ConfigMaps |
|
Services |
|
Ingresses |
|
PersistentVolumes |
|
StorageClass |
|
Config reference​
toHost
required object ​
Configure resources to sync from the virtual cluster to the host cluster.
toHost
required object ​pods
required object ​
Pods defines if pods created within the virtual cluster should get synced to the host cluster.
pods
required object ​enabled
required boolean true ​
Enabled defines if pod syncing should be enabled.
enabled
required boolean true ​translateImage
required object {} ​
TranslateImage maps an image to another image that should be used instead. For example this can be used to rewrite
a certain image that is used within the virtual cluster to be another image on the host cluster
translateImage
required object {} ​enforceTolerations
required string[] [] ​
EnforceTolerations will add the specified tolerations to all pods synced by the virtual cluster.
enforceTolerations
required string[] [] ​useSecretsForSATokens
required boolean false ​
UseSecretsForSATokens will use secrets to save the generated service account tokens by virtual cluster instead of using a
pod annotation.
useSecretsForSATokens
required boolean false ​runtimeClassName
required string ​
RuntimeClassName is the runtime class to set for synced pods.
runtimeClassName
required string ​priorityClassName
required string ​
PriorityClassName is the priority class to set for synced pods.
priorityClassName
required string ​rewriteHosts
required object ​
RewriteHosts is a special option needed to rewrite statefulset containers to allow the correct FQDN. virtual cluster will add
a small container to each stateful set pod that will initially rewrite the /etc/hosts file to match the FQDN expected by
the virtual cluster.
rewriteHosts
required object ​enabled
required boolean true ​
Enabled specifies if rewriting stateful set pods should be enabled.
enabled
required boolean true ​initContainer
required object ​
InitContainer holds extra options for the init container used by vCluster to rewrite the FQDN for stateful set pods.
initContainer
required object ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​hybridScheduling
required object ​
HybridScheduling is used to enable and configure hybrid scheduling for pods in the virtual cluster.
hybridScheduling
required object ​secrets
required object ​
Secrets defines if secrets created within the virtual cluster should get synced to the host cluster.
secrets
required object ​enabled
required boolean true ​
Enabled defines if this option should be enabled.
enabled
required boolean true ​all
required boolean false ​
All defines if all resources of that type should get synced or only the necessary ones that are needed.
all
required boolean false ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​configMaps
required object ​
ConfigMaps defines if config maps created within the virtual cluster should get synced to the host cluster.
configMaps
required object ​enabled
required boolean true ​
Enabled defines if this option should be enabled.
enabled
required boolean true ​all
required boolean false ​
All defines if all resources of that type should get synced or only the necessary ones that are needed.
all
required boolean false ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​ingresses
required object ​
Ingresses defines if ingresses created within the virtual cluster should get synced to the host cluster.
ingresses
required object ​enabled
required boolean false ​
Enabled defines if this option should be enabled.
enabled
required boolean false ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​services
required object ​
Services defines if services created within the virtual cluster should get synced to the host cluster.
services
required object ​enabled
required boolean true ​
Enabled defines if this option should be enabled.
enabled
required boolean true ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​endpoints
required object ​
Endpoints defines if endpoints created within the virtual cluster should get synced to the host cluster.
endpoints
required object ​enabled
required boolean true ​
Enabled defines if this option should be enabled.
enabled
required boolean true ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​networkPolicies
required object ​
NetworkPolicies defines if network policies created within the virtual cluster should get synced to the host cluster.
networkPolicies
required object ​enabled
required boolean false ​
Enabled defines if this option should be enabled.
enabled
required boolean false ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​persistentVolumeClaims
required object ​
PersistentVolumeClaims defines if persistent volume claims created within the virtual cluster should get synced to the host cluster.
persistentVolumeClaims
required object ​enabled
required boolean true ​
Enabled defines if this option should be enabled.
enabled
required boolean true ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​persistentVolumes
required object ​
PersistentVolumes defines if persistent volumes created within the virtual cluster should get synced to the host cluster.
persistentVolumes
required object ​enabled
required boolean false ​
Enabled defines if this option should be enabled.
enabled
required boolean false ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​volumeSnapshots
required object ​
VolumeSnapshots defines if volume snapshots created within the virtual cluster should get synced to the host cluster.
volumeSnapshots
required object ​enabled
required boolean false ​
Enabled defines if this option should be enabled.
enabled
required boolean false ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​volumeSnapshotContents
required object ​
VolumeSnapshotContents defines if volume snapshot contents created within the virtual cluster should get synced to the host cluster.
volumeSnapshotContents
required object ​enabled
required boolean false ​
Enabled defines if this option should be enabled.
enabled
required boolean false ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​storageClasses
required object ​
StorageClasses defines if storage classes created within the virtual cluster should get synced to the host cluster.
storageClasses
required object ​enabled
required boolean false ​
Enabled defines if this option should be enabled.
enabled
required boolean false ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​serviceAccounts
required object ​
ServiceAccounts defines if service accounts created within the virtual cluster should get synced to the host cluster.
serviceAccounts
required object ​enabled
required boolean false ​
Enabled defines if this option should be enabled.
enabled
required boolean false ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​podDisruptionBudgets
required object ​
PodDisruptionBudgets defines if pod disruption budgets created within the virtual cluster should get synced to the host cluster.
podDisruptionBudgets
required object ​enabled
required boolean false ​
Enabled defines if this option should be enabled.
enabled
required boolean false ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​priorityClasses
required object ​
PriorityClasses defines if priority classes created within the virtual cluster should get synced to the host cluster.
priorityClasses
required object ​enabled
required boolean false ​
Enabled defines if this option should be enabled.
enabled
required boolean false ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​customResources
required {key: object} ​
CustomResources defines what custom resources should get synced from the virtual cluster to the host cluster. vCluster will copy the definition automatically from host cluster to virtual cluster on startup.
vCluster will also automatically add any required RBAC permissions to the vCluster role for this to work.
customResources
required {key: object} ​enabled
required boolean ​
Enabled defines if this option should be enabled.
enabled
required boolean ​scope
required string ​
Scope defines the scope of the resource. If undefined, will use Namespaced. Currently only Namespaced is supported.
scope
required string ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​namespaces
required object ​
Namespaces defines if namespaces created within the virtual cluster should get synced to the host cluster.
namespaces
required object ​enabled
required boolean false ​
Enabled defines if this option should be enabled.
enabled
required boolean false ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​mappings
required object ​
Mappings for Namespace and Object
mappings
required object ​byName
required object ​
ByName is a map of host-object-namespace/host-object-name: virtual-object-namespace/virtual-object-name.
There are several wildcards supported:
- To match all objects in host namespace and sync them to different namespace in vCluster:
byName:
"foo/": "foo-in-virtual/"
- To match specific object in the host namespace and sync it to the same namespace with the same name:
byName:
"foo/my-object": "foo/my-object"
- To match specific object in the host namespace and sync it to the same namespace with different name:
byName:
"foo/my-object": "foo/my-virtual-object"
- To match all objects in the vCluster host namespace and sync them to a different namespace in vCluster:
byName:
"": "my-virtual-namespace/*"
- To match specific objects in the vCluster host namespace and sync them to a different namespace in vCluster:
byName:
"/my-object": "my-virtual-namespace/my-object"
byName
required object ​mappingsOnly
required boolean false ​
MappingsOnly defines if creation of namespaces not matched by mappings should be allowed.
mappingsOnly
required boolean false ​extraLabels
required object ​
ExtraLabels are additional labels to add to the namespace in the host cluster.
extraLabels
required object ​