Type RancherKubernetesEngineConfig
File match cluster.yml cluster.yaml
Schema URL https://catalog.lintel.tools/schemas/schemastore/rke-cluster-configuration-yaml/latest.json
Source https://raw.githubusercontent.com/dcermak/vscode-rke-cluster-config/main/schemas/cluster.yml.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.

service_override object
AWSElasticBlockStoreVolumeSource object
VolumeID string required
FSType string required
Partition integer required
ReadOnly boolean required
AciNetworkProvider object
system_id string
apic_hosts string[]
token string
apic_user_name string
apic_user_key string
apic_user_crt string
apic_refresh_time string
vmm_domain string
vmm_controller string
encap_type string
node_subnet string
mcast_range_start string
mcast_range_end string
aep string
vrf_name string
vrf_tenant string
l3out string
l3out_external_networks string[]
extern_dynamic string
extern_static string
node_svc_subnet string
kube_api_vlan string
service_vlan string
infra_vlan string
tenant string
ovs_memory_limit string
image_pull_policy string
image_pull_secret string
service_monitor_interval string
pbr_tracking_non_snat string
install_istio string
istio_profile string
drop_log_enable string
controller_log_level string
host_agent_log_level string
opflex_log_level string
use_aci_cni_priority_class string
no_priority_class string
max_nodes_svc_graph string
snat_contract_scope string
pod_subnet_chunk_size string
enable_endpoint_slice string
snat_namespace string
ep_registry string
opflex_mode string
snat_port_range_start string | number
snat_port_range_end string | number
snat_ports_per_node string | number
opflex_client_ssl string
use_privileged_container string
use_host_netns_volume string
use_opflex_server_volume string
subnet_domain_name string
kafka_brokers string[]
kafka_client_crt string
kafka_client_key string
capic string
use_aci_anywhere_crd string
overlay_vrf_name string
gbp_pod_subnet string
run_gbp_container string
run_opflex_server_container string
opflex_server_port string | number
AdmissionConfiguration object
Kind string required
APIVersion string required
AdmissionPluginConfiguration object
Name string required
Path string required
Configuration object required
5 nested properties
Raw string required
ContentEncoding string required
ContentType string required
apiVersion string
kind string
AuditLog object
enabled boolean
configuration object
6 nested properties
max_age integer
max_backup integer
max_size integer
path string
format string
policy object
20 nested properties
Kind string required
APIVersion string required
Name string required
GenerateName string required
Namespace string required
SelfLink string required
UID string required
ResourceVersion string required
Generation integer required
CreationTimestamp object required
DeletionTimestamp string required
format=date-time
DeletionGracePeriodSeconds integer required
Labels object required
Annotations object required
OwnerReferences OwnerReference[] required
Finalizers string[] required
ClusterName string required
ManagedFields ManagedFieldsEntry[] required
Rules PolicyRule[] required
OmitStages string[] required
AuditLogConfig object
max_age integer
max_backup integer
max_size integer
path string
format string
policy object
20 nested properties
Kind string required
APIVersion string required
Name string required
GenerateName string required
Namespace string required
SelfLink string required
UID string required
ResourceVersion string required
Generation integer required
CreationTimestamp object required
DeletionTimestamp string required
format=date-time
DeletionGracePeriodSeconds integer required
Labels object required
Annotations object required
OwnerReferences OwnerReference[] required
Finalizers string[] required
ClusterName string required
ManagedFields ManagedFieldsEntry[] required
Rules PolicyRule[] required
OmitStages string[] required
AuthWebhookConfig object
config_file string

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

cache_timeout 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
config_file string

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

cache_timeout 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
DataDiskURI string required
CachingMode string required
FSType string required
ReadOnly boolean required
Kind string required
AzureFileVolumeSource object
SecretName string required
ShareName string required
ReadOnly boolean required
BackupConfig object
enabled boolean required
interval_hours integer required
retention integer required
safe_timestamp boolean required
timeout integer required
S3BackupConfig object
7 nested properties
access_key string required
secret_key string required
bucket_name string required
region string required
endpoint string required
custom_ca string required
folder string required
BastionHost object
address string

Address of Bastion Host

port string | number

SSH Port of Bastion Host

user string

ssh User to Bastion Host

ssh_agent_auth boolean

SSH Agent Auth enable

ssh_key string

SSH Private Key

ssh_key_path string

SSH Private Key Path

ssh_cert string

SSH Certificate

ssh_cert_path string

SSH Certificate Path

ignore_proxy_env_vars 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 required
FSType string required
VolumeAttributes object required
NodePublishSecretRef object required
1 nested properties
Name string required
CalicoNetworkProvider object
CloudProvider string required

Cloud provider type used with calico

CanalNetworkProvider object
Iface string required
CephFSVolumeSource object
Monitors string[] required
Path string required
User string required
SecretFile string required
SecretRef object required
1 nested properties
Name string required
ReadOnly boolean required
CinderVolumeSource object
VolumeID string required
FSType string required
ReadOnly boolean required
SecretRef object required
1 nested properties
Name string required
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.

