Type RancherKubernetesEngineConfig
File match cluster.json
Schema URL https://catalog.lintel.tools/schemas/schemastore/rke-cluster-configuration-json/latest.json
Source https://raw.githubusercontent.com/dcermak/vscode-rke-cluster-config/main/schemas/cluster.json

Validate with Lintel

npx @lintel/lintel check
Type: RancherKubernetesEngineConfig

Definitions

AESConfiguration object
keys Key[] required
AWSCloudProvider object
global object required
10 nested properties
zone string required

TODO: Is there any use for this? We can get it from the instance metadata service Maybe if we're not running on AWS, e.g. bootstrap; for now it is not very useful

vpc string required

The AWS VPC flag enables the possibility to run the master components on a different aws account, on a different cloud provider or on-premises. If the flag is set also the KubernetesClusterTag must be provided

subnet-id string required

SubnetID enables using a specific subnet to use for ELB's

routetable-id string required

RouteTableID enables using a specific RouteTable

role-arn string required

RoleARN is the IAM role to assume when interaction with AWS APIs.

kubernetes-cluster-tag string required

KubernetesClusterTag is the legacy cluster id we'll use to identify our cluster resources

kubernetes-cluster-id string required

KubernetesClusterID is the cluster id we'll use to identify our cluster resources

disable-security-group-ingress boolean required

The aws provider creates an inbound rule per load balancer on the node security group. However, this can run into the AWS security group rule limit of 50 if many LoadBalancers are created.

This flag disables the automatic ingress creation. It requires that the user has setup a rule that allows inbound traffic on kubelet ports from the local VPC subnet (so load balancers can access it). E.g. 10.82.0.0/16 30000-32000.

elb-security-group string required

AWS has a hard limit of 500 security groups. For large clusters creating a security group for each ELB can cause the max number of security groups to be reached. If this is set instead of creating a new Security group for each ELB this security group will be used instead.

disable-strict-zone-check boolean required

During the instantiation of an new AWS cloud provider, the detected region is validated against a known set of regions.

In a non-standard, AWS like environment (e.g. Eucalyptus), this check may be undesirable. Setting this to true will disable the check and provide a warning that the check was skipped. Please note that this is an experimental feature and work-in-progress for the moment. If you find yourself in an non-AWS cloud and open an issue, please indicate that in the issue body.

serviceOverride object
AWSElasticBlockStoreVolumeSource object
volumeID string required
fsType string
partition integer
readOnly boolean
AciNetworkProvider object
systemId string
apicHosts string[]
token string
apicUserName string
apicUserKey string
apicUserCrt string
apicRefreshTime string
vmmDomain string
vmmController string
encapType string
nodeSubnet string
mcastRangeStart string
mcastRangeEnd string
aep string
vrfName string
vrfTenant string
l3out string
l3outExternalNetworks string[]
externDynamic string
externStatic string
nodeSvcSubnet string
kubeApiVlan string
serviceVlan string
infraVlan string
tenant string
ovsMemoryLimit string
imagePullPolicy string
imagePullSecret string
serviceMonitorInterval string
pbrTrackingNonSnat string
installIstio string
istioProfile string
dropLogEnable string
controllerLogLevel string
hostAgentLogLevel string
opflexLogLevel string
useAciCniPriorityClass string
noPriorityClass string
maxNodesSvcGraph string
snatContractScope string
podSubnetChunkSize string
enableEndpointSlice string
snatNamespace string
epRegistry string
opflexMode string
snatPortRangeStart string | number
snatPortRangeEnd string | number
snatPortsPerNode string | number
opflexClientSsl string
usePrivilegedContainer string
useHostNetnsVolume string
useOpflexServerVolume string
subnetDomainName string
kafkaBrokers string[]
kafkaClientCrt string
kafkaClientKey string
capic string
useAciAnywhereCrd string
overlayVrfName string
gbpPodSubnet string
runGbpContainer string
runOpflexServerContainer string
opflexServerPort string | number
AdmissionConfiguration object
TypeMeta object required
2 nested properties
kind string
apiVersion string
AdmissionPluginConfiguration object
name string required
path string required
configuration object required
4 nested properties
TypeMeta object required
2 nested properties
kind string
apiVersion string
Raw string required
ContentEncoding string required
ContentType string required
AuditLog object
enabled boolean
configuration object
6 nested properties
maxAge integer
maxBackup integer
maxSize integer
path string
format string
policy object
4 nested properties
TypeMeta object required
rules PolicyRule[] required
metadata object
omitStages string[]
AuditLogConfig object
maxAge integer
maxBackup integer
maxSize integer
path string
format string
policy object
4 nested properties
TypeMeta object required
2 nested properties
kind string
apiVersion string
rules PolicyRule[] required
metadata object
16 nested properties
name string
generateName string
namespace string
selfLink string
uid string
resourceVersion string
generation integer
creationTimestamp object
deletionTimestamp string
format=date-time
deletionGracePeriodSeconds integer
labels object
annotations object
ownerReferences OwnerReference[]
finalizers string[]
clusterName string
managedFields ManagedFieldsEntry[]
omitStages string[]
AuthWebhookConfig object
configFile string

ConfigFile is a multiline string that represent a custom webhook config file

cacheTimeout string

CacheTimeout controls how long to cache authentication decisions

AuthnConfig object
strategy string

Authentication strategy that will be used in kubernetes cluster

sans string[]

List of additional hostnames and IPs to include in the api server PKI cert

webhook object
2 nested properties
configFile string

ConfigFile is a multiline string that represent a custom webhook config file

cacheTimeout string

CacheTimeout controls how long to cache authentication decisions

AuthzConfig object
mode string

Authorization mode used by kubernetes

options object

Authorization mode options

AzureCloudProvider object
tenantId string required

The AAD Tenant ID for the Subscription that the cluster is deployed in

subscriptionId string required

The ID of the Azure Subscription that the cluster is deployed in

resourceGroup string required

The name of the resource group that the cluster is deployed in

location string required

The location of the resource group that the cluster is deployed in

vnetName string required

The name of the VNet that the cluster is deployed in

vnetResourceGroup string required

The name of the resource group that the Vnet is deployed in

subnetName string required

The name of the subnet that the cluster is deployed in

securityGroupName string required

The name of the security group attached to the cluster's subnet

routeTableName string required

(Optional in 1.6) The name of the route table attached to the subnet that the cluster is deployed in

primaryAvailabilitySetName string required

(Optional) The name of the availability set that should be used as the load balancer backend If this is set, the Azure cloudprovider will only add nodes from that availability set to the load balancer backend pool. If this is not set, and multiple agent pools (availability sets) are used, then the cloudprovider will try to add all nodes to a single backend pool which is forbidden. In other words, if you use multiple agent pools (availability sets), you MUST set this field.

vmType string required

The type of azure nodes. Candidate valudes are: vmss and standard. If not set, it will be default to standard.

primaryScaleSetName string required

The name of the scale set that should be used as the load balancer backend. If this is set, the Azure cloudprovider will only add nodes from that scale set to the load balancer backend pool. If this is not set, and multiple agent pools (scale sets) are used, then the cloudprovider will try to add all nodes to a single backend pool which is forbidden. In other words, if you use multiple agent pools (scale sets), you MUST set this field.

aadClientId string required

The ClientID for an AAD application with RBAC access to talk to Azure RM APIs This's used for service principal authentication: https://github.com/Azure/aks-engine/blob/master/docs/topics/service-principals.md

aadClientSecret string required

The ClientSecret for an AAD application with RBAC access to talk to Azure RM APIs This's used for service principal authentication: https://github.com/Azure/aks-engine/blob/master/docs/topics/service-principals.md

aadClientCertPath string required

The path of a client certificate for an AAD application with RBAC access to talk to Azure RM APIs This's used for client certificate authentication: https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-protocols-oauth-service-to-service

aadClientCertPassword string required

The password of the client certificate for an AAD application with RBAC access to talk to Azure RM APIs This's used for client certificate authentication: https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-protocols-oauth-service-to-service

cloudProviderBackoff boolean required

Enable exponential backoff to manage resource request retries

cloudProviderBackoffRetries integer required

Backoff retry limit

cloudProviderBackoffExponent integer required

Backoff exponent

cloudProviderBackoffDuration integer required

Backoff duration

cloudProviderBackoffJitter integer required

Backoff jitter

cloudProviderRateLimit boolean required

Enable rate limiting

cloudProviderRateLimitQPS integer required

Rate limit QPS

cloudProviderRateLimitBucket integer required

Rate limit Bucket Size

useInstanceMetadata boolean required

Use instance metadata service where possible

useManagedIdentityExtension boolean required

Use managed service identity for the virtual machine to access Azure ARM APIs This's used for managed identity authentication: https://docs.microsoft.com/en-us/azure/active-directory/managed-service-identity/overview For user-assigned managed identity, need to set the below UserAssignedIdentityID

