v1beta1

MetadataValue
Groupinfrastructure.cluster.x-k8s.io
Version
Modulesigs.k8s.io/cluster-api-provider-azure/exp/api/v1beta1
Property Optionality

AzureMachinePool

Used by: AzureMachinePoolList.

PropertyDescriptionType
metav1.TypeMeta
metav1.ObjectMeta
specAzureMachinePoolSpec
statusAzureMachinePoolStatus

AzureMachinePoolSpec

PropertyDescriptionType
additionalTagsAdditionalTags is an optional set of tags to add to an instance, in addition to the ones added by default by the Azure provider. If both the AzureCluster and the AzureMachine specify the same tag name with different values, the AzureMachine's value takes precedence.infrav1.Tags
identityIdentity is the type of identity used for the Virtual Machine Scale Set. The type 'SystemAssigned' is an implicitly created identity. The generated identity will be assigned a Subscription contributor role. The type 'UserAssigned' is a standalone Azure resource provided by the user and assigned to the VMinfrav1.VMIdentity
locationLocation is the Azure region location e.g. westus2string
orchestrationModeOrchestrationMode specifies the orchestration mode for the Virtual Machine Scale Setinfrav1.OrchestrationModeType
platformFaultDomainCountPlatformFaultDomainCount specifies the number of fault domains that the Virtual Machine Scale Set can use. The count determines the spreading algorithm of the Azure fault domain.int32
providerIDProviderID is the identification ID of the Virtual Machine Scale Setstring
providerIDListProviderIDList are the identification IDs of machine instances provided by the provider. This field must match the provider IDs as seen on the node objects corresponding to a machine pool's machine instances.string[]
roleAssignmentNameDeprecated: RoleAssignmentName should be set in the systemAssignedIdentityRole field.string
strategyThe deployment strategy to use to replace existing AzureMachinePoolMachines with new ones.AzureMachinePoolDeploymentStrategy
systemAssignedIdentityRoleSystemAssignedIdentityRole defines the role and scope to assign to the system assigned identity.infrav1.SystemAssignedIdentityRole
templateTemplate contains the details used to build a replica virtual machine within the Machine PoolAzureMachinePoolMachineTemplate
userAssignedIdentitiesUserAssignedIdentities is a list of standalone Azure identities provided by the user The lifecycle of a user-assigned identity is managed separately from the lifecycle of the AzureMachinePool. See https://learn.microsoft.com/azure/active-directory/managed-identities-azure-resources/how-to-manage-ua-identity-cliinfrav1.UserAssignedIdentity[]
zoneBalanceZoneBalane dictates whether to force strictly even Virtual Machine distribution cross x-zones in case there is zone outage.bool

AzureMachinePoolStatus

PropertyDescriptionType
conditionsConditions defines current service state of the AzureMachinePool.clusterv1.Conditions
failureMessageFailureMessage will be set in the event that there is a terminal problem reconciling the MachinePool and will contain a more verbose string suitable for logging and human consumption.
This field should not be set for transitive errors that a controller faces that are expected to be fixed automatically over time (like service outages), but instead indicate that something is fundamentally wrong with the MachinePool's spec or the configuration of the controller, and that manual intervention is required. Examples of terminal errors would be invalid combinations of settings in the spec, values that are unsupported by the controller, or the responsible controller itself being critically misconfigured.
Any transient errors that occur during the reconciliation of MachinePools can be added as events to the MachinePool object and/or logged in the controller's output.
string
failureReasonFailureReason will be set in the event that there is a terminal problem reconciling the MachinePool and will contain a succinct value suitable for machine interpretation.
This field should not be set for transitive errors that a controller faces that are expected to be fixed automatically over time (like service outages), but instead indicate that something is fundamentally wrong with the MachinePool's spec or the configuration of the controller, and that manual intervention is required. Examples of terminal errors would be invalid combinations of settings in the spec, values that are unsupported by the controller, or the responsible controller itself being critically misconfigured.
Any transient errors that occur during the reconciliation of MachinePools can be added as events to the MachinePool object and/or logged in the controller's output.
string
imageImage is the current image used in the AzureMachinePool. When the spec image is nil, this image is populated with the details of the defaulted Azure Marketplace "capi" offer.infrav1.Image
infrastructureMachineKindInfrastructureMachineKind is the kind of the infrastructure resources behind MachinePool Machines.string
instancesInstances is the VM instance status for each VM in the VMSSAzureMachinePoolInstanceStatus[]
longRunningOperationStatesLongRunningOperationStates saves the state for Azure long-running operations so they can be continued on the next reconciliation loop.infrav1.Futures
provisioningStateProvisioningState is the provisioning state of the Azure virtual machine.infrav1.ProvisioningState
readyReady is true when the provider resource is ready.bool
replicasReplicas is the most recently observed number of replicas.int32
versionVersion is the Kubernetes version for the current VMSS modelstring