service_override 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
load_balancer 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
block_storage 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
virtual_center 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
Name string required
Key string required
Optional boolean required
ConfigMapProjection object
Name string required
Items KeyToPath[] required
Optional boolean required
ConfigMapVolumeSource object
Name string required
Items KeyToPath[] required
DefaultMode integer required
Optional boolean required
Configuration object
Kind string required
APIVersion string required
Limits Limit[] required
DNSConfig object
provider string

DNS provider

options object

DNS config options

upstreamnameservers string[]

Upstream nameservers

reversecidrs string[]

ReverseCIDRs

stubdomains object

Stubdomains

node_selector object

NodeSelector key pair

nodelocal object
4 nested properties
ip_address string

link-local IP for nodelocal DNS

update_strategy object
2 nested properties
Strategy string required
RollingUpdate object required
node_selector object

NodeSelector key pair

node_local_dns_priority_class_name string

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

update_strategy object
2 nested properties
Strategy string required
RollingUpdate object required
2 nested properties
MaxUnavailable object required
MaxSurge object required
linear_autoscaler_params object
5 nested properties
min integer required
max integer required
cores_per_replica number
nodes_per_replica number
prevent_single_point_failure boolean
tolerations Toleration[]

Tolerations for Deployments

DaemonSetUpdateStrategy object
Strategy string required
RollingUpdate object required
2 nested properties
MaxUnavailable object required
3 nested properties
Type integer required
IntVal integer required
StrVal string required
MaxSurge object required
3 nested properties
Type integer required
IntVal integer required
StrVal string required
DeploymentStrategy object
Strategy string required
RollingUpdate object required
2 nested properties
MaxUnavailable object required
3 nested properties
Type integer required
IntVal integer required
StrVal string required
MaxSurge object required
3 nested properties
Type integer required
IntVal integer required
StrVal string required
DiskVsphereOpts object
scsicontrollertype string
DownwardAPIProjection object
Items DownwardAPIVolumeFile[] required
DownwardAPIVolumeFile object
Path string required
FieldRef object required
2 nested properties
APIVersion string required
FieldPath string required
ResourceFieldRef object required
3 nested properties
ContainerName string required
Resource string required
Divisor object required
Mode integer required
DownwardAPIVolumeSource object
Items DownwardAPIVolumeFile[] required
DefaultMode integer required
Duration object
ECRCredentialPlugin object
aws_access_key_id string required
aws_secret_access_key string required
aws_session_token string required
ETCDService object
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
external_urls string[]

List of etcd urls

ca_cert 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