maximumLoadBalancerRuleCount integer required

Maximum allowed LoadBalancer Rule Count is the limit enforced by Azure Load balancer, default(0) to 148

userAssignedIdentityID string

The Client ID of the user assigned MSI which is assigned to the underlying VMs This's used for managed identity authentication: https://docs.microsoft.com/en-us/azure/active-directory/managed-service-identity/overview

loadBalancerSku string

Sku of Load Balancer and Public IP: basic or standard, default(blank) to basic

excludeMasterFromStandardLB boolean

Excludes master nodes (labeled with node-role.kubernetes.io/master) from the backend pool of Azure standard loadbalancer, default(nil) to true If want adding the master nodes to ALB, this should be set to false and remove the node-role.kubernetes.io/master label from master nodes

AzureDiskVolumeSource object
diskName string required
diskURI string required
cachingMode string
fsType string
readOnly boolean
kind string
AzureFileVolumeSource object
secretName string required
shareName string required
readOnly boolean
BackupConfig object
s3BackupConfig object required
7 nested properties
endpoint string required
accessKey string
secretKey string
bucketName string
region string
customCa string
folder string
enabled boolean
intervalHours integer
retention integer
safeTimestamp boolean
timeout integer
BastionHost object
address string

Address of Bastion Host

port string | number

SSH Port of Bastion Host

user string

ssh User to Bastion Host

sshAgentAuth boolean

SSH Agent Auth enable

sshKey string

SSH Private Key

sshKeyPath string

SSH Private Key Path

sshCert string

SSH Certificate

sshCertPath string

SSH Certificate Path

ignoreProxyEnvVars boolean

Ignore proxy environment variables

BlockStorageOpenstackOpts object
bs-version string required

overrides autodetection. v1 or v2. Defaults to auto

trust-device-path boolean required

See Issue #33128

ignore-volume-az boolean required
CSIVolumeSource object
driver string required
readOnly boolean
fsType string
volumeAttributes object
nodePublishSecretRef object
1 nested properties
name string
CalicoNetworkProvider object
cloudProvider string required

Cloud provider type used with calico

CanalNetworkProvider object
iface string required
CephFSVolumeSource object
monitors string[] required
path string
user string
secretFile string
secretRef object
1 nested properties
name string
readOnly boolean
CinderVolumeSource object
volumeID string required
fsType string
readOnly boolean
secretRef object
1 nested properties
name string
CloudProvider object
name string

Name of the Cloud Provider

awsCloudProvider object
2 nested properties
global object required
10 nested properties
zone string required

TODO: Is there any use for this? We can get it from the instance metadata service Maybe if we're not running on AWS, e.g. bootstrap; for now it is not very useful

vpc string required

The AWS VPC flag enables the possibility to run the master components on a different aws account, on a different cloud provider or on-premises. If the flag is set also the KubernetesClusterTag must be provided

subnet-id string required

SubnetID enables using a specific subnet to use for ELB's

routetable-id string required

RouteTableID enables using a specific RouteTable

role-arn string required

RoleARN is the IAM role to assume when interaction with AWS APIs.

kubernetes-cluster-tag string required

KubernetesClusterTag is the legacy cluster id we'll use to identify our cluster resources

kubernetes-cluster-id string required

KubernetesClusterID is the cluster id we'll use to identify our cluster resources

disable-security-group-ingress boolean required

The aws provider creates an inbound rule per load balancer on the node security group. However, this can run into the AWS security group rule limit of 50 if many LoadBalancers are created.

This flag disables the automatic ingress creation. It requires that the user has setup a rule that allows inbound traffic on kubelet ports from the local VPC subnet (so load balancers can access it). E.g. 10.82.0.0/16 30000-32000.

elb-security-group string required

AWS has a hard limit of 500 security groups. For large clusters creating a security group for each ELB can cause the max number of security groups to be reached. If this is set instead of creating a new Security group for each ELB this security group will be used instead.

disable-strict-zone-check boolean required

During the instantiation of an new AWS cloud provider, the detected region is validated against a known set of regions.

In a non-standard, AWS like environment (e.g. Eucalyptus), this check may be undesirable. Setting this to true will disable the check and provide a warning that the check was skipped. Please note that this is an experimental feature and work-in-progress for the moment. If you find yourself in an non-AWS cloud and open an issue, please indicate that in the issue body.

serviceOverride object
azureCloudProvider object
31 nested properties
tenantId string required

The AAD Tenant ID for the Subscription that the cluster is deployed in

subscriptionId string required

The ID of the Azure Subscription that the cluster is deployed in

resourceGroup string required

The name of the resource group that the cluster is deployed in

location string required

The location of the resource group that the cluster is deployed in

vnetName string required

The name of the VNet that the cluster is deployed in

vnetResourceGroup string required

The name of the resource group that the Vnet is deployed in

subnetName string required

The name of the subnet that the cluster is deployed in

securityGroupName string required

The name of the security group attached to the cluster's subnet

routeTableName string required

(Optional in 1.6) The name of the route table attached to the subnet that the cluster is deployed in

primaryAvailabilitySetName string required

(Optional) The name of the availability set that should be used as the load balancer backend If this is set, the Azure cloudprovider will only add nodes from that availability set to the load balancer backend pool. If this is not set, and multiple agent pools (availability sets) are used, then the cloudprovider will try to add all nodes to a single backend pool which is forbidden. In other words, if you use multiple agent pools (availability sets), you MUST set this field.

vmType string required

The type of azure nodes. Candidate valudes are: vmss and standard. If not set, it will be default to standard.

primaryScaleSetName string required

The name of the scale set that should be used as the load balancer backend. If this is set, the Azure cloudprovider will only add nodes from that scale set to the load balancer backend pool. If this is not set, and multiple agent pools (scale sets) are used, then the cloudprovider will try to add all nodes to a single backend pool which is forbidden. In other words, if you use multiple agent pools (scale sets), you MUST set this field.

aadClientId string required

The ClientID for an AAD application with RBAC access to talk to Azure RM APIs This's used for service principal authentication: https://github.com/Azure/aks-engine/blob/master/docs/topics/service-principals.md

aadClientSecret string required

The ClientSecret for an AAD application with RBAC access to talk to Azure RM APIs This's used for service principal authentication: https://github.com/Azure/aks-engine/blob/master/docs/topics/service-principals.md

aadClientCertPath string required

The path of a client certificate for an AAD application with RBAC access to talk to Azure RM APIs This's used for client certificate authentication: https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-protocols-oauth-service-to-service

aadClientCertPassword string required

The password of the client certificate for an AAD application with RBAC access to talk to Azure RM APIs This's used for client certificate authentication: https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-protocols-oauth-service-to-service

cloudProviderBackoff boolean required

Enable exponential backoff to manage resource request retries

cloudProviderBackoffRetries integer required

Backoff retry limit

cloudProviderBackoffExponent integer required

Backoff exponent

cloudProviderBackoffDuration integer required

Backoff duration

cloudProviderBackoffJitter integer required

Backoff jitter

cloudProviderRateLimit boolean required

Enable rate limiting

cloudProviderRateLimitQPS integer required

Rate limit QPS

cloudProviderRateLimitBucket integer required

Rate limit Bucket Size

useInstanceMetadata boolean required

Use instance metadata service where possible

useManagedIdentityExtension boolean required

Use managed service identity for the virtual machine to access Azure ARM APIs This's used for managed identity authentication: https://docs.microsoft.com/en-us/azure/active-directory/managed-service-identity/overview For user-assigned managed identity, need to set the below UserAssignedIdentityID

maximumLoadBalancerRuleCount integer required

Maximum allowed LoadBalancer Rule Count is the limit enforced by Azure Load balancer, default(0) to 148

userAssignedIdentityID string

The Client ID of the user assigned MSI which is assigned to the underlying VMs This's used for managed identity authentication: https://docs.microsoft.com/en-us/azure/active-directory/managed-service-identity/overview

loadBalancerSku string

Sku of Load Balancer and Public IP: basic or standard, default(blank) to basic

excludeMasterFromStandardLB boolean

Excludes master nodes (labeled with node-role.kubernetes.io/master) from the backend pool of Azure standard loadbalancer, default(nil) to true If want adding the master nodes to ALB, this should be set to false and remove the node-role.kubernetes.io/master label from master nodes

openstackCloudProvider object
5 nested properties
global object required
11 nested properties
auth-url string required
username string required
user-id string required
password string required
tenant-id string required
tenant-name string required
trust-id string required
domain-id string required
domain-name string required
region string required
ca-file string required
loadBalancer object required
11 nested properties
lb-version string required

overrides autodetection. Only support v2.

use-octavia boolean required

uses Octavia V2 service catalog endpoint

subnet-id string required