AzureMachinePoolList

PropertyDescriptionType
metav1.TypeMeta
metav1.ListMeta
itemsAzureMachinePool[]

AzureMachinePoolMachine

Used by: AzureMachinePoolMachineList.

PropertyDescriptionType
metav1.TypeMeta
metav1.ObjectMeta
specAzureMachinePoolMachineSpec
statusAzureMachinePoolMachineStatus

AzureMachinePoolMachineSpec

PropertyDescriptionType
instanceIDInstanceID is the identification of the Machine Instance within the VMSSstring
providerIDProviderID is the identification ID of the Virtual Machine Scale Setstring

AzureMachinePoolMachineStatus

PropertyDescriptionType
conditionsConditions defines current service state of the AzureMachinePool.clusterv1.Conditions
failureMessageFailureMessage will be set in the event that there is a terminal problem reconciling the MachinePool and will contain a more verbose string suitable for logging and human consumption.
Any transient errors that occur during the reconciliation of MachinePools can be added as events to the MachinePool object and/or logged in the controller's output.
string
failureReasonFailureReason will be set in the event that there is a terminal problem reconciling the MachinePool machine and will contain a succinct value suitable for machine interpretation.
Any transient errors that occur during the reconciliation of MachinePools can be added as events to the MachinePool object and/or logged in the controller's output.
string
instanceNameInstanceName is the name of the Machine Instance within the VMSSstring
latestModelAppliedLatestModelApplied indicates the instance is running the most up-to-date VMSS model. A VMSS model describes the image version the VM is running. If the instance is not running the latest model, it means the instance may not be running the version of Kubernetes the Machine Pool has specified and needs to be updated.bool
longRunningOperationStatesLongRunningOperationStates saves the state for Azure long running operations so they can be continued on the next reconciliation loop.infrav1.Futures
nodeRefNodeRef will point to the corresponding Node if it exists.corev1.ObjectReference
provisioningStateProvisioningState is the provisioning state of the Azure virtual machine instance.infrav1.ProvisioningState
readyReady is true when the provider resource is ready.bool
versionVersion defines the Kubernetes version for the VM Instancestring

AzureMachinePoolMachineList

PropertyDescriptionType
metav1.TypeMeta
metav1.ListMeta
itemsAzureMachinePoolMachine[]

azureMachinePoolWebhook


azureMachinePoolWebhook implements a validating and defaulting webhook for AzureMachinePool.

PropertyDescriptionType
Clientclient.Client

mockClient

PropertyDescriptionType
client.Client
ReturnErrorbool
Versionstring

mockDefaultClient

PropertyDescriptionType
client.Client
ClusterNamestring
Namestring
ReturnErrorbool
SubscriptionIDstring
Versionstring

AzureMachinePoolMachineSpec

Used by: AzureMachinePoolMachine.

PropertyDescriptionType
instanceIDInstanceID is the identification of the Machine Instance within the VMSSstring
providerIDProviderID is the identification ID of the Virtual Machine Scale Setstring

AzureMachinePoolMachineStatus

Used by: AzureMachinePoolMachine.

PropertyDescriptionType
conditionsConditions defines current service state of the AzureMachinePool.clusterv1.Conditions
failureMessageFailureMessage will be set in the event that there is a terminal problem reconciling the MachinePool and will contain a more verbose string suitable for logging and human consumption.
Any transient errors that occur during the reconciliation of MachinePools can be added as events to the MachinePool object and/or logged in the controller's output.
string
failureReasonFailureReason will be set in the event that there is a terminal problem reconciling the MachinePool machine and will contain a succinct value suitable for machine interpretation.
Any transient errors that occur during the reconciliation of MachinePools can be added as events to the MachinePool object and/or logged in the controller's output.
string
instanceNameInstanceName is the name of the Machine Instance within the VMSSstring
latestModelAppliedLatestModelApplied indicates the instance is running the most up-to-date VMSS model. A VMSS model describes the image version the VM is running. If the instance is not running the latest model, it means the instance may not be running the version of Kubernetes the Machine Pool has specified and needs to be updated.bool
longRunningOperationStatesLongRunningOperationStates saves the state for Azure long running operations so they can be continued on the next reconciliation loop.infrav1.Futures
nodeRefNodeRef will point to the corresponding Node if it exists.corev1.ObjectReference
provisioningStateProvisioningState is the provisioning state of the Azure virtual machine instance.infrav1.ProvisioningState
readyReady is true when the provider resource is ready.bool
versionVersion defines the Kubernetes version for the VM Instancestring

AzureMachinePoolSpec

Used by: AzureMachinePool.