backup_config object
6 nested properties
enabled boolean required
interval_hours integer required
retention integer required
safe_timestamp boolean required
timeout integer required
S3BackupConfig object
7 nested properties
access_key string required
secret_key string required
bucket_name string required
region string required
endpoint string required
custom_ca string required
folder string required
EmptyDirVolumeSource object
Medium string required
SizeLimit object required
EncryptionConfiguration object
Kind string required
APIVersion string required
Resources ResourceConfiguration[] required
EnvVarSource object
FieldRef object required
2 nested properties
APIVersion string required
FieldPath string required
ResourceFieldRef object required
3 nested properties
ContainerName string required
Resource string required
Divisor object required
ConfigMapKeyRef object required
3 nested properties
Name string required
Key string required
Optional boolean required
SecretKeyRef object required
3 nested properties
Name string required
Key string required
Optional boolean required
EphemeralVolumeSource object
VolumeClaimTemplate object required
17 nested properties
Name string required
GenerateName string required
Namespace string required
SelfLink string required
UID string required
ResourceVersion string required
Generation integer required
CreationTimestamp object required
DeletionTimestamp string required
format=date-time
DeletionGracePeriodSeconds integer required
Labels object required
Annotations object required
OwnerReferences OwnerReference[] required
Finalizers string[] required
ClusterName string required
ManagedFields ManagedFieldsEntry[] required
Spec object required
7 nested properties
AccessModes string[] required
Selector object required
Resources object required
VolumeName string required
StorageClassName string required
VolumeMode string required
DataSource object required
EventRateLimit object
enabled boolean
configuration object
3 nested properties
Kind string required
APIVersion string required
Limits Limit[] required
ExtraEnv object
Name string required
Value string required
ValueFrom object required
4 nested properties
FieldRef object required
2 nested properties
APIVersion string required
FieldPath string required
ResourceFieldRef object required
3 nested properties
ContainerName string required
Resource string required
Divisor object required
ConfigMapKeyRef object required
3 nested properties
Name string required
Key string required
Optional boolean required
SecretKeyRef object required
3 nested properties
Name string required
Key string required
Optional boolean required
ExtraVolume object
Name string required
HostPath object required
2 nested properties
Path string required
Type string required
EmptyDir object required
2 nested properties
Medium string required
SizeLimit object required
GCEPersistentDisk object required
4 nested properties
PDName string required
FSType string required
Partition integer required
ReadOnly boolean required
AWSElasticBlockStore object required
4 nested properties
VolumeID string required
FSType string required
Partition integer required
ReadOnly boolean required
GitRepo object required
3 nested properties
Repository string required
Revision string required
Directory string required
Secret object required
4 nested properties
SecretName string required
Items KeyToPath[] required
DefaultMode integer required
Optional boolean required
NFS object required
3 nested properties
Server string required
Path string required
ReadOnly boolean required
ISCSI object required
11 nested properties
TargetPortal string required
IQN string required
Lun integer required
ISCSIInterface string required
FSType string required
ReadOnly boolean required
Portals string[] required
DiscoveryCHAPAuth boolean required
SessionCHAPAuth boolean required
SecretRef object required
1 nested properties
Name string required
InitiatorName string required
Glusterfs object required
3 nested properties
EndpointsName string required
Path string required
ReadOnly boolean required
PersistentVolumeClaim object required
2 nested properties
ClaimName string required
ReadOnly boolean required
RBD object required
8 nested properties
CephMonitors string[] required
RBDImage string required
FSType string required
RBDPool string required
RadosUser string required
Keyring string required
SecretRef object required
1 nested properties
Name string required
ReadOnly boolean required
FlexVolume object required
5 nested properties
Driver string required
FSType string required
SecretRef object required
1 nested properties
Name string required
ReadOnly boolean required
Options object required
Cinder object required
4 nested properties
VolumeID string required
FSType string required
ReadOnly boolean required
SecretRef object required
1 nested properties
Name string required
CephFS object required
6 nested properties
Monitors string[] required
Path string required
User string required
SecretFile string required
SecretRef object required
1 nested properties
Name string required
ReadOnly boolean required
Flocker object required
2 nested properties
DatasetName string required
DatasetUUID string required
DownwardAPI object required
2 nested properties
Items DownwardAPIVolumeFile[] required
DefaultMode integer required
FC object required
5 nested properties
TargetWWNs string[] required
Lun integer required
FSType string required
ReadOnly boolean required
WWIDs string[] required
AzureFile object required
3 nested properties
SecretName string required
ShareName string required
ReadOnly boolean required
ConfigMap object required
4 nested properties
Name string required
Items KeyToPath[] required
DefaultMode integer required
Optional boolean required
VsphereVolume object required
4 nested properties
VolumePath string required
FSType string required
StoragePolicyName string required
StoragePolicyID string required
Quobyte object required
6 nested properties
Registry string required
Volume string required
ReadOnly boolean required
User string required
Group string required
Tenant string required
AzureDisk object required
6 nested properties
DiskName string required
DataDiskURI string required
CachingMode string required
FSType string required
ReadOnly boolean required
Kind string required
PhotonPersistentDisk object required
2 nested properties
PdID string required
FSType string required
Projected object required
2 nested properties
Sources VolumeProjection[] required
DefaultMode integer required
PortworxVolume object required
3 nested properties
VolumeID string required
FSType string required
ReadOnly boolean required
ScaleIO object required
10 nested properties
Gateway string required
System string required
SecretRef object required
1 nested properties
Name string required
SSLEnabled boolean required
ProtectionDomain string required
StoragePool string required
StorageMode string required
VolumeName string required
FSType string required
ReadOnly boolean required
StorageOS object required
5 nested properties
VolumeName string required
VolumeNamespace string required
FSType string required
ReadOnly boolean required
SecretRef object required
1 nested properties
Name string required
CSI object required
5 nested properties
Driver string required
ReadOnly boolean required
FSType string required
VolumeAttributes object required
NodePublishSecretRef object required
1 nested properties
Name string required
Ephemeral object required
1 nested properties
VolumeClaimTemplate object required
17 nested properties
Name string required
GenerateName string required
Namespace string required
SelfLink string required
UID string required
ResourceVersion string required
Generation integer required
CreationTimestamp object required
DeletionTimestamp string required
format=date-time
DeletionGracePeriodSeconds integer required
Labels object required
Annotations object required
OwnerReferences OwnerReference[] required
Finalizers string[] required
ClusterName string required
ManagedFields ManagedFieldsEntry[] required
Spec object required
ExtraVolumeMount object
Name string required
ReadOnly boolean required
MountPath string required
SubPath string required
MountPropagation string required
SubPathExpr string required
FCVolumeSource object
TargetWWNs string[] required
Lun integer required
FSType string required
ReadOnly boolean required
WWIDs string[] required
FieldsV1 object
Raw string required
FlannelNetworkProvider object
Iface string required

Alternate cloud interface for flannel

FlexVolumeSource object
Driver string required
FSType string required
SecretRef object required
1 nested properties
Name string required
ReadOnly boolean required
Options object required
FlockerVolumeSource object
DatasetName string required
DatasetUUID string required
GCEPersistentDiskVolumeSource object
PDName string required
FSType string required
Partition integer required
ReadOnly boolean required
GitRepoVolumeSource object
Repository string required
Revision string required
Directory string required
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
EndpointsName string required
Path string required
ReadOnly boolean required
GroupResources object
Group string required
Resources string[] required
ResourceNames string[] required
HostPathVolumeSource object
Path string required
Type string required
ISCSIVolumeSource object
TargetPortal string required
IQN string required
Lun integer required
ISCSIInterface string required
FSType string required
ReadOnly boolean required
Portals string[] required
DiscoveryCHAPAuth boolean required
SessionCHAPAuth boolean required
SecretRef object required
1 nested properties
Name string required
InitiatorName string required
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.