overrides autodetection.

floating-network-id string required

If specified, will create floating ip for loadbalancer, or do not create floating ip.

lb-method string required

default to ROUND_ROBIN.

lb-provider string required
create-monitor boolean required
monitor-delay string required
monitor-timeout string required
monitor-max-retries integer required
manage-security-groups boolean required
blockStorage object required
3 nested properties
bs-version string required

overrides autodetection. v1 or v2. Defaults to auto

trust-device-path boolean required

See Issue #33128

ignore-volume-az boolean required
route object required
1 nested properties
router-id string required

required

metadata object required
2 nested properties
search-order string required
request-timeout integer required
vsphereCloudProvider object
5 nested properties
global object
12 nested properties
user string
password string
server string
port string | number
insecure-flag boolean
datacenter string
datacenters string
datastore string
working-dir string
soap-roundtrip-count integer
vm-uuid string
vm-name string
virtualCenter object
network object
1 nested properties
public-network string
disk object
1 nested properties
scsicontrollertype string
workspace object
5 nested properties
server string
datacenter string
folder string
default-datastore string
resourcepool-path string
customCloudProvider string

CustomCloudProvider is a multiline string that represent a custom cloud config file

ConfigMapKeySelector object
LocalObjectReference object required
1 nested properties
name string
key string required
optional boolean
ConfigMapProjection object
LocalObjectReference object required
1 nested properties
name string
items KeyToPath[]
optional boolean
ConfigMapVolumeSource object
LocalObjectReference object required
1 nested properties
name string
items KeyToPath[]
defaultMode integer
optional boolean
Configuration object
TypeMeta object required
2 nested properties
kind string
apiVersion string
limits Limit[] required
DNSConfig object
provider string

DNS provider

options object

DNS config options

upstreamnameservers string[]

Upstream nameservers

reversecidrs string[]

ReverseCIDRs

stubdomains object

Stubdomains

nodeSelector object

NodeSelector key pair

nodelocal object
4 nested properties
ipAddress string

link-local IP for nodelocal DNS

updateStrategy object
2 nested properties
strategy string
rollingUpdate object
nodeSelector object

NodeSelector key pair

nodeLocalDnsPriorityClassName string

Priority class name for NodeLocal's "node-local-dns" daemonset

updateStrategy object
2 nested properties
strategy string
rollingUpdate object
2 nested properties
maxUnavailable object
maxSurge object
linearAutoscalerParams object
5 nested properties
coresPerReplica number
nodesPerReplica number
min integer
max integer
preventSinglePointFailure boolean
tolerations Toleration[]

Tolerations for Deployments

DaemonSetUpdateStrategy object
strategy string
rollingUpdate object
2 nested properties
maxUnavailable object
3 nested properties
Type integer required
IntVal integer required
StrVal string required
maxSurge object
3 nested properties
Type integer required
IntVal integer required
StrVal string required
DeploymentStrategy object
strategy string
rollingUpdate object
2 nested properties
maxUnavailable object
3 nested properties
Type integer required
IntVal integer required
StrVal string required
maxSurge object
3 nested properties
Type integer required
IntVal integer required
StrVal string required
DiskVsphereOpts object
scsicontrollertype string
DownwardAPIProjection object
DownwardAPIVolumeFile object
path string required
fieldRef object
2 nested properties
fieldPath string required
apiVersion string
resourceFieldRef object
3 nested properties
resource string required
containerName string
divisor object
mode integer
DownwardAPIVolumeSource object
defaultMode integer
Duration object
ECRCredentialPlugin object
awsAccessKeyId string
awsSecretAccessKey string
awsAccessToken string
ETCDService object
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
externalUrls string[]

List of etcd urls

caCert string

External CA certificate

cert string

External Client certificate

key string

External Client key

path string

External etcd prefix

uid integer

UID to run etcd container as

gid integer

GID to run etcd container as

snapshot boolean

Etcd Recurring snapshot Service, used by rke only

retention string

Etcd snapshot Retention period

creation string

Etcd snapshot Creation period

backupConfig object
6 nested properties
s3BackupConfig object required
7 nested properties
endpoint string required
accessKey string
secretKey string
bucketName string
region string
customCa string
folder string
enabled boolean
intervalHours integer
retention integer
safeTimestamp boolean
timeout integer
EmptyDirVolumeSource object
medium string
sizeLimit object
EncryptionConfiguration object
resources ResourceConfiguration[] required
kind string
apiVersion string
EnvVarSource object
fieldRef object
2 nested properties
fieldPath string required
apiVersion string
resourceFieldRef object
3 nested properties
resource string required
containerName string
divisor object
configMapKeyRef object
3 nested properties
LocalObjectReference object required
1 nested properties
name string
key string required
optional boolean
secretKeyRef object
3 nested properties
LocalObjectReference object required
1 nested properties
name string
key string required
optional boolean
EphemeralVolumeSource object
volumeClaimTemplate object
2 nested properties
spec object required
7 nested properties
accessModes string[]
selector object
resources object
volumeName string
storageClassName string
volumeMode string
dataSource object
metadata object
16 nested properties
name string
generateName string
namespace string
selfLink string
uid string
resourceVersion string
generation integer
creationTimestamp object
deletionTimestamp string
format=date-time
deletionGracePeriodSeconds integer
labels object
annotations object
ownerReferences OwnerReference[]
finalizers string[]
clusterName string
managedFields ManagedFieldsEntry[]
EventRateLimit object
enabled boolean
configuration object
2 nested properties
TypeMeta object required
2 nested properties
kind string
apiVersion string
limits Limit[] required
ExtraEnv object
name string required
value string
valueFrom object
4 nested properties
fieldRef object
2 nested properties
fieldPath string required
apiVersion string
resourceFieldRef object
3 nested properties
resource string required
containerName string
divisor object
configMapKeyRef object
3 nested properties
LocalObjectReference object required
key string required
optional boolean
secretKeyRef object
3 nested properties
LocalObjectReference object required
key string required
optional boolean
ExtraVolume object
name string required
VolumeSource object required
29 nested properties
hostPath object
2 nested properties
path string required
type string
emptyDir object
2 nested properties
medium string
sizeLimit object
gcePersistentDisk object
4 nested properties
pdName string required
fsType string
partition integer
readOnly boolean
awsElasticBlockStore object
4 nested properties
volumeID string required
fsType string
partition integer
readOnly boolean
gitRepo object
3 nested properties
repository string required
revision string
directory string
secret object
4 nested properties
secretName string
items KeyToPath[]
defaultMode integer
optional boolean
nfs object
3 nested properties
server string required
path string required
readOnly boolean
iscsi object
11 nested properties
targetPortal string required
iqn string required
lun integer required
iscsiInterface string
fsType string
readOnly boolean
portals string[]
chapAuthDiscovery boolean
chapAuthSession boolean
secretRef object
initiatorName string
glusterfs object
3 nested properties
endpoints string required
path string required
readOnly boolean
persistentVolumeClaim object
2 nested properties
claimName string required
readOnly boolean
rbd object
8 nested properties
monitors string[] required
image string required
fsType string
pool string
user string
keyring string
secretRef object
readOnly boolean
flexVolume object
5 nested properties
driver string required
fsType string
secretRef object
readOnly boolean
options object
cinder object
4 nested properties
volumeID string required
fsType string
readOnly boolean
secretRef object
cephfs object
6 nested properties
monitors string[] required
path string
user string
secretFile string
secretRef object
readOnly boolean
flocker object
2 nested properties
datasetName string
datasetUUID string
downwardAPI object
2 nested properties
defaultMode integer
fc object
5 nested properties
targetWWNs string[]
lun integer
fsType string
readOnly boolean
wwids string[]
azureFile object
3 nested properties
secretName string required
shareName string required
readOnly boolean
configMap object
4 nested properties
LocalObjectReference object required
items KeyToPath[]
defaultMode integer
optional boolean
vsphereVolume object
4 nested properties
volumePath string required
fsType string
storagePolicyName string
storagePolicyID string
quobyte object
6 nested properties
registry string required
volume string required
readOnly boolean
user string
group string
tenant string
azureDisk object
6 nested properties
diskName string required
diskURI string required
cachingMode string
fsType string
readOnly boolean
kind string
photonPersistentDisk object
2 nested properties
pdID string required
fsType string
projected object
2 nested properties
sources VolumeProjection[] required
defaultMode integer
portworxVolume object
3 nested properties
volumeID string required
fsType string
readOnly boolean
scaleIO object
10 nested properties
gateway string required
system string required
secretRef object required
sslEnabled boolean
protectionDomain string
storagePool string
storageMode string
volumeName string
fsType string
readOnly boolean
storageos object
5 nested properties
volumeName string
volumeNamespace string
fsType string
readOnly boolean
secretRef object
csi object
5 nested properties
driver string required
readOnly boolean
fsType string
volumeAttributes object
nodePublishSecretRef object
ephemeral object
1 nested properties
volumeClaimTemplate object
ExtraVolumeMount object
name string required
mountPath string required
readOnly boolean
subPath string
mountPropagation string
subPathExpr string
FCVolumeSource object
targetWWNs string[]
lun integer
fsType string
readOnly boolean
wwids string[]
FieldsV1 object
FlannelNetworkProvider object
iface string required