PropertyDescriptionType
additionalTagsAdditionalTags is an optional set of tags to add to an instance, in addition to the ones added by default by the Azure provider. If both the AzureCluster and the AzureMachine specify the same tag name with different values, the AzureMachine's value takes precedence.infrav1.Tags
identityIdentity is the type of identity used for the Virtual Machine Scale Set. The type 'SystemAssigned' is an implicitly created identity. The generated identity will be assigned a Subscription contributor role. The type 'UserAssigned' is a standalone Azure resource provided by the user and assigned to the VMinfrav1.VMIdentity
locationLocation is the Azure region location e.g. westus2string
orchestrationModeOrchestrationMode specifies the orchestration mode for the Virtual Machine Scale Setinfrav1.OrchestrationModeType
platformFaultDomainCountPlatformFaultDomainCount specifies the number of fault domains that the Virtual Machine Scale Set can use. The count determines the spreading algorithm of the Azure fault domain.int32
providerIDProviderID is the identification ID of the Virtual Machine Scale Setstring
providerIDListProviderIDList are the identification IDs of machine instances provided by the provider. This field must match the provider IDs as seen on the node objects corresponding to a machine pool's machine instances.string[]
roleAssignmentNameDeprecated: RoleAssignmentName should be set in the systemAssignedIdentityRole field.string
strategyThe deployment strategy to use to replace existing AzureMachinePoolMachines with new ones.AzureMachinePoolDeploymentStrategy
systemAssignedIdentityRoleSystemAssignedIdentityRole defines the role and scope to assign to the system assigned identity.infrav1.SystemAssignedIdentityRole
templateTemplate contains the details used to build a replica virtual machine within the Machine PoolAzureMachinePoolMachineTemplate
userAssignedIdentitiesUserAssignedIdentities is a list of standalone Azure identities provided by the user The lifecycle of a user-assigned identity is managed separately from the lifecycle of the AzureMachinePool. See https://learn.microsoft.com/azure/active-directory/managed-identities-azure-resources/how-to-manage-ua-identity-cliinfrav1.UserAssignedIdentity[]
zoneBalanceZoneBalane dictates whether to force strictly even Virtual Machine distribution cross x-zones in case there is zone outage.bool

AzureMachinePoolStatus

Used by: AzureMachinePool.

PropertyDescriptionType
conditionsConditions defines current service state of the AzureMachinePool.clusterv1.Conditions
failureMessageFailureMessage will be set in the event that there is a terminal problem reconciling the MachinePool and will contain a more verbose string suitable for logging and human consumption.
This field should not be set for transitive errors that a controller faces that are expected to be fixed automatically over time (like service outages), but instead indicate that something is fundamentally wrong with the MachinePool's spec or the configuration of the controller, and that manual intervention is required. Examples of terminal errors would be invalid combinations of settings in the spec, values that are unsupported by the controller, or the responsible controller itself being critically misconfigured.
Any transient errors that occur during the reconciliation of MachinePools can be added as events to the MachinePool object and/or logged in the controller's output.
string
failureReasonFailureReason will be set in the event that there is a terminal problem reconciling the MachinePool and will contain a succinct value suitable for machine interpretation.
This field should not be set for transitive errors that a controller faces that are expected to be fixed automatically over time (like service outages), but instead indicate that something is fundamentally wrong with the MachinePool's spec or the configuration of the controller, and that manual intervention is required. Examples of terminal errors would be invalid combinations of settings in the spec, values that are unsupported by the controller, or the responsible controller itself being critically misconfigured.
Any transient errors that occur during the reconciliation of MachinePools can be added as events to the MachinePool object and/or logged in the controller's output.
string
imageImage is the current image used in the AzureMachinePool. When the spec image is nil, this image is populated with the details of the defaulted Azure Marketplace "capi" offer.infrav1.Image
infrastructureMachineKindInfrastructureMachineKind is the kind of the infrastructure resources behind MachinePool Machines.string
instancesInstances is the VM instance status for each VM in the VMSSAzureMachinePoolInstanceStatus[]
longRunningOperationStatesLongRunningOperationStates saves the state for Azure long-running operations so they can be continued on the next reconciliation loop.infrav1.Futures
provisioningStateProvisioningState is the provisioning state of the Azure virtual machine.infrav1.ProvisioningState
readyReady is true when the provider resource is ready.bool
replicasReplicas is the most recently observed number of replicas.int32
versionVersion is the Kubernetes version for the current VMSS modelstring

AzureMachinePoolDeploymentStrategy

Used by: AzureMachinePoolSpec.

PropertyDescriptionType
rollingUpdateRolling update config params. Present only if MachineDeploymentStrategyType = RollingUpdate.MachineRollingUpdateDeployment
typeType of deployment. Currently the only supported strategy is RollingUpdateAzureMachinePoolDeploymentStrategyType