node_selector object

NodeSelector key pair

extra_args object

Ingress controller extra arguments

dns_policy string

DNS Policy

extra_envs ExtraEnv[]

Extra Env vars

extra_volumes ExtraVolume[]

Extra volumes

extra_volume_mounts ExtraVolumeMount[]

Extra volume mounts

update_strategy object
2 nested properties
Strategy string required
RollingUpdate object required
2 nested properties
MaxUnavailable object required
MaxSurge object required
http_port string | number

Http port for ingress controller daemonset

https_port string | number

Https port for ingress controller daemonset

network_mode string

NetworkMode selector for ingress controller pods. Default is HostNetwork

tolerations Toleration[]

Tolerations for Deployments

default_backend boolean

Enable or disable nginx default-http-backend

default_http_backend_priority_class_name string

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

nginx_ingress_controller_priority_class_name 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
CacheSize integer required
Endpoint string required
Timeout object required
Key object
Name string required
Secret string required
KeyToPath object
Key string required
Path string required
Mode integer required
KubeAPIService object
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
service_cluster_ip_range string

Virtual IP range that will be used by Kubernetes services

service_node_port_range string

Port range for services defined with NodePort type

pod_security_policy boolean

Enabled/Disable PodSecurityPolicy

always_pull_images boolean

Enable/Disable AlwaysPullImages admissions plugin

secrets_encryption_config object
2 nested properties
custom_config object required
3 nested properties
Kind string required
APIVersion string required
Resources ResourceConfiguration[] required
enabled boolean

Enable/disable secrets encryption provider config

audit_log object
2 nested properties
enabled boolean
configuration object
6 nested properties
max_age integer
max_backup integer
max_size integer
path string
format string
policy object
admission_configuration object
3 nested properties
Kind string required
APIVersion string required
event_rate_limit object
2 nested properties
enabled boolean
configuration object
3 nested properties
Kind string required
APIVersion string required
Limits Limit[] required
KubeControllerService object
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
cluster_cidr string

CIDR Range for Pods in cluster

service_cluster_ip_range string

Virtual IP range that will be used by Kubernetes services

KubeletService object
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
cluster_domain string

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

infra_container_image string

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

cluster_dns_server string

Cluster DNS service ip

fail_swap_on boolean

Fail if swap is enabled

generate_serving_certificate boolean

Generate per node kubelet serving certificates created using kube-ca

KubeproxyService object
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
LabelSelector object
MatchLabels object required
MatchExpressions LabelSelectorRequirement[] required
LabelSelectorRequirement object
Key string required
Operator string required
Values string[] required
Limit object
Type string required
QPS integer required
Burst integer required
CacheSize integer required
LinearAutoscalerParams object
min integer required
max integer required
cores_per_replica number
nodes_per_replica number
prevent_single_point_failure 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 required
ManagedFieldsEntry object
Manager string required
Operation string required
APIVersion string required
Time string required
format=date-time
FieldsType string required
FieldsV1 object required
1 nested properties
Raw string required
MetadataOpenstackOpts object
search-order string required
request-timeout integer required
MonitoringConfig object
replicas integer required

Number of monitoring addon pods

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.

node_selector object

NodeSelector key pair

update_strategy object
2 nested properties
Strategy string required
RollingUpdate object required
2 nested properties
MaxUnavailable object required
MaxSurge object required
tolerations Toleration[]

Tolerations for Deployments

metrics_server_priority_class_name string

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

NFSVolumeSource object
Server string required
Path string required
ReadOnly boolean required
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

calico_network_provider object
1 nested properties
CloudProvider string required

Cloud provider type used with calico

canal_network_provider object
1 nested properties
Iface string required
flannel_network_provider object
1 nested properties
Iface string required

Alternate cloud interface for flannel

weave_network_provider object
1 nested properties
password string
aci_network_provider object
63 nested properties
system_id string
apic_hosts string[]
token string
apic_user_name string
apic_user_key string
apic_user_crt string
apic_refresh_time string
vmm_domain string
vmm_controller string
encap_type string
node_subnet string
mcast_range_start string
mcast_range_end string
aep string
vrf_name string
vrf_tenant string
l3out string
l3out_external_networks string[]
extern_dynamic string
extern_static string
node_svc_subnet string
kube_api_vlan string
service_vlan string
infra_vlan string
tenant string
ovs_memory_limit string
image_pull_policy string
image_pull_secret string
service_monitor_interval string
pbr_tracking_non_snat string
install_istio string
istio_profile string
drop_log_enable string
controller_log_level string
host_agent_log_level string
opflex_log_level string
use_aci_cni_priority_class string
no_priority_class string
max_nodes_svc_graph string
snat_contract_scope string
pod_subnet_chunk_size string
enable_endpoint_slice string
snat_namespace string
ep_registry string
opflex_mode string
snat_port_range_start string | number
snat_port_range_end string | number
snat_ports_per_node string | number
opflex_client_ssl string
use_privileged_container string
use_host_netns_volume string
use_opflex_server_volume string
subnet_domain_name string
kafka_brokers string[]
kafka_client_crt string
kafka_client_key string
capic string
use_aci_anywhere_crd string
overlay_vrf_name string
gbp_pod_subnet string
run_gbp_container string
run_opflex_server_container string
opflex_server_port string | number
node_selector object