Alternate cloud interface for flannel

FlexVolumeSource object
driver string required
fsType string
secretRef object
1 nested properties
name string
readOnly boolean
options object
FlockerVolumeSource object
datasetName string
datasetUUID string
GCEPersistentDiskVolumeSource object
pdName string required
fsType string
partition integer
readOnly boolean
GitRepoVolumeSource object
repository string required
revision string
directory string
GlobalAwsOpts object
zone string required

TODO: Is there any use for this? We can get it from the instance metadata service Maybe if we're not running on AWS, e.g. bootstrap; for now it is not very useful

vpc string required

The AWS VPC flag enables the possibility to run the master components on a different aws account, on a different cloud provider or on-premises. If the flag is set also the KubernetesClusterTag must be provided

subnet-id string required

SubnetID enables using a specific subnet to use for ELB's

routetable-id string required

RouteTableID enables using a specific RouteTable

role-arn string required

RoleARN is the IAM role to assume when interaction with AWS APIs.

kubernetes-cluster-tag string required

KubernetesClusterTag is the legacy cluster id we'll use to identify our cluster resources

kubernetes-cluster-id string required

KubernetesClusterID is the cluster id we'll use to identify our cluster resources

disable-security-group-ingress boolean required

The aws provider creates an inbound rule per load balancer on the node security group. However, this can run into the AWS security group rule limit of 50 if many LoadBalancers are created.

This flag disables the automatic ingress creation. It requires that the user has setup a rule that allows inbound traffic on kubelet ports from the local VPC subnet (so load balancers can access it). E.g. 10.82.0.0/16 30000-32000.

elb-security-group string required

AWS has a hard limit of 500 security groups. For large clusters creating a security group for each ELB can cause the max number of security groups to be reached. If this is set instead of creating a new Security group for each ELB this security group will be used instead.

disable-strict-zone-check boolean required

During the instantiation of an new AWS cloud provider, the detected region is validated against a known set of regions.

In a non-standard, AWS like environment (e.g. Eucalyptus), this check may be undesirable. Setting this to true will disable the check and provide a warning that the check was skipped. Please note that this is an experimental feature and work-in-progress for the moment. If you find yourself in an non-AWS cloud and open an issue, please indicate that in the issue body.

GlobalOpenstackOpts object
auth-url string required
username string required
user-id string required
password string required
tenant-id string required
tenant-name string required
trust-id string required
domain-id string required
domain-name string required
region string required
ca-file string required
GlobalVsphereOpts object
user string
password string
server string
port string | number
insecure-flag boolean
datacenter string
datacenters string
datastore string
working-dir string
soap-roundtrip-count integer
vm-uuid string
vm-name string
GlusterfsVolumeSource object
endpoints string required
path string required
readOnly boolean
GroupResources object
group string
resources string[]
resourceNames string[]
HostPathVolumeSource object
path string required
type string
ISCSIVolumeSource object
targetPortal string required
iqn string required
lun integer required
iscsiInterface string
fsType string
readOnly boolean
portals string[]
chapAuthDiscovery boolean
chapAuthSession boolean
secretRef object
1 nested properties
name string
initiatorName string
IdentityConfiguration object
IngressConfig object
provider string

Ingress controller type used by kubernetes

options object

These options are NOT for configuring Ingress's addon template. They are used for its ConfigMap options specifically.

nodeSelector object

NodeSelector key pair

extraArgs object

Ingress controller extra arguments

dnsPolicy string

DNS Policy

extraEnvs ExtraEnv[]

Extra Env vars

extraVolumes ExtraVolume[]

Extra volumes

extraVolumeMounts ExtraVolumeMount[]

Extra volume mounts

updateStrategy object
2 nested properties
strategy string
rollingUpdate object
2 nested properties
maxUnavailable object
maxSurge object
httpPort string | number

Http port for ingress controller daemonset

httpsPort string | number

Https port for ingress controller daemonset

networkMode string

NetworkMode selector for ingress controller pods. Default is HostNetwork

tolerations Toleration[]

Tolerations for Deployments

defaultBackend boolean

Enable or disable nginx default-http-backend

defaultHttpBackendPriorityClassName string

Priority class name for Nginx-Ingress's "default-http-backend" deployment

nginxIngressControllerPriorityClassName string

Priority class name for Nginx-Ingress's "nginx-ingress-controller" daemonset

IntOrString object
Type integer required
IntVal integer required
StrVal string required
KMSConfiguration object
name string required
endpoint string required
cachesize integer
timeout object
Key object
name string required
secret string required
KeyToPath object
key string required
path string required
mode integer
KubeAPIService object
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
serviceClusterIpRange string

Virtual IP range that will be used by Kubernetes services

serviceNodePortRange string

Port range for services defined with NodePort type

podSecurityPolicy boolean

Enabled/Disable PodSecurityPolicy

alwaysPullImages boolean

Enable/Disable AlwaysPullImages admissions plugin

secretsEncryptionConfig object
2 nested properties
enabled boolean

Enable/disable secrets encryption provider config

customConfig object
3 nested properties
resources ResourceConfiguration[] required
kind string
apiVersion string
auditLog object
2 nested properties
enabled boolean
configuration object
6 nested properties
maxAge integer
maxBackup integer
maxSize integer
path string
format string
policy object
admissionConfiguration object
2 nested properties
TypeMeta object required
2 nested properties
kind string
apiVersion string
eventRateLimit object
2 nested properties
enabled boolean
configuration object
2 nested properties
TypeMeta object required
limits Limit[] required
KubeControllerService object
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
clusterCidr string

CIDR Range for Pods in cluster

serviceClusterIpRange string

Virtual IP range that will be used by Kubernetes services

KubeletService object
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
clusterDomain string

Domain of the cluster (default: "cluster.local")

infraContainerImage string

The image whose network/ipc namespaces containers in each pod will use

clusterDnsServer string

Cluster DNS service ip

failSwapOn boolean

Fail if swap is enabled

generateServingCertificate boolean

Generate per node kubelet serving certificates created using kube-ca

KubeproxyService object
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
LabelSelector object
matchLabels object
matchExpressions LabelSelectorRequirement[]
LabelSelectorRequirement object
key string required
operator string required
values string[]
Limit object
type string required
qps integer required
burst integer required
cacheSize integer
LinearAutoscalerParams object
coresPerReplica number
nodesPerReplica number
min integer
max integer
preventSinglePointFailure boolean
LoadBalancerOpenstackOpts object
lb-version string required

overrides autodetection. Only support v2.

use-octavia boolean required

uses Octavia V2 service catalog endpoint

subnet-id string required

overrides autodetection.

floating-network-id string required

If specified, will create floating ip for loadbalancer, or do not create floating ip.

lb-method string required

default to ROUND_ROBIN.

lb-provider string required
create-monitor boolean required
monitor-delay string required
monitor-timeout string required
monitor-max-retries integer required
manage-security-groups boolean required
LocalObjectReference object
name string
ManagedFieldsEntry object
manager string
operation string
apiVersion string
time string
format=date-time
fieldsType string
fieldsV1 object
MetadataOpenstackOpts object
search-order string required
request-timeout integer required
MonitoringConfig object
provider string

Monitoring server provider

options object

These options are NOT for configuring the Metrics-Server's addon template. They are used to pass command args to the metric-server's deployment containers specifically.

nodeSelector object

NodeSelector key pair

updateStrategy object
2 nested properties
strategy string
rollingUpdate object
2 nested properties
maxUnavailable object
maxSurge object
replicas integer

Number of monitoring addon pods

tolerations Toleration[]

Tolerations for Deployments

metricsServerPriorityClassName string

Priority class name for Metrics-Server's "metrics-server" deployment

NFSVolumeSource object
server string required
path string required
readOnly boolean
NetworkConfig object
plugin string

Network Plugin That will be used in kubernetes cluster

options object

Plugin options to configure network properties

mtu integer

Set MTU for CNI provider

calicoNetworkProvider object
1 nested properties
cloudProvider string required

Cloud provider type used with calico

canalNetworkProvider object
1 nested properties
iface string required
flannelNetworkProvider object
1 nested properties
iface string required

Alternate cloud interface for flannel