AzureMachinePoolInstanceStatus

Used by: AzureMachinePoolStatus.

PropertyDescriptionType
instanceIDInstanceID is the identification of the Machine Instance within the VMSSstring
instanceNameInstanceName is the name of the Machine Instance within the VMSSstring
latestModelAppliedLatestModelApplied indicates the instance is running the most up-to-date VMSS model. A VMSS model describes the image version the VM is running. If the instance is not running the latest model, it means the instance may not be running the version of Kubernetes the Machine Pool has specified and needs to be updated.bool
providerIDProviderID is the provider identification of the VMSS Instancestring
provisioningStateProvisioningState is the provisioning state of the Azure virtual machine instance.infrav1.ProvisioningState
versionVersion defines the Kubernetes version for the VM Instancestring

AzureMachinePoolMachineTemplate

Used by: AzureMachinePoolSpec.

PropertyDescriptionType
acceleratedNetworkingDeprecated: AcceleratedNetworking should be set in the networkInterfaces field.bool
additionalCapabilitiesAdditionalCapabilities specifies additional capabilities enabled or disabled on the virtual machine.infrav1.AdditionalCapabilities
dataDisksDataDisks specifies the list of data disks to be created for a Virtual Machineinfrav1.DataDisk[]
diagnosticsDiagnostics specifies the diagnostics settings for a virtual machine. If not specified then Boot diagnostics (Managed) will be enabled.infrav1.Diagnostics
imageImage is used to provide details of an image to use during VM creation. If image details are omitted the image will default the Azure Marketplace "capi" offer, which is based on Ubuntu.infrav1.Image
networkInterfacesNetworkInterfaces specifies a list of network interface configurations. If left unspecified, the VM will get a single network interface with a single IPConfig in the subnet specified in the cluster's node subnet field. The primary interface will be the first networkInterface specified (index 0) in the list.infrav1.NetworkInterface[]
osDiskOSDisk contains the operating system disk information for a Virtual Machineinfrav1.OSDisk
securityProfileSecurityProfile specifies the Security profile settings for a virtual machine.infrav1.SecurityProfile
spotVMOptionsSpotVMOptions allows the ability to specify the Machine should use a Spot VMinfrav1.SpotVMOptions
sshPublicKeySSHPublicKey is the SSH public key string, base64-encoded to add to a Virtual Machine. Linux only. Refer to documentation on how to set up SSH access on Windows instances.string
subnetNameDeprecated: SubnetName should be set in the networkInterfaces field.string
terminateNotificationTimeoutTerminateNotificationTimeout enables or disables VMSS scheduled events termination notification with specified timeout allowed values are between 5 and 15 (mins)int
vmExtensionsVMExtensions specifies a list of extensions to be added to the scale set.infrav1.VMExtension[]
vmSizeVMSize is the size of the Virtual Machine to build. See https://learn.microsoft.com/rest/api/compute/virtualmachines/createorupdate#virtualmachinesizetypesstring

AzureMachinePoolDeploymentStrategyType

Used by: AzureMachinePoolDeploymentStrategy.

MachineRollingUpdateDeployment

Used by: AzureMachinePoolDeploymentStrategy.

PropertyDescriptionType
deletePolicyDeletePolicy defines the policy used by the MachineDeployment to identify nodes to delete when downscaling. Valid values are "Random, "Newest", "Oldest" When no value is supplied, the default is OldestAzureMachinePoolDeletePolicyType
maxSurgeThe maximum number of machines that can be scheduled above the desired number of machines. Value can be an absolute number (ex: 5) or a percentage of desired machines (ex: 10%). This can not be 0 if MaxUnavailable is 0. Absolute number is calculated from percentage by rounding up. Defaults to 1. Example: when this is set to 30%, the new MachineSet can be scaled up immediately when the rolling update starts, such that the total number of old and new machines do not exceed 130% of desired machines. Once old machines have been killed, new MachineSet can be scaled up further, ensuring that total number of machines running at any time during the update is at most 130% of desired machines.intstr.IntOrString
maxUnavailableThe maximum number of machines that can be unavailable during the update. Value can be an absolute number (ex: 5) or a percentage of desired machines (ex: 10%). Absolute number is calculated from percentage by rounding down. This can not be 0 if MaxSurge is 0. Defaults to 0. Example: when this is set to 30%, the old MachineSet can be scaled down to 70% of desired machines immediately when the rolling update starts. Once new machines are ready, old MachineSet can be scaled down further, followed by scaling up the new MachineSet, ensuring that the total number of machines available at all times during the update is at least 70% of desired machines.intstr.IntOrString

AzureMachinePoolDeletePolicyType

Used by: MachineRollingUpdateDeployment.