NodeSelector key pair

update_strategy object
2 nested properties
Strategy string required
RollingUpdate object required
2 nested properties
MaxUnavailable object required
MaxSurge object required
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

ignore_daemonsets 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)

delete_local_data boolean

Continue even if there are pods using emptyDir

grace_period 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
max_unavailable_worker string

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

max_unavailable_controlplane string

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

drain boolean
node_drain_input 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

ignore_daemonsets 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)

delete_local_data boolean

Continue even if there are pods using emptyDir

grace_period 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
ip_address string

link-local IP for nodelocal DNS

update_strategy object
2 nested properties
Strategy string required
RollingUpdate object required
2 nested properties
MaxUnavailable object required
MaxSurge object required
node_selector object

NodeSelector key pair

node_local_dns_priority_class_name string

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

ObjectFieldSelector object
APIVersion string required
FieldPath string required
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
load_balancer 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
block_storage 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 required
BlockOwnerDeletion boolean required
PersistentVolumeClaimSpec object
AccessModes string[] required
Selector object required
2 nested properties
MatchLabels object required
MatchExpressions LabelSelectorRequirement[] required
Resources object required
2 nested properties
Limits object required
Requests object required
VolumeName string required
StorageClassName string required
VolumeMode string required
DataSource object required
3 nested properties
APIGroup string required
Kind string required
Name string required
PersistentVolumeClaimTemplate object
Name string required
GenerateName string required
Namespace string required
SelfLink string required
UID string required
ResourceVersion string required
Generation integer required
CreationTimestamp object required
DeletionTimestamp string required
format=date-time
DeletionGracePeriodSeconds integer required
Labels object required
Annotations object required
OwnerReferences OwnerReference[] required
Finalizers string[] required
ClusterName string required
ManagedFields ManagedFieldsEntry[] required
Spec object required
7 nested properties
AccessModes string[] required
Selector object required
2 nested properties
MatchLabels object required
MatchExpressions LabelSelectorRequirement[] required
Resources object required
2 nested properties
Limits object required
Requests object required
VolumeName string required
StorageClassName string required
VolumeMode string required
DataSource object required
3 nested properties
APIGroup string required
Kind string required
Name string required
PersistentVolumeClaimVolumeSource object
ClaimName string required
ReadOnly boolean required
PhotonPersistentDiskVolumeSource object
PdID string required
FSType string required
Policy object
Kind string required
APIVersion string required
Name string required
GenerateName string required
Namespace string required
SelfLink string required
UID string required
ResourceVersion string required
Generation integer required
CreationTimestamp object required
DeletionTimestamp string required
format=date-time
DeletionGracePeriodSeconds integer required
Labels object required
Annotations object required
OwnerReferences OwnerReference[] required
Finalizers string[] required
ClusterName string required
ManagedFields ManagedFieldsEntry[] required
Rules PolicyRule[] required
OmitStages string[] required
PolicyRule object
Level string required
Users string[] required
UserGroups string[] required
Verbs string[] required
Resources GroupResources[] required
Namespaces string[] required
NonResourceURLs string[] required
OmitStages string[] required
PortworxVolumeSource object
VolumeID string required
FSType string required
ReadOnly boolean required
PrivateRegistry object
url string

URL for the registry

user string

User name for registry acces

password string

Password for registry access

is_default boolean

Default registry

ecr_credential_plugin object
3 nested properties
aws_access_key_id string required
aws_secret_access_key string required
aws_session_token string required
ProjectedVolumeSource object
Sources VolumeProjection[] required
DefaultMode integer required
ProviderConfiguration object
AESGCM object required
1 nested properties
Keys Key[] required
AESCBC object required
1 nested properties
Keys Key[] required
Secretbox object required
1 nested properties
Keys Key[] required
Identity object required
KMS object required
4 nested properties
Name string required
CacheSize integer required
Endpoint string required
Timeout object required
Quantity object
QuobyteVolumeSource object
Registry string required
Volume string required
ReadOnly boolean required
User string required
Group string required
Tenant string required
RBDVolumeSource object
CephMonitors string[] required
RBDImage string required
FSType string required
RBDPool string required
RadosUser string required
Keyring string required
SecretRef object required
1 nested properties
Name string required
ReadOnly boolean required
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

internal_address string

Optional - Internal address that will be used for components communication

role string[]

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

hostname_override string

Optional - Hostname of the node

user string

SSH usesr that will be used by RKE

docker_socket string

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

ssh_agent_auth boolean

SSH Agent Auth enable

ssh_key string

SSH Private Key

ssh_key_path string