weaveNetworkProvider object
1 nested properties
password string
aciNetworkProvider object
63 nested properties
systemId string
apicHosts string[]
token string
apicUserName string
apicUserKey string
apicUserCrt string
apicRefreshTime string
vmmDomain string
vmmController string
encapType string
nodeSubnet string
mcastRangeStart string
mcastRangeEnd string
aep string
vrfName string
vrfTenant string
l3out string
l3outExternalNetworks string[]
externDynamic string
externStatic string
nodeSvcSubnet string
kubeApiVlan string
serviceVlan string
infraVlan string
tenant string
ovsMemoryLimit string
imagePullPolicy string
imagePullSecret string
serviceMonitorInterval string
pbrTrackingNonSnat string
installIstio string
istioProfile string
dropLogEnable string
controllerLogLevel string
hostAgentLogLevel string
opflexLogLevel string
useAciCniPriorityClass string
noPriorityClass string
maxNodesSvcGraph string
snatContractScope string
podSubnetChunkSize string
enableEndpointSlice string
snatNamespace string
epRegistry string
opflexMode string
snatPortRangeStart string | number
snatPortRangeEnd string | number
snatPortsPerNode string | number
opflexClientSsl string
usePrivilegedContainer string
useHostNetnsVolume string
useOpflexServerVolume string
subnetDomainName string
kafkaBrokers string[]
kafkaClientCrt string
kafkaClientKey string
capic string
useAciAnywhereCrd string
overlayVrfName string
gbpPodSubnet string
runGbpContainer string
runOpflexServerContainer string
opflexServerPort string | number
nodeSelector object

NodeSelector key pair

updateStrategy object
2 nested properties
strategy string
rollingUpdate object
2 nested properties
maxUnavailable object
maxSurge object
tolerations Toleration[]

Tolerations for Deployments

NetworkVshpereOpts object
public-network string
NodeDrainInput object
timeout integer required

Time to wait (in seconds) before giving up for one try

force boolean

Drain node even if there are pods not managed by a ReplicationController, Job, or DaemonSet Drain will not proceed without Force set to true if there are such pods

ignoreDaemonSets boolean

