rancher v2.15.1

Cluster.spec.rkeConfig.machinePools[]

RKEMachinePool is the configuration for a RKE2/K3s machine pool within a provisioning cluster.

26 fields
Cluster.spec.rkeConfig.machinePools[] fields and descriptions
Field / TypeDescription
autoscalingMaxSize
integer

AutoscalingMaxSize is the autoscaler max node size, this maps to the autoscaling annotations which are mapped to the CAPI machineDeployment object

  • format: int32
  • nullable
autoscalingMinSize
integer

AutoscalingMinSize is the autoscaler min node size, this maps to the autoscaling annotations which are mapped to the CAPI machineDeployment object

  • format: int32
  • nullable
cloudCredentialSecretName
string

CloudCredentialSecretName is the id of the secret used to provision the cluster. This field must be in the format of "namespace:name". NOTE: this field overrides the field of the same name on the cluster spec, allowing individual machine pools to use separate credentials.

  • maxLength: 317
  • nullable
controlPlaneRole
boolean

ControlPlaneRole defines whether the machines provisioned by this pool should be controlplane nodes.

displayName
string

DisplayName is the display name for the generated CAPI machinedeployment object. Deprecated: this field is currently unused and will be removed in a future version.

  • nullable
drainBeforeDelete
boolean

DrainBeforeDelete defines whether the machines provisioned by this pool should be drained prior to deletion.

drainBeforeDeleteTimeout
string

DrainBeforeDeleteTimeout defines the timeout for draining the machines provisioned by this pool before deletion.

  • nullable
dynamicSchemaSpec
string

DynamicSchemaSpec is a copy of the dynamic schema object's spec field at the time the machine pool was created. Since rancher-machine based MachineTemplates are not api-versioned, this field is used to drop new fields added to the driver if it has been upgraded since initial provisioning. This allows node drivers to be upgraded without triggering a reconciliation of the provisioning cluster. NOTE: This field can only be removed if the "provisioning.cattle.io/allow-dynamic-schema-drop" annotation is present on the provisioning cluster object, otherwise it will be reinserted.

  • nullable
etcdRole
boolean

EtcdRole defines whether the machines provisioned by this pool should be etcd nodes.

hostnameLengthLimit
integer

HostnameLengthLimit defines the maximum length of the hostname for machines in this pool. For Windows nodes utilizing NETBIOS authentication, a maximum of 15 should be set to ensure all nodes adhere to the protocol's naming requirements.

  • minimum: 10
  • maximum: 63
map[string]string

Labels is a list of labels to apply to the machines created by the CAPI machine deployment.

  • nullable
object required

NodeConfig is a reference to a MachineConfig object that will be used to configure the machines provisioned by this pool. The NodeConfig object will, in turn, be used to create a corresponding MachineTemplate object for the generated machine deployment.

  • nullable
  • x-kubernetes-map-type: "atomic"
map[string]string

MachineDeploymentAnnotations are the annotations to add to the generated machine deployment.

  • nullable
map[string]string

MachineDeploymentLabels are the labels to add to the generated machine deployment.

  • nullable
machineOS
string

MachineOS is the operating system of the machines provisioned by this pool. This is only used to designate linux versus windows nodes.

  • nullable
maxUnhealthy
string

MaxUnhealthy specifies the minimum number of unhealthy machines that a MachineHealthCheck can tolerate before remediating unhealthy machines.

  • nullable
name
string required

Name is the internal name of the machine pool. The generated CAPI machine deployment will be a concatenation of the cluster name and the machine pool name which, if over 63 characters is truncated to 54 with a sha256sum appended.

  • minLength: 1
nodeStartupTimeout
string

NodeStartupTimeout allows setting the maximum time for MachineHealthCheck to consider a Machine unhealthy if a corresponding Node isn't associated through a `Spec.ProviderID` field. The duration set in this field is compared to the greatest of: - Cluster's infrastructure ready condition timestamp (if available) - Control Plane's initialized condition timestamp (if available) - Machine's infrastructure ready condition timestamp (if available) - Machine's metadata creation timestamp Defaults to 10 minutes. If you wish to disable this feature, set the value explicitly to 0.

  • nullable
paused
boolean

Paused indicates that the machine pool is paused, preventing CAPI controllers from reconciling it. NOTE: this only applies to the corresponding generated machine deployment object, not the generated machines themselves.

quantity
integer

Quantity is the desired number of machines in the machine pool.

  • format: int32
  • minimum: 0
  • nullable
object

RollingUpdate is the configuration for the rolling update of the generated machine deployment.

  • nullable
object[]

Taints is a list of taints to apply to the machines created by the CAPI machine deployment.

  • nullable
unhealthyNodeTimeout
string

UnhealthyNodeTimeout specifies the maximum duration a generated MachineHealthCheck should wait before marking a not ready machine as unhealthy.

  • nullable
unhealthyRange
string

UnhealthyRange specifies the number of unhealthy machines in which a MachineHealthCheck is allowed to remediate.

  • nullable
object

Additional userdata to merge with rancher-defined userdata. Currently, this field is only supported for external CAPI infrastructure providers, and will have no effect for Rancher-provisioned nodes. Userdata for Rancher-provisioned nodes can be set in the machine configuration. WARNING: Do not include sensitive data, this field is visible in non-Secret API objects. EXPERIMENTAL: this field is experimental and future compatibility is not guaranteed.

  • nullable
workerRole
boolean

WorkerRole defines whether the machines provisioned by this pool should be worker nodes.