SSH Private Key Path

ssh_cert string

SSH Certificate

ssh_cert_path string

SSH Certificate Path

labels object

Node Labels

taints RKETaint[]

Node Taints

RKEConfigServices object
etcd object
18 nested properties
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
external_urls string[]

List of etcd urls

ca_cert 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

backup_config object
6 nested properties
enabled boolean required
interval_hours integer required
retention integer required
safe_timestamp boolean required
timeout integer required
S3BackupConfig object
kube-api object
15 nested properties
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
service_cluster_ip_range string

Virtual IP range that will be used by Kubernetes services

service_node_port_range string

Port range for services defined with NodePort type

pod_security_policy boolean

Enabled/Disable PodSecurityPolicy

always_pull_images boolean

Enable/Disable AlwaysPullImages admissions plugin

secrets_encryption_config object
2 nested properties
custom_config object required
enabled boolean

Enable/disable secrets encryption provider config

audit_log object
2 nested properties
enabled boolean
configuration object
admission_configuration object
3 nested properties
Kind string required
APIVersion string required
event_rate_limit object
2 nested properties
enabled boolean
configuration object
kube-controller object
9 nested properties
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
cluster_cidr string

CIDR Range for Pods in cluster

service_cluster_ip_range string

Virtual IP range that will be used by Kubernetes services

scheduler object
7 nested properties
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
kubelet object
12 nested properties
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
cluster_domain string

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

infra_container_image string

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

cluster_dns_server string

Cluster DNS service ip

fail_swap_on boolean

Fail if swap is enabled

generate_serving_certificate boolean

Generate per node kubelet serving certificates created using kube-ca

kubeproxy object
7 nested properties
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
RKESystemImages object
etcd string

etcd image

alpine string

Alpine image

nginx_proxy string

rke-nginx-proxy image

cert_downloader string

rke-cert-deployer image

kubernetes_services_sidecar string

rke-service-sidekick image

kubedns string

KubeDNS image

dnsmasq string

DNSMasq image

kubedns_sidecar string

KubeDNS side car image

kubedns_autoscaler string

KubeDNS autoscaler image

coredns string

CoreDNS image

coredns_autoscaler string

CoreDNS autoscaler image

nodelocal string

Nodelocal image

kubernetes string

Kubernetes image

flannel string

Flannel image

flannel_cni string

Flannel CNI image

calico_node string

Calico Node image

calico_cni string

Calico CNI image

calico_controllers string

Calico Controllers image

calico_ctl string

Calicoctl image

calico_flexvol string

CalicoFlexVol image

canal_node string

Canal Node Image

canal_cni string

Canal CNI image

canal_controllers string

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

canal_flannel string

CanalFlannel image

canal_flexvol string

CanalFlexVol image

weave_node string

Weave Node image

weave_cni string

Weave CNI image

pod_infra_container string

Pod infra container image

ingress string

Ingress Controller image

ingress_backend string

Ingress Controller Backend image

ingress_webhook string

Ingress Webhook image

metrics_server string

Metrics Server image

windows_pod_infra_container string

Pod infra container image for Windows

aci_cni_deploy_container string

Cni deployer container image for Cisco ACI

aci_host_container string

host container image for Cisco ACI

aci_opflex_container string

opflex agent container image for Cisco ACI

aci_mcast_container string

mcast daemon container image for Cisco ACI

aci_ovs_container string

OpenvSwitch container image for Cisco ACI

aci_controller_container string

Controller container image for Cisco ACI

aci_gbp_server_container string

GBP Server container image for Cisco ACI

aci_opflex_server_container 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
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
external_urls string[]

List of etcd urls

ca_cert 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

backup_config object
kube-api object
15 nested properties
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
service_cluster_ip_range string

Virtual IP range that will be used by Kubernetes services

service_node_port_range string

Port range for services defined with NodePort type

pod_security_policy boolean

Enabled/Disable PodSecurityPolicy

always_pull_images boolean

Enable/Disable AlwaysPullImages admissions plugin

secrets_encryption_config object
audit_log object
admission_configuration object
event_rate_limit object
kube-controller object
9 nested properties
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
cluster_cidr string

CIDR Range for Pods in cluster

service_cluster_ip_range string

Virtual IP range that will be used by Kubernetes services

scheduler object
7 nested properties
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
kubelet object
12 nested properties
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
cluster_domain string

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

infra_container_image string

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

cluster_dns_server string

Cluster DNS service ip

fail_swap_on boolean

Fail if swap is enabled

generate_serving_certificate boolean

Generate per node kubelet serving certificates created using kube-ca

kubeproxy object
7 nested properties
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env 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

calico_network_provider object
1 nested properties
CloudProvider string required

Cloud provider type used with calico

canal_network_provider object
1 nested properties
Iface string required
flannel_network_provider object
1 nested properties
Iface string required

Alternate cloud interface for flannel