If there are DaemonSet-managed pods, drain will not proceed without IgnoreDaemonSets set to true (even when set to true, kubectl won't delete pods - so setting default to true)

deleteLocalData boolean

Continue even if there are pods using emptyDir

gracePeriod integer

Period of time in seconds given to each pod to terminate gracefully. If negative, the default value specified in the pod will be used

NodeUpgradeStrategy object
maxUnavailableWorker string

MaxUnavailableWorker input can be a number of nodes or a percentage of nodes (example, max_unavailable_worker: 2 OR max_unavailable_worker: 20%)

maxUnavailableControlplane string

MaxUnavailableControlplane input can be a number of nodes or a percentage of nodes

drain boolean
nodeDrainInput object
5 nested properties
timeout integer required

Time to wait (in seconds) before giving up for one try

force boolean

Drain node even if there are pods not managed by a ReplicationController, Job, or DaemonSet Drain will not proceed without Force set to true if there are such pods

ignoreDaemonSets boolean

If there are DaemonSet-managed pods, drain will not proceed without IgnoreDaemonSets set to true (even when set to true, kubectl won't delete pods - so setting default to true)

deleteLocalData boolean

Continue even if there are pods using emptyDir

gracePeriod integer

Period of time in seconds given to each pod to terminate gracefully. If negative, the default value specified in the pod will be used

Nodelocal object
ipAddress string

link-local IP for nodelocal DNS

updateStrategy object
2 nested properties
strategy string
rollingUpdate object
2 nested properties
maxUnavailable object
maxSurge object
nodeSelector object

NodeSelector key pair

nodeLocalDnsPriorityClassName string

Priority class name for NodeLocal's "node-local-dns" daemonset

ObjectFieldSelector object
fieldPath string required
apiVersion string
ObjectMeta object
name string
generateName string
namespace string
selfLink string
uid string
resourceVersion string
generation integer
creationTimestamp object
deletionTimestamp string
format=date-time
deletionGracePeriodSeconds integer
labels object
annotations object
ownerReferences OwnerReference[]
finalizers string[]
clusterName string
managedFields ManagedFieldsEntry[]
OpenstackCloudProvider object
global object required
11 nested properties
auth-url string required
username string required
user-id string required
password string required
tenant-id string required
tenant-name string required
trust-id string required
domain-id string required
domain-name string required
region string required
ca-file string required
loadBalancer object required
11 nested properties
lb-version string required

overrides autodetection. Only support v2.

use-octavia boolean required

uses Octavia V2 service catalog endpoint

subnet-id string required

overrides autodetection.

floating-network-id string required

If specified, will create floating ip for loadbalancer, or do not create floating ip.

lb-method string required

default to ROUND_ROBIN.

lb-provider string required
create-monitor boolean required
monitor-delay string required
monitor-timeout string required
monitor-max-retries integer required
manage-security-groups boolean required
blockStorage object required
3 nested properties
bs-version string required

overrides autodetection. v1 or v2. Defaults to auto

trust-device-path boolean required

See Issue #33128

ignore-volume-az boolean required
route object required
1 nested properties
router-id string required

required

metadata object required
2 nested properties
search-order string required
request-timeout integer required
OwnerReference object
apiVersion string required
kind string required
name string required
uid string required
controller boolean
blockOwnerDeletion boolean
PersistentVolumeClaimSpec object
accessModes string[]
selector object
2 nested properties
matchLabels object
matchExpressions LabelSelectorRequirement[]
resources object
2 nested properties
limits object
requests object
volumeName string
storageClassName string
volumeMode string
dataSource object
3 nested properties
apiGroup string required
kind string required
name string required
PersistentVolumeClaimTemplate object
spec object required
7 nested properties
accessModes string[]
selector object
2 nested properties
matchLabels object
matchExpressions LabelSelectorRequirement[]
resources object
2 nested properties
limits object
requests object
volumeName string
storageClassName string
volumeMode string
dataSource object
3 nested properties
apiGroup string required
kind string required
name string required
metadata object
16 nested properties
name string
generateName string
namespace string
selfLink string
uid string
resourceVersion string
generation integer
creationTimestamp object
deletionTimestamp string
format=date-time
deletionGracePeriodSeconds integer
labels object
annotations object
ownerReferences OwnerReference[]
finalizers string[]
clusterName string
managedFields ManagedFieldsEntry[]
PersistentVolumeClaimVolumeSource object
claimName string required
readOnly boolean
PhotonPersistentDiskVolumeSource object
pdID string required
fsType string
Policy object
TypeMeta object required
2 nested properties
kind string
apiVersion string
rules PolicyRule[] required
metadata object
16 nested properties
name string
generateName string
namespace string
selfLink string
uid string
resourceVersion string
generation integer
creationTimestamp object
deletionTimestamp string
format=date-time
deletionGracePeriodSeconds integer
labels object
annotations object
ownerReferences OwnerReference[]
finalizers string[]
clusterName string
managedFields ManagedFieldsEntry[]
omitStages string[]
PolicyRule object
level string required
users string[]
userGroups string[]
verbs string[]
resources GroupResources[]
namespaces string[]
nonResourceURLs string[]
omitStages string[]
PortworxVolumeSource object
volumeID string required
fsType string
readOnly boolean
PrivateRegistry object
url string

URL for the registry

user string

User name for registry acces

password string

Password for registry access

isDefault boolean

Default registry

ecrCredentialPlugin object
3 nested properties
awsAccessKeyId string
awsSecretAccessKey string
awsAccessToken string
ProjectedVolumeSource object
sources VolumeProjection[] required
defaultMode integer
ProviderConfiguration object
aesgcm object
1 nested properties
keys Key[] required
aescbc object
1 nested properties
keys Key[] required
secretbox object
1 nested properties
keys Key[] required
identity object
kms object
4 nested properties
name string required
endpoint string required
cachesize integer
timeout object
Quantity object
QuobyteVolumeSource object
registry string required
volume string required
readOnly boolean
user string
group string
tenant string
RBDVolumeSource object
monitors string[] required
image string required
fsType string
pool string
user string
keyring string
secretRef object
1 nested properties
name string
readOnly boolean
RKEConfigNode object
nodeName string

Name of the host provisioned via docker machine

address string

IP or FQDN that is fully resolvable and used for SSH communication

port string | number

Port used for SSH communication

internalAddress string

Optional - Internal address that will be used for components communication

role string[]

Node role in kubernetes cluster (controlplane, worker, or etcd)

hostnameOverride string

Optional - Hostname of the node

user string

SSH usesr that will be used by RKE

dockerSocket string

Optional - Docker socket on the node that will be used in tunneling

sshAgentAuth boolean

SSH Agent Auth enable

sshKey string

SSH Private Key

sshKeyPath string

SSH Private Key Path

sshCert string

SSH Certificate

sshCertPath string

SSH Certificate Path

labels object

Node Labels

taints RKETaint[]

Node Taints

RKEConfigServices object
etcd object
18 nested properties
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
externalUrls string[]

List of etcd urls

caCert string

External CA certificate

cert string

External Client certificate

key string

External Client key

path string

External etcd prefix

uid integer

UID to run etcd container as

gid integer

GID to run etcd container as

snapshot boolean

Etcd Recurring snapshot Service, used by rke only

retention string

Etcd snapshot Retention period

creation string

Etcd snapshot Creation period

backupConfig object
6 nested properties
s3BackupConfig object required
enabled boolean
intervalHours integer
retention integer
safeTimestamp boolean
timeout integer
kubeApi object
15 nested properties
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
serviceClusterIpRange string

Virtual IP range that will be used by Kubernetes services

serviceNodePortRange string

Port range for services defined with NodePort type

podSecurityPolicy boolean

Enabled/Disable PodSecurityPolicy

alwaysPullImages boolean

Enable/Disable AlwaysPullImages admissions plugin

secretsEncryptionConfig object
2 nested properties
enabled boolean

Enable/disable secrets encryption provider config

customConfig object
auditLog object
2 nested properties
enabled boolean
configuration object
admissionConfiguration object
2 nested properties
TypeMeta object required
eventRateLimit object
2 nested properties
enabled boolean
configuration object
kubeController object
9 nested properties
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
clusterCidr string

CIDR Range for Pods in cluster

serviceClusterIpRange string

Virtual IP range that will be used by Kubernetes services

scheduler object
7 nested properties
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
kubelet object
12 nested properties
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
clusterDomain string

Domain of the cluster (default: "cluster.local")

infraContainerImage string

The image whose network/ipc namespaces containers in each pod will use

clusterDnsServer string

Cluster DNS service ip

failSwapOn boolean

Fail if swap is enabled

generateServingCertificate boolean

Generate per node kubelet serving certificates created using kube-ca

kubeproxy object
7 nested properties
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
RKESystemImages object
etcd string

etcd image

alpine string

Alpine image

nginxProxy string

rke-nginx-proxy image

certDownloader string

rke-cert-deployer image

kubernetesServicesSidecar string

rke-service-sidekick image

kubedns string

KubeDNS image

dnsmasq string

DNSMasq image

kubednsSidecar string

KubeDNS side car image

kubednsAutoscaler string

KubeDNS autoscaler image

coredns string

CoreDNS image

corednsAutoscaler string

CoreDNS autoscaler image

nodelocal string

Nodelocal image

kubernetes string

Kubernetes image

flannel string

Flannel image

flannelCni string

Flannel CNI image

calicoNode string

Calico Node image

calicoCni string

Calico CNI image

calicoControllers string

Calico Controllers image

calicoCtl string

Calicoctl image

calicoFlexVol string

CalicoFlexVol image

canalNode string

Canal Node Image

canalCni string

Canal CNI image

canalControllers string

Canal Controllers Image needed for Calico/Canal v3.14.0+

canalFlannel string

CanalFlannel image

canalFlexVol string

CanalFlexVol image

weaveNode string

Weave Node image

weaveCni string

Weave CNI image

podInfraContainer string

Pod infra container image

ingress string

Ingress Controller image

ingressBackend string

Ingress Controller Backend image

ingressWebhook string

Ingress Webhook image

metricsServer string

Metrics Server image

windowsPodInfraContainer string

Pod infra container image for Windows

aciCniDeployContainer string

Cni deployer container image for Cisco ACI

aciHostContainer string

host container image for Cisco ACI

aciOpflexContainer string

opflex agent container image for Cisco ACI

aciMcastContainer string

mcast daemon container image for Cisco ACI

aciOvsContainer string

OpenvSwitch container image for Cisco ACI

aciControllerContainer string

Controller container image for Cisco ACI

aciGbpServerContainer string

GBP Server container image for Cisco ACI

aciOpflexServerContainer string

Opflex Server container image for Cisco ACI

RKETaint object
key string
value string
effect string
timeAdded string
format=date-time
RancherKubernetesEngineConfig object

Kubernetes nodes

services object
6 nested properties
etcd object
18 nested properties
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
externalUrls string[]

List of etcd urls

caCert string

External CA certificate

cert string

External Client certificate

key string

External Client key

path string

External etcd prefix

uid integer

UID to run etcd container as

gid integer

GID to run etcd container as

snapshot boolean

Etcd Recurring snapshot Service, used by rke only

retention string

Etcd snapshot Retention period

creation string

Etcd snapshot Creation period

backupConfig object
kubeApi object
15 nested properties
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
serviceClusterIpRange string

Virtual IP range that will be used by Kubernetes services

serviceNodePortRange string

Port range for services defined with NodePort type

podSecurityPolicy boolean

Enabled/Disable PodSecurityPolicy

alwaysPullImages boolean

Enable/Disable AlwaysPullImages admissions plugin

secretsEncryptionConfig object
auditLog object
admissionConfiguration object
eventRateLimit object
kubeController object
9 nested properties
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
clusterCidr string

CIDR Range for Pods in cluster

serviceClusterIpRange string

Virtual IP range that will be used by Kubernetes services

scheduler object
7 nested properties
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
kubelet object
12 nested properties
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
clusterDomain string

Domain of the cluster (default: "cluster.local")

infraContainerImage string

The image whose network/ipc namespaces containers in each pod will use

clusterDnsServer string

Cluster DNS service ip

failSwapOn boolean

Fail if swap is enabled

generateServingCertificate boolean

Generate per node kubelet serving certificates created using kube-ca

kubeproxy object
7 nested properties
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
network object
11 nested properties
plugin string

Network Plugin That will be used in kubernetes cluster

options object

Plugin options to configure network properties

mtu integer

Set MTU for CNI provider

calicoNetworkProvider object
1 nested properties
cloudProvider string required

Cloud provider type used with calico

canalNetworkProvider object
1 nested properties
iface string required
flannelNetworkProvider object
1 nested properties
iface string required

Alternate cloud interface for flannel

weaveNetworkProvider object
1 nested properties
password string
aciNetworkProvider object
63 nested properties
systemId string
apicHosts string[]
token string
apicUserName string
apicUserKey string
apicUserCrt string
apicRefreshTime string
vmmDomain string
vmmController string
encapType string
nodeSubnet string
mcastRangeStart string
mcastRangeEnd string
aep string
vrfName string
vrfTenant string
l3out string
l3outExternalNetworks string[]
externDynamic string
externStatic string
nodeSvcSubnet string
kubeApiVlan string
serviceVlan string
infraVlan string
tenant string
ovsMemoryLimit string
imagePullPolicy string
imagePullSecret string
serviceMonitorInterval string
pbrTrackingNonSnat string
installIstio string
istioProfile string
dropLogEnable string
controllerLogLevel string
hostAgentLogLevel string
opflexLogLevel string
useAciCniPriorityClass string
noPriorityClass string
maxNodesSvcGraph string
snatContractScope string
podSubnetChunkSize string
enableEndpointSlice string
snatNamespace string
epRegistry string
opflexMode string
snatPortRangeStart string | number
snatPortRangeEnd string | number
snatPortsPerNode string | number
opflexClientSsl string
usePrivilegedContainer string
useHostNetnsVolume string
useOpflexServerVolume string
subnetDomainName string
kafkaBrokers string[]
kafkaClientCrt string
kafkaClientKey string
capic string
useAciAnywhereCrd string
overlayVrfName string
gbpPodSubnet string
runGbpContainer string
runOpflexServerContainer string
opflexServerPort string | number
nodeSelector object

NodeSelector key pair

updateStrategy object
2 nested properties
strategy string
rollingUpdate object
tolerations Toleration[]

Tolerations for Deployments

authentication object
3 nested properties
strategy string

Authentication strategy that will be used in kubernetes cluster

sans string[]

List of additional hostnames and IPs to include in the api server PKI cert

webhook object
2 nested properties
configFile string

ConfigFile is a multiline string that represent a custom webhook config file

cacheTimeout string

CacheTimeout controls how long to cache authentication decisions

addons string

YAML manifest for user provided addons to be deployed on the cluster

addonsInclude string[]

List of urls or paths for addons

systemImages object
41 nested properties
etcd string

etcd image

alpine string

Alpine image

nginxProxy string

rke-nginx-proxy image

certDownloader string

rke-cert-deployer image

kubernetesServicesSidecar string

rke-service-sidekick image

kubedns string

KubeDNS image

dnsmasq string

DNSMasq image

kubednsSidecar string

KubeDNS side car image

kubednsAutoscaler string

KubeDNS autoscaler image

coredns string

CoreDNS image

corednsAutoscaler string

CoreDNS autoscaler image

nodelocal string

Nodelocal image

kubernetes string

Kubernetes image

flannel string

Flannel image

flannelCni string

Flannel CNI image

calicoNode string

Calico Node image

calicoCni string

Calico CNI image

calicoControllers string

Calico Controllers image

calicoCtl string

Calicoctl image

calicoFlexVol string

CalicoFlexVol image

canalNode string

Canal Node Image

canalCni string

Canal CNI image

canalControllers string

Canal Controllers Image needed for Calico/Canal v3.14.0+

canalFlannel string

CanalFlannel image

canalFlexVol string

CanalFlexVol image

weaveNode string

Weave Node image

weaveCni string

Weave CNI image

podInfraContainer string

Pod infra container image

ingress string

Ingress Controller image

ingressBackend string

Ingress Controller Backend image

ingressWebhook string

Ingress Webhook image

metricsServer string

Metrics Server image

windowsPodInfraContainer string

Pod infra container image for Windows

aciCniDeployContainer string

Cni deployer container image for Cisco ACI

aciHostContainer string

host container image for Cisco ACI

aciOpflexContainer string

opflex agent container image for Cisco ACI

aciMcastContainer string

mcast daemon container image for Cisco ACI

aciOvsContainer string

OpenvSwitch container image for Cisco ACI

aciControllerContainer string

Controller container image for Cisco ACI

aciGbpServerContainer string

GBP Server container image for Cisco ACI

aciOpflexServerContainer string

Opflex Server container image for Cisco ACI

sshKeyPath string

SSH Private Key Path

sshCertPath string

SSH Certificate Path

sshAgentAuth boolean

SSH Agent Auth enable

authorization object
2 nested properties
mode string

Authorization mode used by kubernetes

options object

Authorization mode options

ignoreDockerVersion boolean

Enable/disable strict docker version checking

enableCriDockerd boolean

Enable/disable using cri-dockerd

kubernetesVersion string

Kubernetes version to use (if kubernetes image is specified, image version takes precedence)

privateRegistries PrivateRegistry[]

List of private registries and their credentials

ingress object
16 nested properties
provider string

Ingress controller type used by kubernetes

options object

These options are NOT for configuring Ingress's addon template. They are used for its ConfigMap options specifically.

nodeSelector object

NodeSelector key pair

extraArgs object

Ingress controller extra arguments

dnsPolicy string

DNS Policy

extraEnvs ExtraEnv[]

Extra Env vars

extraVolumes ExtraVolume[]

Extra volumes

extraVolumeMounts ExtraVolumeMount[]

Extra volume mounts

updateStrategy object
2 nested properties
strategy string
rollingUpdate object
httpPort string | number

Http port for ingress controller daemonset

httpsPort string | number

Https port for ingress controller daemonset

networkMode string

NetworkMode selector for ingress controller pods. Default is HostNetwork

tolerations Toleration[]

Tolerations for Deployments

defaultBackend boolean

Enable or disable nginx default-http-backend

defaultHttpBackendPriorityClassName string

Priority class name for Nginx-Ingress's "default-http-backend" deployment

nginxIngressControllerPriorityClassName string

Priority class name for Nginx-Ingress's "nginx-ingress-controller" daemonset

clusterName string

Cluster Name used in the kube config

cloudProvider object
6 nested properties
name string

Name of the Cloud Provider

awsCloudProvider object
2 nested properties
global object required
serviceOverride object
azureCloudProvider object
31 nested properties
tenantId string required

The AAD Tenant ID for the Subscription that the cluster is deployed in

subscriptionId string required

The ID of the Azure Subscription that the cluster is deployed in

resourceGroup string required

The name of the resource group that the cluster is deployed in

location string required

The location of the resource group that the cluster is deployed in

vnetName string required

The name of the VNet that the cluster is deployed in

vnetResourceGroup string required

The name of the resource group that the Vnet is deployed in

subnetName string required

The name of the subnet that the cluster is deployed in

securityGroupName string required

The name of the security group attached to the cluster's subnet

routeTableName string required

(Optional in 1.6) The name of the route table attached to the subnet that the cluster is deployed in

primaryAvailabilitySetName string required

(Optional) The name of the availability set that should be used as the load balancer backend If this is set, the Azure cloudprovider will only add nodes from that availability set to the load balancer backend pool. If this is not set, and multiple agent pools (availability sets) are used, then the cloudprovider will try to add all nodes to a single backend pool which is forbidden. In other words, if you use multiple agent pools (availability sets), you MUST set this field.

vmType string required

The type of azure nodes. Candidate valudes are: vmss and standard. If not set, it will be default to standard.

primaryScaleSetName string required

The name of the scale set that should be used as the load balancer backend. If this is set, the Azure cloudprovider will only add nodes from that scale set to the load balancer backend pool. If this is not set, and multiple agent pools (scale sets) are used, then the cloudprovider will try to add all nodes to a single backend pool which is forbidden. In other words, if you use multiple agent pools (scale sets), you MUST set this field.

aadClientId string required

The ClientID for an AAD application with RBAC access to talk to Azure RM APIs This's used for service principal authentication: https://github.com/Azure/aks-engine/blob/master/docs/topics/service-principals.md

aadClientSecret string required

The ClientSecret for an AAD application with RBAC access to talk to Azure RM APIs This's used for service principal authentication: https://github.com/Azure/aks-engine/blob/master/docs/topics/service-principals.md

aadClientCertPath string required

The path of a client certificate for an AAD application with RBAC access to talk to Azure RM APIs This's used for client certificate authentication: https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-protocols-oauth-service-to-service

aadClientCertPassword string required

The password of the client certificate for an AAD application with RBAC access to talk to Azure RM APIs This's used for client certificate authentication: https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-protocols-oauth-service-to-service

cloudProviderBackoff boolean required

Enable exponential backoff to manage resource request retries

cloudProviderBackoffRetries integer required

Backoff retry limit

cloudProviderBackoffExponent integer required

Backoff exponent

cloudProviderBackoffDuration integer required

Backoff duration

cloudProviderBackoffJitter integer required

Backoff jitter

cloudProviderRateLimit boolean required

Enable rate limiting

cloudProviderRateLimitQPS integer required

Rate limit QPS

cloudProviderRateLimitBucket integer required

Rate limit Bucket Size

useInstanceMetadata boolean required

Use instance metadata service where possible

useManagedIdentityExtension boolean required

Use managed service identity for the virtual machine to access Azure ARM APIs This's used for managed identity authentication: https://docs.microsoft.com/en-us/azure/active-directory/managed-service-identity/overview For user-assigned managed identity, need to set the below UserAssignedIdentityID

maximumLoadBalancerRuleCount integer required

Maximum allowed LoadBalancer Rule Count is the limit enforced by Azure Load balancer, default(0) to 148

userAssignedIdentityID string

The Client ID of the user assigned MSI which is assigned to the underlying VMs This's used for managed identity authentication: https://docs.microsoft.com/en-us/azure/active-directory/managed-service-identity/overview

loadBalancerSku string

Sku of Load Balancer and Public IP: basic or standard, default(blank) to basic

excludeMasterFromStandardLB boolean

Excludes master nodes (labeled with node-role.kubernetes.io/master) from the backend pool of Azure standard loadbalancer, default(nil) to true If want adding the master nodes to ALB, this should be set to false and remove the node-role.kubernetes.io/master label from master nodes

openstackCloudProvider object
5 nested properties
global object required
loadBalancer object required
blockStorage object required
route object required
metadata object required
vsphereCloudProvider object
5 nested properties
global object
virtualCenter object
network object
disk object
workspace object
customCloudProvider string

CustomCloudProvider is a multiline string that represent a custom cloud config file

prefixPath string

kubernetes directory path

winPrefixPath string

kubernetes directory path for windows

addonJobTimeout integer

Timeout in seconds for status check on addon deployment jobs

bastionHost object
9 nested properties
address string

Address of Bastion Host

port string | number

SSH Port of Bastion Host

user string

ssh User to Bastion Host

sshAgentAuth boolean

SSH Agent Auth enable

sshKey string

SSH Private Key

sshKeyPath string

SSH Private Key Path

sshCert string

SSH Certificate

sshCertPath string

SSH Certificate Path

ignoreProxyEnvVars boolean

Ignore proxy environment variables

monitoring object
7 nested properties
provider string

Monitoring server provider

options object

These options are NOT for configuring the Metrics-Server's addon template. They are used to pass command args to the metric-server's deployment containers specifically.

nodeSelector object

NodeSelector key pair

updateStrategy object
2 nested properties
strategy string
rollingUpdate object
replicas integer

Number of monitoring addon pods

tolerations Toleration[]

Tolerations for Deployments

metricsServerPriorityClassName string

Priority class name for Metrics-Server's "metrics-server" deployment

restore object
2 nested properties
restore boolean
snapshotName string
rotateCertificates object
2 nested properties
caCertificates boolean

Rotate CA Certificates

services string[]

Services to rotate their certs

rotateEncryptionKey boolean

Rotate Encryption Key Option

dns object
10 nested properties
provider string

DNS provider

options object

DNS config options

upstreamnameservers string[]

Upstream nameservers

reversecidrs string[]

ReverseCIDRs

stubdomains object

Stubdomains

nodeSelector object

NodeSelector key pair

nodelocal object
4 nested properties
ipAddress string

link-local IP for nodelocal DNS

updateStrategy object
nodeSelector object

NodeSelector key pair

nodeLocalDnsPriorityClassName string

Priority class name for NodeLocal's "node-local-dns" daemonset

updateStrategy object
2 nested properties
strategy string
rollingUpdate object
linearAutoscalerParams object
5 nested properties
coresPerReplica number
nodesPerReplica number
min integer
max integer
preventSinglePointFailure boolean
tolerations Toleration[]

Tolerations for Deployments

upgradeStrategy object
4 nested properties
maxUnavailableWorker string

MaxUnavailableWorker input can be a number of nodes or a percentage of nodes (example, max_unavailable_worker: 2 OR max_unavailable_worker: 20%)

maxUnavailableControlplane string

MaxUnavailableControlplane input can be a number of nodes or a percentage of nodes

drain boolean
nodeDrainInput object
5 nested properties
timeout integer required

Time to wait (in seconds) before giving up for one try

force boolean

Drain node even if there are pods not managed by a ReplicationController, Job, or DaemonSet Drain will not proceed without Force set to true if there are such pods

ignoreDaemonSets boolean

If there are DaemonSet-managed pods, drain will not proceed without IgnoreDaemonSets set to true (even when set to true, kubectl won't delete pods - so setting default to true)

deleteLocalData boolean

Continue even if there are pods using emptyDir

gracePeriod integer

Period of time in seconds given to each pod to terminate gracefully. If negative, the default value specified in the pod will be used

ResourceConfiguration object
resources string[] required
providers ProviderConfiguration[] required
ResourceFieldSelector object
resource string required
containerName string
divisor object
ResourceRequirements object
limits object
requests object
RestoreConfig object
restore boolean
snapshotName string
RollingUpdateDaemonSet object
maxUnavailable object
3 nested properties
Type integer required
IntVal integer required
StrVal string required
maxSurge object
3 nested properties
Type integer required
IntVal integer required
StrVal string required
RollingUpdateDeployment object
maxUnavailable object
3 nested properties
Type integer required
IntVal integer required
StrVal string required
maxSurge object
3 nested properties
Type integer required
IntVal integer required
StrVal string required
RotateCertificates object
caCertificates boolean

Rotate CA Certificates

services string[]

Services to rotate their certs

RouteOpenstackOpts object
router-id string required

required

S3BackupConfig object
endpoint string required
accessKey string
secretKey string
bucketName string
region string
customCa string
folder string
ScaleIOVolumeSource object
gateway string required
system string required
secretRef object required
1 nested properties
name string
sslEnabled boolean
protectionDomain string
storagePool string
storageMode string
volumeName string
fsType string
readOnly boolean
SchedulerService object
image string
extraArgs object
extraBinds string[]
extraEnv string[]
winExtraArgs object
winExtraBinds string[]
winExtraEnv string[]
SecretKeySelector object
LocalObjectReference object required
1 nested properties
name string
key string required
optional boolean
SecretProjection object
LocalObjectReference object required
1 nested properties
name string
items KeyToPath[]
optional boolean
SecretVolumeSource object
secretName string
items KeyToPath[]
defaultMode integer
optional boolean
SecretboxConfiguration object
keys Key[] required
SecretsEncryptionConfig object
enabled boolean

Enable/disable secrets encryption provider config

customConfig object
3 nested properties
resources ResourceConfiguration[] required
kind string
apiVersion string
ServiceAccountTokenProjection object
path string required
audience string
expirationSeconds integer
ServiceOverride object
service string required
region string required
url string required
signing-region string required
signing-method string required
signing-name string required
StorageOSVolumeSource object
volumeName string
volumeNamespace string
fsType string
readOnly boolean
secretRef object
1 nested properties
name string
Time object
Toleration object
key string
operator string
value string
effect string
tolerationSeconds integer
TypeMeta object
kind string
apiVersion string
TypedLocalObjectReference object
apiGroup string required
kind string required
name string required
Unknown object
TypeMeta object required
2 nested properties
kind string
apiVersion string
Raw string required
ContentEncoding string required
ContentType string required
VirtualCenterConfig object
user string
password string
port string | number
datacenters string
soap-roundtrip-count integer
VolumeProjection object
secret object
3 nested properties
LocalObjectReference object required
1 nested properties
name string
items KeyToPath[]
optional boolean
downwardAPI object
1 nested properties
configMap object
3 nested properties
LocalObjectReference object required
1 nested properties
name string
items KeyToPath[]
optional boolean
serviceAccountToken object
3 nested properties
path string required
audience string
expirationSeconds integer
VolumeSource object
hostPath object
2 nested properties
path string required
type string
emptyDir object
2 nested properties
medium string
sizeLimit object
gcePersistentDisk object
4 nested properties
pdName string required
fsType string
partition integer
readOnly boolean
awsElasticBlockStore object
4 nested properties
volumeID string required
fsType string
partition integer
readOnly boolean
gitRepo object
3 nested properties
repository string required
revision string
directory string
secret object
4 nested properties
secretName string
items KeyToPath[]
defaultMode integer
optional boolean
nfs object
3 nested properties
server string required
path string required
readOnly boolean
iscsi object
11 nested properties
targetPortal string required
iqn string required
lun integer required
iscsiInterface string
fsType string
readOnly boolean
portals string[]
chapAuthDiscovery boolean
chapAuthSession boolean
secretRef object
1 nested properties
name string
initiatorName string
glusterfs object
3 nested properties
endpoints string required
path string required
readOnly boolean
persistentVolumeClaim object
2 nested properties
claimName string required
readOnly boolean
rbd object
8 nested properties
monitors string[] required
image string required
fsType string
pool string
user string
keyring string
secretRef object
1 nested properties
name string
readOnly boolean
flexVolume object
5 nested properties
driver string required
fsType string
secretRef object
1 nested properties
name string
readOnly boolean
options object
cinder object
4 nested properties
volumeID string required
fsType string
readOnly boolean
secretRef object
1 nested properties
name string
cephfs object
6 nested properties
monitors string[] required
path string
user string
secretFile string
secretRef object
1 nested properties
name string
readOnly boolean
flocker object
2 nested properties
datasetName string
datasetUUID string
downwardAPI object
2 nested properties
defaultMode integer
fc object
5 nested properties
targetWWNs string[]
lun integer
fsType string
readOnly boolean
wwids string[]
azureFile object
3 nested properties
secretName string required
shareName string required
readOnly boolean
configMap object
4 nested properties
LocalObjectReference object required
1 nested properties
name string
items KeyToPath[]
defaultMode integer
optional boolean
vsphereVolume object
4 nested properties
volumePath string required
fsType string
storagePolicyName string
storagePolicyID string
quobyte object
6 nested properties
registry string required
volume string required
readOnly boolean
user string
group string
tenant string
azureDisk object
6 nested properties
diskName string required
diskURI string required
cachingMode string
fsType string
readOnly boolean
kind string
photonPersistentDisk object
2 nested properties
pdID string required
fsType string
projected object
2 nested properties
sources VolumeProjection[] required
defaultMode integer
portworxVolume object
3 nested properties
volumeID string required
fsType string
readOnly boolean
scaleIO object
10 nested properties
gateway string required
system string required
secretRef object required
1 nested properties
name string
sslEnabled boolean
protectionDomain string
storagePool string
storageMode string
volumeName string
fsType string
readOnly boolean
storageos object
5 nested properties
volumeName string
volumeNamespace string
fsType string
readOnly boolean
secretRef object
1 nested properties
name string
csi object
5 nested properties
driver string required
readOnly boolean
fsType string
volumeAttributes object
nodePublishSecretRef object
1 nested properties
name string
ephemeral object
1 nested properties
volumeClaimTemplate object
2 nested properties
spec object required
metadata object
VsphereCloudProvider object
global object
12 nested properties
user string
password string
server string
port string | number
insecure-flag boolean
datacenter string
datacenters string
datastore string
working-dir string
soap-roundtrip-count integer
vm-uuid string
vm-name string
virtualCenter object
network object
1 nested properties
public-network string
disk object
1 nested properties
scsicontrollertype string
workspace object
5 nested properties
server string
datacenter string
folder string
default-datastore string
resourcepool-path string
VsphereVirtualDiskVolumeSource object
volumePath string required
fsType string
storagePolicyName string
storagePolicyID string
WeaveNetworkProvider object
password string
WorkspaceVsphereOpts object
server string
datacenter string
folder string
default-datastore string
resourcepool-path string