Documentation ¶
Overview ¶
Package v1alpha3 contains API Schema definitions for the exp v1alpha3 API group +kubebuilder:object:generate=true +groupName=exp.infrastructure.cluster.x-k8s.io
Index ¶
- Variables
- type AzureMachinePool
- func (in *AzureMachinePool) DeepCopy() *AzureMachinePool
- func (in *AzureMachinePool) DeepCopyInto(out *AzureMachinePool)
- func (in *AzureMachinePool) DeepCopyObject() runtime.Object
- func (amp *AzureMachinePool) GetConditions() clusterv1.Conditions
- func (amp *AzureMachinePool) SetConditions(conditions clusterv1.Conditions)
- type AzureMachinePoolInstanceStatus
- type AzureMachinePoolList
- type AzureMachinePoolSpec
- type AzureMachinePoolStatus
- type AzureMachineTemplate
- type VMSS
- type VMSSVM
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "exp.infrastructure.cluster.x-k8s.io", Version: "v1alpha3"} // AddToScheme is used by the generated client. AddToScheme = schemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{ Group: GroupVersion.Group, Version: GroupVersion.Version, }
SchemeGroupVersion is group version used to register these objects
Functions ¶
This section is empty.
Types ¶
type AzureMachinePool ¶
type AzureMachinePool struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AzureMachinePoolSpec `json:"spec,omitempty"` Status AzureMachinePoolStatus `json:"status,omitempty"` }
AzureMachinePool is the Schema for the azuremachinepools API
func (*AzureMachinePool) DeepCopy ¶
func (in *AzureMachinePool) DeepCopy() *AzureMachinePool
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMachinePool.
func (*AzureMachinePool) DeepCopyInto ¶
func (in *AzureMachinePool) DeepCopyInto(out *AzureMachinePool)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureMachinePool) DeepCopyObject ¶
func (in *AzureMachinePool) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureMachinePool) GetConditions ¶
func (amp *AzureMachinePool) GetConditions() clusterv1.Conditions
GetConditions returns the list of conditions for an AzureMachinePool API object.
func (*AzureMachinePool) SetConditions ¶
func (amp *AzureMachinePool) SetConditions(conditions clusterv1.Conditions)
SetConditions will set the given conditions on an AzureMachinePool object
type AzureMachinePoolInstanceStatus ¶
type AzureMachinePoolInstanceStatus struct { // Version defines the Kubernetes version for the VM Instance // +optional Version string `json:"version"` // ProvisioningState is the provisioning state of the Azure virtual machine instance. // +optional ProvisioningState *infrav1.VMState `json:"provisioningState"` // ProviderID is the provider identification of the VMSS Instance // +optional ProviderID string `json:"providerID"` // InstanceID is the identification of the Machine Instance within the VMSS // +optional InstanceID string `json:"instanceID"` // InstanceName is the name of the Machine Instance within the VMSS // +optional InstanceName string `json:"instanceName"` // LatestModelApplied 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. LatestModelApplied bool `json:"latestModelApplied"` }
AzureMachinePoolInstanceStatus provides status information for each instance in the VMSS
func (*AzureMachinePoolInstanceStatus) DeepCopy ¶
func (in *AzureMachinePoolInstanceStatus) DeepCopy() *AzureMachinePoolInstanceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMachinePoolInstanceStatus.
func (*AzureMachinePoolInstanceStatus) DeepCopyInto ¶
func (in *AzureMachinePoolInstanceStatus) DeepCopyInto(out *AzureMachinePoolInstanceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureMachinePoolList ¶
type AzureMachinePoolList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AzureMachinePool `json:"items"` }
AzureMachinePoolList contains a list of AzureMachinePool
func (*AzureMachinePoolList) DeepCopy ¶
func (in *AzureMachinePoolList) DeepCopy() *AzureMachinePoolList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMachinePoolList.
func (*AzureMachinePoolList) DeepCopyInto ¶
func (in *AzureMachinePoolList) DeepCopyInto(out *AzureMachinePoolList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureMachinePoolList) DeepCopyObject ¶
func (in *AzureMachinePoolList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AzureMachinePoolSpec ¶
type AzureMachinePoolSpec struct { // Location is the Azure region location e.g. westus2 Location string `json:"location"` // Template contains the details used to build a replica virtual machine within the Machine Pool Template AzureMachineTemplate `json:"template"` // AdditionalTags 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. // +optional AdditionalTags infrav1.Tags `json:"additionalTags,omitempty"` // ProviderID is the identification ID of the Virtual Machine Scale Set // +optional ProviderID string `json:"providerID,omitempty"` // ProviderIDList 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. // +optional ProviderIDList []string `json:"providerIDList,omitempty"` // Identity 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 VM // +kubebuilder:default=None // +optional Identity infrav1.VMIdentity `json:"identity,omitempty"` // UserAssignedIdentities 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://docs.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/how-to-manage-ua-identity-cli // +optional UserAssignedIdentities []infrav1.UserAssignedIdentity `json:"userAssignedIdentities,omitempty"` // RoleAssignmentName is the name of the role assignment to create for a system assigned identity. It can be any valid GUID. // If not specified, a random GUID will be generated. // +optional RoleAssignmentName string `json:"roleAssignmentName,omitempty"` }
AzureMachinePoolSpec defines the desired state of AzureMachinePool
func (*AzureMachinePoolSpec) DeepCopy ¶
func (in *AzureMachinePoolSpec) DeepCopy() *AzureMachinePoolSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMachinePoolSpec.
func (*AzureMachinePoolSpec) DeepCopyInto ¶
func (in *AzureMachinePoolSpec) DeepCopyInto(out *AzureMachinePoolSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureMachinePoolStatus ¶
type AzureMachinePoolStatus struct { // Ready is true when the provider resource is ready. // +optional Ready bool `json:"ready"` // Replicas is the most recently observed number of replicas. // +optional Replicas int32 `json:"replicas"` // Instances is the VM instance status for each VM in the VMSS // +optional Instances []*AzureMachinePoolInstanceStatus `json:"instances,omitempty"` // Version is the Kubernetes version for the current VMSS model // +optional Version string `json:"version"` // ProvisioningState is the provisioning state of the Azure virtual machine. // +optional ProvisioningState *infrav1.VMState `json:"provisioningState,omitempty"` // FailureReason 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. // +optional FailureReason *errors.MachineStatusError `json:"failureReason,omitempty"` // FailureMessage 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. // +optional FailureMessage *string `json:"failureMessage,omitempty"` // Conditions defines current service state of the AzureMachinePool. // +optional Conditions clusterv1.Conditions `json:"conditions,omitempty"` // LongRunningOperationState saves the state for an Azure long running operations so it can be continued on the // next reconciliation loop. // +optional LongRunningOperationState *infrav1.Future `json:"longRunningOperationState,omitempty"` }
AzureMachinePoolStatus defines the observed state of AzureMachinePool
func (*AzureMachinePoolStatus) DeepCopy ¶
func (in *AzureMachinePoolStatus) DeepCopy() *AzureMachinePoolStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMachinePoolStatus.
func (*AzureMachinePoolStatus) DeepCopyInto ¶
func (in *AzureMachinePoolStatus) DeepCopyInto(out *AzureMachinePoolStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureMachineTemplate ¶
type AzureMachineTemplate struct { // VMSize is the size of the Virtual Machine to build. // See https://docs.microsoft.com/en-us/rest/api/compute/virtualmachines/createorupdate#virtualmachinesizetypes VMSize string `json:"vmSize"` // Image is used to provide details of an image to use during Virtual Machine creation. // If image details are omitted the image will default the Azure Marketplace "capi" offer, // which is based on Ubuntu. // +kubebuilder:validation:nullable // +optional Image *infrav1.Image `json:"image,omitempty"` // OSDisk contains the operating system disk information for a Virtual Machine OSDisk infrav1.OSDisk `json:"osDisk"` // DataDisks specifies the list of data disks to be created for a Virtual Machine // +optional DataDisks []infrav1.DataDisk `json:"dataDisks,omitempty"` // SSHPublicKey is the SSH public key string base64 encoded to add to a Virtual Machine SSHPublicKey string `json:"sshPublicKey"` // AcceleratedNetworking enables or disables Azure accelerated networking. If omitted, it will be set based on // whether the requested VMSize supports accelerated networking. // If AcceleratedNetworking is set to true with a VMSize that does not support it, Azure will return an error. // +optional AcceleratedNetworking *bool `json:"acceleratedNetworking,omitempty"` // TerminateNotificationTimeout enables or disables VMSS scheduled events termination notification with specified timeout // allowed values are between 5 and 15 (mins) // +optional TerminateNotificationTimeout *int `json:"terminateNotificationTimeout,omitempty"` // SecurityProfile specifies the Security profile settings for a virtual machine. // +optional SecurityProfile *infrav1.SecurityProfile `json:"securityProfile,omitempty"` // SpotVMOptions allows the ability to specify the Machine should use a Spot VM // +optional SpotVMOptions *infrav1.SpotVMOptions `json:"spotVMOptions,omitempty"` }
AzureMachineTemplate defines the template for an AzureMachine.
func (*AzureMachineTemplate) DeepCopy ¶
func (in *AzureMachineTemplate) DeepCopy() *AzureMachineTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMachineTemplate.
func (*AzureMachineTemplate) DeepCopyInto ¶
func (in *AzureMachineTemplate) DeepCopyInto(out *AzureMachineTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VMSS ¶
type VMSS struct { ID string `json:"id,omitempty"` Name string `json:"name,omitempty"` Sku string `json:"sku,omitempty"` Capacity int64 `json:"capacity,omitempty"` Zones []string `json:"zones,omitempty"` Image infrav1.Image `json:"image,omitempty"` State infrav1.VMState `json:"vmState,omitempty"` Identity infrav1.VMIdentity `json:"identity,omitempty"` Tags infrav1.Tags `json:"tags,omitempty"` Instances []VMSSVM `json:"instances,omitempty"` }
VMSS defines a virtual machine scale set.
func (*VMSS) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VMSS.
func (*VMSS) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VMSSVM ¶
type VMSSVM struct { ID string `json:"id,omitempty"` InstanceID string `json:"instanceID,omitempty"` Name string `json:"name,omitempty"` AvailabilityZone string `json:"availabilityZone,omitempty"` State infrav1.VMState `json:"vmState,omitempty"` LatestModelApplied bool `json:"latestModelApplied,omitempty"` }
VMSSVM defines a VM in a virtual machine scale set.
func (*VMSSVM) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VMSSVM.
func (*VMSSVM) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.