weave_network_provider object
1 nested properties
password string
aci_network_provider object
63 nested properties
system_id string
apic_hosts string[]
token string
apic_user_name string
apic_user_key string
apic_user_crt string
apic_refresh_time string
vmm_domain string
vmm_controller string
encap_type string
node_subnet string
mcast_range_start string
mcast_range_end string
aep string
vrf_name string
vrf_tenant string
l3out string
l3out_external_networks string[]
extern_dynamic string
extern_static string
node_svc_subnet string
kube_api_vlan string
service_vlan string
infra_vlan string
tenant string
ovs_memory_limit string
image_pull_policy string
image_pull_secret string
service_monitor_interval string
pbr_tracking_non_snat string
install_istio string
istio_profile string
drop_log_enable string
controller_log_level string
host_agent_log_level string
opflex_log_level string
use_aci_cni_priority_class string
no_priority_class string
max_nodes_svc_graph string
snat_contract_scope string
pod_subnet_chunk_size string
enable_endpoint_slice string
snat_namespace string
ep_registry string
opflex_mode string
snat_port_range_start string | number
snat_port_range_end string | number
snat_ports_per_node string | number
opflex_client_ssl string
use_privileged_container string
use_host_netns_volume string
use_opflex_server_volume string
subnet_domain_name string
kafka_brokers string[]
kafka_client_crt string
kafka_client_key string
capic string
use_aci_anywhere_crd string
overlay_vrf_name string
gbp_pod_subnet string
run_gbp_container string
run_opflex_server_container string
opflex_server_port string | number
node_selector object

NodeSelector key pair

update_strategy object
2 nested properties
Strategy string required
RollingUpdate object required
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
config_file string

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

cache_timeout string

CacheTimeout controls how long to cache authentication decisions

addons string

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

addons_include string[]

List of urls or paths for addons

system_images object
41 nested properties
etcd string

etcd image

alpine string

Alpine image

nginx_proxy string

rke-nginx-proxy image

cert_downloader string

rke-cert-deployer image

kubernetes_services_sidecar string

rke-service-sidekick image

kubedns string

KubeDNS image

dnsmasq string

DNSMasq image

kubedns_sidecar string

KubeDNS side car image

kubedns_autoscaler string

KubeDNS autoscaler image

coredns string

CoreDNS image

coredns_autoscaler string

CoreDNS autoscaler image

nodelocal string

Nodelocal image

kubernetes string

Kubernetes image

flannel string

Flannel image

flannel_cni string

Flannel CNI image

calico_node string

Calico Node image

calico_cni string

Calico CNI image

calico_controllers string

Calico Controllers image

calico_ctl string

Calicoctl image

calico_flexvol string

CalicoFlexVol image

canal_node string

Canal Node Image

canal_cni string

Canal CNI image

canal_controllers string

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

canal_flannel string

CanalFlannel image

canal_flexvol string

CanalFlexVol image

weave_node string

Weave Node image

weave_cni string

Weave CNI image

pod_infra_container string

Pod infra container image

ingress string

Ingress Controller image

ingress_backend string

Ingress Controller Backend image

ingress_webhook string

Ingress Webhook image

metrics_server string

Metrics Server image

windows_pod_infra_container string

Pod infra container image for Windows

aci_cni_deploy_container string

Cni deployer container image for Cisco ACI

aci_host_container string

host container image for Cisco ACI

aci_opflex_container string

opflex agent container image for Cisco ACI

aci_mcast_container string

mcast daemon container image for Cisco ACI

aci_ovs_container string

OpenvSwitch container image for Cisco ACI

aci_controller_container string

Controller container image for Cisco ACI

aci_gbp_server_container string

GBP Server container image for Cisco ACI

aci_opflex_server_container string

Opflex Server container image for Cisco ACI

ssh_key_path string

SSH Private Key Path

ssh_cert_path string

SSH Certificate Path

ssh_agent_auth boolean

SSH Agent Auth enable

authorization object
2 nested properties
mode string

Authorization mode used by kubernetes

options object

Authorization mode options

ignore_docker_version boolean

Enable/disable strict docker version checking

enable_cri_dockerd boolean

Enable/disable using cri-dockerd

kubernetes_version string

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

private_registries 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.

node_selector object

NodeSelector key pair

extra_args object

Ingress controller extra arguments

dns_policy string

DNS Policy

extra_envs ExtraEnv[]

Extra Env vars

extra_volumes ExtraVolume[]

Extra volumes

extra_volume_mounts ExtraVolumeMount[]

Extra volume mounts

update_strategy object
2 nested properties
Strategy string required
RollingUpdate object required
http_port string | number

Http port for ingress controller daemonset

https_port string | number

Https port for ingress controller daemonset

network_mode string

NetworkMode selector for ingress controller pods. Default is HostNetwork

tolerations Toleration[]

Tolerations for Deployments

default_backend boolean

Enable or disable nginx default-http-backend

default_http_backend_priority_class_name string

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

nginx_ingress_controller_priority_class_name string

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

cluster_name string

Cluster Name used in the kube config

cloud_provider object
6 nested properties
name string

Name of the Cloud Provider

awsCloudProvider object
2 nested properties
global object required
service_override 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
load_balancer object required
block_storage object required
route object required
metadata object required
vsphereCloudProvider object
5 nested properties
global object
virtual_center object
network object
disk object
workspace object
customCloudProvider string

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

