Class AzureMachineProviderSpec

  • All Implemented Interfaces:
    io.fabric8.kubernetes.api.builder.Editable<AzureMachineProviderSpecBuilder>, io.fabric8.kubernetes.api.model.HasMetadata, io.fabric8.kubernetes.api.model.KubernetesResource, io.fabric8.kubernetes.api.model.Namespaced, Serializable

    @Generated("io.fabric8.kubernetes.schema.generator.model.ModelGenerator")
    public class AzureMachineProviderSpec
    extends Object
    implements io.fabric8.kubernetes.api.builder.Editable<AzureMachineProviderSpecBuilder>, io.fabric8.kubernetes.api.model.HasMetadata, io.fabric8.kubernetes.api.model.Namespaced
    AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
    See Also:
    Serialized Form
    • Field Summary

      • Fields inherited from interface io.fabric8.kubernetes.api.model.HasMetadata

        DNS_LABEL_END, DNS_LABEL_REGEXP, DNS_LABEL_START, FINALIZER_NAME_MATCHER, REQUIRES_NON_NULL_METADATA, REQUIRES_NON_NULL_NAME, REQUIRES_NON_NULL_NAMESPACE
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      AzureMachineProviderSpecBuilder edit()  
      Boolean getAcceleratedNetworking()
      acceleratedNetworking enables or disables Azure accelerated networking feature.
      Map<String,​Object> getAdditionalProperties()  
      String getApiVersion()
      APIVersion defines the versioned schema of this representation of an object.
      List<String> getApplicationSecurityGroups()
      Application Security Groups that need to be attached to the machine's interface.
      String getAvailabilitySet()
      availabilitySet specifies the availability set to use for this instance.
      String getCapacityReservationGroupID()
      capacityReservationGroupID specifies the capacity reservation group resource id that should be used for allocating the virtual machine.
      io.fabric8.kubernetes.api.model.SecretReference getCredentialsSecret()
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      List<DataDisk> getDataDisks()
      DataDisk specifies the parameters that are used to add one or more data disks to the machine.
      AzureDiagnostics getDiagnostics()
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      Image getImage()
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      String getInternalLoadBalancer()
      InternalLoadBalancerName to use for this instance
      String getKind()
      Kind is a string value representing the REST resource this object represents.
      String getLocation()
      location is the region to use to create the instance
      String getManagedIdentity()
      managedIdentity to set managed identity name
      io.fabric8.kubernetes.api.model.ObjectMeta getMetadata()
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      Long getNatRule()
      natRule to set inbound NAT rule of the load balancer
      String getNetworkResourceGroup()
      networkResourceGroup is the resource group for the virtual machine's network
      OSDisk getOsDisk()
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      Boolean getPublicIP()
      publicIP if true a public IP will be used
      String getPublicLoadBalancer()
      publicLoadBalancer to use for this instance
      String getResourceGroup()
      resourceGroup is the resource group for the virtual machine
      String getSecurityGroup()
      Network Security Group that needs to be attached to the machine's interface.
      SecurityProfile getSecurityProfile()
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      SpotVMOptions getSpotVMOptions()
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      String getSshPublicKey()
      sshPublicKey is the public key to use to SSH to the virtual machine.
      String getSubnet()
      subnet to use for this instance
      Map<String,​String> getTags()
      tags is a list of tags to apply to the machine.
      String getUltraSSDCapability()
      ultraSSDCapability enables or disables Azure UltraSSD capability for a virtual machine.
      io.fabric8.kubernetes.api.model.SecretReference getUserDataSecret()
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      String getVmSize()
      vmSize is the size of the VM to create.
      String getVnet()
      vnet to set virtual network name
      String getZone()
      Availability Zone for the virtual machine.
      void setAcceleratedNetworking​(Boolean acceleratedNetworking)
      acceleratedNetworking enables or disables Azure accelerated networking feature.
      void setAdditionalProperties​(Map<String,​Object> additionalProperties)  
      void setAdditionalProperty​(String name, Object value)  
      void setApiVersion​(String apiVersion)
      APIVersion defines the versioned schema of this representation of an object.
      void setApplicationSecurityGroups​(List<String> applicationSecurityGroups)
      Application Security Groups that need to be attached to the machine's interface.
      void setAvailabilitySet​(String availabilitySet)
      availabilitySet specifies the availability set to use for this instance.
      void setCapacityReservationGroupID​(String capacityReservationGroupID)
      capacityReservationGroupID specifies the capacity reservation group resource id that should be used for allocating the virtual machine.
      void setCredentialsSecret​(io.fabric8.kubernetes.api.model.SecretReference credentialsSecret)
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      void setDataDisks​(List<DataDisk> dataDisks)
      DataDisk specifies the parameters that are used to add one or more data disks to the machine.
      void setDiagnostics​(AzureDiagnostics diagnostics)
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      void setImage​(Image image)
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      void setInternalLoadBalancer​(String internalLoadBalancer)
      InternalLoadBalancerName to use for this instance
      void setKind​(String kind)
      Kind is a string value representing the REST resource this object represents.
      void setLocation​(String location)
      location is the region to use to create the instance
      void setManagedIdentity​(String managedIdentity)
      managedIdentity to set managed identity name
      void setMetadata​(io.fabric8.kubernetes.api.model.ObjectMeta metadata)
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      void setNatRule​(Long natRule)
      natRule to set inbound NAT rule of the load balancer
      void setNetworkResourceGroup​(String networkResourceGroup)
      networkResourceGroup is the resource group for the virtual machine's network
      void setOsDisk​(OSDisk osDisk)
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      void setPublicIP​(Boolean publicIP)
      publicIP if true a public IP will be used
      void setPublicLoadBalancer​(String publicLoadBalancer)
      publicLoadBalancer to use for this instance
      void setResourceGroup​(String resourceGroup)
      resourceGroup is the resource group for the virtual machine
      void setSecurityGroup​(String securityGroup)
      Network Security Group that needs to be attached to the machine's interface.
      void setSecurityProfile​(SecurityProfile securityProfile)
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      void setSpotVMOptions​(SpotVMOptions spotVMOptions)
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      void setSshPublicKey​(String sshPublicKey)
      sshPublicKey is the public key to use to SSH to the virtual machine.
      void setSubnet​(String subnet)
      subnet to use for this instance
      void setTags​(Map<String,​String> tags)
      tags is a list of tags to apply to the machine.
      void setUltraSSDCapability​(String ultraSSDCapability)
      ultraSSDCapability enables or disables Azure UltraSSD capability for a virtual machine.
      void setUserDataSecret​(io.fabric8.kubernetes.api.model.SecretReference userDataSecret)
      AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine.
      void setVmSize​(String vmSize)
      vmSize is the size of the VM to create.
      void setVnet​(String vnet)
      vnet to set virtual network name
      void setZone​(String zone)
      Availability Zone for the virtual machine.
      AzureMachineProviderSpecBuilder toBuilder()  
      • Methods inherited from interface io.fabric8.kubernetes.api.model.HasMetadata

        addFinalizer, addOwnerReference, addOwnerReference, getFinalizers, getFullResourceName, getOwnerReferenceFor, getOwnerReferenceFor, getPlural, getSingular, hasFinalizer, hasOwnerReferenceFor, hasOwnerReferenceFor, initNameAndNamespaceFrom, isFinalizerValid, isMarkedForDeletion, optionalMetadata, removeFinalizer, removeOwnerReference, removeOwnerReference
    • Method Detail

      • getAcceleratedNetworking

        public Boolean getAcceleratedNetworking()
        acceleratedNetworking enables or disables Azure accelerated networking feature. Set to false by default. If true, then this will depend on whether the requested VMSize is supported. If set to true with an unsupported VMSize, Azure will return an error.
      • setAcceleratedNetworking

        public void setAcceleratedNetworking​(Boolean acceleratedNetworking)
        acceleratedNetworking enables or disables Azure accelerated networking feature. Set to false by default. If true, then this will depend on whether the requested VMSize is supported. If set to true with an unsupported VMSize, Azure will return an error.
      • getApiVersion

        public String getApiVersion()
        APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
        Specified by:
        getApiVersion in interface io.fabric8.kubernetes.api.model.HasMetadata
      • setApiVersion

        public void setApiVersion​(String apiVersion)
        APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
        Specified by:
        setApiVersion in interface io.fabric8.kubernetes.api.model.HasMetadata
      • getApplicationSecurityGroups

        public List<String> getApplicationSecurityGroups()
        Application Security Groups that need to be attached to the machine's interface. No application security groups will be attached if zero-length.
      • setApplicationSecurityGroups

        public void setApplicationSecurityGroups​(List<String> applicationSecurityGroups)
        Application Security Groups that need to be attached to the machine's interface. No application security groups will be attached if zero-length.
      • getAvailabilitySet

        public String getAvailabilitySet()
        availabilitySet specifies the availability set to use for this instance. Availability set should be precreated, before using this field.
      • setAvailabilitySet

        public void setAvailabilitySet​(String availabilitySet)
        availabilitySet specifies the availability set to use for this instance. Availability set should be precreated, before using this field.
      • getCapacityReservationGroupID

        public String getCapacityReservationGroupID()
        capacityReservationGroupID specifies the capacity reservation group resource id that should be used for allocating the virtual machine. The field size should be greater than 0 and the field input must start with '/'. The input for capacityReservationGroupID must be similar to '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}'. The keys which are used should be among 'subscriptions', 'providers' and 'resourcegroups' followed by valid ID or names respectively.
      • setCapacityReservationGroupID

        public void setCapacityReservationGroupID​(String capacityReservationGroupID)
        capacityReservationGroupID specifies the capacity reservation group resource id that should be used for allocating the virtual machine. The field size should be greater than 0 and the field input must start with '/'. The input for capacityReservationGroupID must be similar to '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}'. The keys which are used should be among 'subscriptions', 'providers' and 'resourcegroups' followed by valid ID or names respectively.
      • getCredentialsSecret

        public io.fabric8.kubernetes.api.model.SecretReference getCredentialsSecret()
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
      • setCredentialsSecret

        public void setCredentialsSecret​(io.fabric8.kubernetes.api.model.SecretReference credentialsSecret)
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
      • getDataDisks

        public List<DataDisk> getDataDisks()
        DataDisk specifies the parameters that are used to add one or more data disks to the machine.
      • setDataDisks

        public void setDataDisks​(List<DataDisk> dataDisks)
        DataDisk specifies the parameters that are used to add one or more data disks to the machine.
      • getDiagnostics

        public AzureDiagnostics getDiagnostics()
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
      • setDiagnostics

        public void setDiagnostics​(AzureDiagnostics diagnostics)
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
      • getImage

        public Image getImage()
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
      • setImage

        public void setImage​(Image image)
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
      • getInternalLoadBalancer

        public String getInternalLoadBalancer()
        InternalLoadBalancerName to use for this instance
      • setInternalLoadBalancer

        public void setInternalLoadBalancer​(String internalLoadBalancer)
        InternalLoadBalancerName to use for this instance
      • getKind

        public String getKind()
        Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
        Specified by:
        getKind in interface io.fabric8.kubernetes.api.model.HasMetadata
      • setKind

        public void setKind​(String kind)
        Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
      • getLocation

        public String getLocation()
        location is the region to use to create the instance
      • setLocation

        public void setLocation​(String location)
        location is the region to use to create the instance
      • getManagedIdentity

        public String getManagedIdentity()
        managedIdentity to set managed identity name
      • setManagedIdentity

        public void setManagedIdentity​(String managedIdentity)
        managedIdentity to set managed identity name
      • getMetadata

        public io.fabric8.kubernetes.api.model.ObjectMeta getMetadata()
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
        Specified by:
        getMetadata in interface io.fabric8.kubernetes.api.model.HasMetadata
      • setMetadata

        public void setMetadata​(io.fabric8.kubernetes.api.model.ObjectMeta metadata)
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
        Specified by:
        setMetadata in interface io.fabric8.kubernetes.api.model.HasMetadata
      • getNatRule

        public Long getNatRule()
        natRule to set inbound NAT rule of the load balancer
      • setNatRule

        public void setNatRule​(Long natRule)
        natRule to set inbound NAT rule of the load balancer
      • getNetworkResourceGroup

        public String getNetworkResourceGroup()
        networkResourceGroup is the resource group for the virtual machine's network
      • setNetworkResourceGroup

        public void setNetworkResourceGroup​(String networkResourceGroup)
        networkResourceGroup is the resource group for the virtual machine's network
      • getOsDisk

        public OSDisk getOsDisk()
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
      • setOsDisk

        public void setOsDisk​(OSDisk osDisk)
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
      • getPublicIP

        public Boolean getPublicIP()
        publicIP if true a public IP will be used
      • setPublicIP

        public void setPublicIP​(Boolean publicIP)
        publicIP if true a public IP will be used
      • getPublicLoadBalancer

        public String getPublicLoadBalancer()
        publicLoadBalancer to use for this instance
      • setPublicLoadBalancer

        public void setPublicLoadBalancer​(String publicLoadBalancer)
        publicLoadBalancer to use for this instance
      • getResourceGroup

        public String getResourceGroup()
        resourceGroup is the resource group for the virtual machine
      • setResourceGroup

        public void setResourceGroup​(String resourceGroup)
        resourceGroup is the resource group for the virtual machine
      • getSecurityGroup

        public String getSecurityGroup()
        Network Security Group that needs to be attached to the machine's interface. No security group will be attached if empty.
      • setSecurityGroup

        public void setSecurityGroup​(String securityGroup)
        Network Security Group that needs to be attached to the machine's interface. No security group will be attached if empty.
      • getSecurityProfile

        public SecurityProfile getSecurityProfile()
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
      • setSecurityProfile

        public void setSecurityProfile​(SecurityProfile securityProfile)
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
      • getSpotVMOptions

        public SpotVMOptions getSpotVMOptions()
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
      • setSpotVMOptions

        public void setSpotVMOptions​(SpotVMOptions spotVMOptions)
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
      • getSshPublicKey

        public String getSshPublicKey()
        sshPublicKey is the public key to use to SSH to the virtual machine.
      • setSshPublicKey

        public void setSshPublicKey​(String sshPublicKey)
        sshPublicKey is the public key to use to SSH to the virtual machine.
      • getSubnet

        public String getSubnet()
        subnet to use for this instance
      • setSubnet

        public void setSubnet​(String subnet)
        subnet to use for this instance
      • getTags

        public Map<String,​String> getTags()
        tags is a list of tags to apply to the machine.
      • setTags

        public void setTags​(Map<String,​String> tags)
        tags is a list of tags to apply to the machine.
      • getUltraSSDCapability

        public String getUltraSSDCapability()
        ultraSSDCapability enables or disables Azure UltraSSD capability for a virtual machine. This can be used to allow/disallow binding of Azure UltraSSD to the Machine both as Data Disks or via Persistent Volumes. This Azure feature is subject to a specific scope and certain limitations. More informations on this can be found in the official Azure documentation for Ultra Disks: (https://docs.microsoft.com/en-us/azure/virtual-machines/disks-enable-ultra-ssd?tabs=azure-portal#ga-scope-and-limitations).


        When omitted, if at least one Data Disk of type UltraSSD is specified, the platform will automatically enable the capability. If a Perisistent Volume backed by an UltraSSD is bound to a Pod on the Machine, when this field is ommitted, the platform will *not* automatically enable the capability (unless already enabled by the presence of an UltraSSD as Data Disk). This may manifest in the Pod being stuck in `ContainerCreating` phase. This defaulting behaviour may be subject to change in future.


        When set to "Enabled", if the capability is available for the Machine based on the scope and limitations described above, the capability will be set on the Machine. This will thus allow UltraSSD both as Data Disks and Persistent Volumes. If set to "Enabled" when the capability can't be available due to scope and limitations, the Machine will go into "Failed" state.


        When set to "Disabled", UltraSSDs will not be allowed either as Data Disks nor as Persistent Volumes. In this case if any UltraSSDs are specified as Data Disks on a Machine, the Machine will go into a "Failed" state. If instead any UltraSSDs are backing the volumes (via Persistent Volumes) of any Pods scheduled on a Node which is backed by the Machine, the Pod may get stuck in `ContainerCreating` phase.

      • setUltraSSDCapability

        public void setUltraSSDCapability​(String ultraSSDCapability)
        ultraSSDCapability enables or disables Azure UltraSSD capability for a virtual machine. This can be used to allow/disallow binding of Azure UltraSSD to the Machine both as Data Disks or via Persistent Volumes. This Azure feature is subject to a specific scope and certain limitations. More informations on this can be found in the official Azure documentation for Ultra Disks: (https://docs.microsoft.com/en-us/azure/virtual-machines/disks-enable-ultra-ssd?tabs=azure-portal#ga-scope-and-limitations).


        When omitted, if at least one Data Disk of type UltraSSD is specified, the platform will automatically enable the capability. If a Perisistent Volume backed by an UltraSSD is bound to a Pod on the Machine, when this field is ommitted, the platform will *not* automatically enable the capability (unless already enabled by the presence of an UltraSSD as Data Disk). This may manifest in the Pod being stuck in `ContainerCreating` phase. This defaulting behaviour may be subject to change in future.


        When set to "Enabled", if the capability is available for the Machine based on the scope and limitations described above, the capability will be set on the Machine. This will thus allow UltraSSD both as Data Disks and Persistent Volumes. If set to "Enabled" when the capability can't be available due to scope and limitations, the Machine will go into "Failed" state.


        When set to "Disabled", UltraSSDs will not be allowed either as Data Disks nor as Persistent Volumes. In this case if any UltraSSDs are specified as Data Disks on a Machine, the Machine will go into a "Failed" state. If instead any UltraSSDs are backing the volumes (via Persistent Volumes) of any Pods scheduled on a Node which is backed by the Machine, the Pod may get stuck in `ContainerCreating` phase.

      • getUserDataSecret

        public io.fabric8.kubernetes.api.model.SecretReference getUserDataSecret()
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
      • setUserDataSecret

        public void setUserDataSecret​(io.fabric8.kubernetes.api.model.SecretReference userDataSecret)
        AzureMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an Azure virtual machine. It is used by the Azure machine actuator to create a single Machine. Required parameters such as location that are not specified by this configuration, will be defaulted by the actuator. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
      • getVmSize

        public String getVmSize()
        vmSize is the size of the VM to create.
      • setVmSize

        public void setVmSize​(String vmSize)
        vmSize is the size of the VM to create.
      • getVnet

        public String getVnet()
        vnet to set virtual network name
      • setVnet

        public void setVnet​(String vnet)
        vnet to set virtual network name
      • getZone

        public String getZone()
        Availability Zone for the virtual machine. If nil, the virtual machine should be deployed to no zone
      • setZone

        public void setZone​(String zone)
        Availability Zone for the virtual machine. If nil, the virtual machine should be deployed to no zone
      • getAdditionalProperties

        public Map<String,​Object> getAdditionalProperties()
      • setAdditionalProperty

        public void setAdditionalProperty​(String name,
                                          Object value)
      • setAdditionalProperties

        public void setAdditionalProperties​(Map<String,​Object> additionalProperties)