prefix_path string

kubernetes directory path

win_prefix_path string

kubernetes directory path for windows

addon_job_timeout integer

Timeout in seconds for status check on addon deployment jobs

bastion_host 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

ssh_agent_auth boolean

SSH Agent Auth enable

ssh_key string

SSH Private Key

ssh_key_path string

SSH Private Key Path

ssh_cert string

SSH Certificate

ssh_cert_path string

SSH Certificate Path

ignore_proxy_env_vars boolean

Ignore proxy environment variables

monitoring object
7 nested properties
replicas integer required

Number of monitoring addon pods

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.

node_selector object

NodeSelector key pair

update_strategy object
2 nested properties
Strategy string required
RollingUpdate object required
tolerations Toleration[]

Tolerations for Deployments

metrics_server_priority_class_name string

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

restore object
2 nested properties
restore boolean
snapshot_name string
rotate_certificates object
2 nested properties
CACertificates boolean required

Rotate CA Certificates

Services string[] required

Services to rotate their certs

rotate_encryption_key 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

node_selector object

NodeSelector key pair

nodelocal object
4 nested properties
ip_address string

link-local IP for nodelocal DNS

update_strategy object
node_selector object

NodeSelector key pair

node_local_dns_priority_class_name string

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

update_strategy object
2 nested properties
Strategy string required
RollingUpdate object required
linear_autoscaler_params object
5 nested properties
min integer required
max integer required
cores_per_replica number
nodes_per_replica number
prevent_single_point_failure boolean
tolerations Toleration[]

Tolerations for Deployments

upgrade_strategy object
4 nested properties
max_unavailable_worker string

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

max_unavailable_controlplane string

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

drain boolean
node_drain_input 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

ignore_daemonsets 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)

delete_local_data boolean

Continue even if there are pods using emptyDir

grace_period 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
ContainerName string required
Resource string required
Divisor object required
ResourceRequirements object
Limits object required
Requests object required
RestoreConfig object
restore boolean
snapshot_name string
RollingUpdateDaemonSet object
MaxUnavailable object required
3 nested properties
Type integer required
IntVal integer required
StrVal string required
MaxSurge object required
3 nested properties
Type integer required
IntVal integer required
StrVal string required
RollingUpdateDeployment object
MaxUnavailable object required
3 nested properties
Type integer required
IntVal integer required
StrVal string required
MaxSurge object required
3 nested properties
Type integer required
IntVal integer required
StrVal string required
RotateCertificates object
CACertificates boolean required

Rotate CA Certificates

Services string[] required

Services to rotate their certs

RouteOpenstackOpts object
router-id string required

required

S3BackupConfig object
access_key string required
secret_key string required
bucket_name string required
region string required
endpoint string required
custom_ca string required
folder string required
ScaleIOVolumeSource object
Gateway string required
System string required
SecretRef object required
1 nested properties
Name string required
SSLEnabled boolean required
ProtectionDomain string required
StoragePool string required
StorageMode string required
VolumeName string required
FSType string required
ReadOnly boolean required
SchedulerService object
image string
extra_args object
extra_binds string[]
extra_env string[]
win_extra_args object
win_extra_binds string[]
win_extra_env string[]
SecretKeySelector object
Name string required
Key string required
Optional boolean required
SecretProjection object
Name string required
Items KeyToPath[] required
Optional boolean required
SecretVolumeSource object
SecretName string required
Items KeyToPath[] required
DefaultMode integer required
Optional boolean required
SecretboxConfiguration object
Keys Key[] required
SecretsEncryptionConfig object
custom_config object required
3 nested properties
Kind string required
APIVersion string required
Resources ResourceConfiguration[] required
enabled boolean

Enable/disable secrets encryption provider config

ServiceAccountTokenProjection object
Audience string required
ExpirationSeconds integer required
Path string required
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 required
VolumeNamespace string required
FSType string required
ReadOnly boolean required
SecretRef object required
1 nested properties
Name string required
Time object
Toleration object
Key string required
Operator string required
Value string required
Effect string required
TolerationSeconds integer required
TypedLocalObjectReference object
APIGroup string required
Kind string required
Name string required
Unknown object
Raw string required
ContentEncoding string required
ContentType string required
apiVersion string
kind string
VirtualCenterConfig object
user string
password string
port string | number
datacenters string
soap-roundtrip-count integer
VolumeProjection object
Secret object required
3 nested properties
Name string required
Items KeyToPath[] required
Optional boolean required
DownwardAPI object required
1 nested properties
Items DownwardAPIVolumeFile[] required
ConfigMap object required
3 nested properties
Name string required
Items KeyToPath[] required
Optional boolean required
ServiceAccountToken object required
3 nested properties
Audience string required
ExpirationSeconds integer required
Path string required
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
virtual_center 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 required
StoragePolicyName string required
StoragePolicyID string required
WeaveNetworkProvider object
password string
WorkspaceVsphereOpts object
server string
datacenter string
folder string
default-datastore string
resourcepool-path string