Documentation
¶
Overview ¶
+groupName=infrastructure.cluster.x-k8s.io
Index ¶
- Constants
- Variables
- func ClusterAzureCloudProviderTagKey(name string) string
- func ClusterTagKey(name string) string
- func IsTerminalProvisioningState(state ProvisioningState) bool
- func Kind(kind string) schema.GroupKind
- func Resource(resource string) schema.GroupResource
- func SpecVersionHashTagKey() string
- func ValidateAzureMachineSpec(spec AzureMachineSpec) field.ErrorList
- func ValidateCapacityReservationGroupID(capacityReservationGroupID *string, fldPath *field.Path) field.ErrorList
- func ValidateConfidentialCompute(managedDisk *ManagedDiskParameters, profile *SecurityProfile, ...) field.ErrorList
- func ValidateDataDisks(dataDisks []DataDisk, fieldPath *field.Path) field.ErrorList
- func ValidateDataDisksUpdate(oldDataDisks, newDataDisks []DataDisk, fieldPath *field.Path) field.ErrorList
- func ValidateDiagnostics(diagnostics *Diagnostics, fieldPath *field.Path) field.ErrorList
- func ValidateImage(image *Image, fldPath *field.Path) field.ErrorList
- func ValidateNetwork(subnetName string, acceleratedNetworking *bool, ...) field.ErrorList
- func ValidateOSDisk(osDisk OSDisk, fieldPath *field.Path) field.ErrorList
- func ValidateSSHKey(sshKey string, fldPath *field.Path) field.ErrorList
- func ValidateSystemAssignedIdentity(identityType VMIdentity, oldIdentity, newIdentity string, fldPath *field.Path) field.ErrorList
- func ValidateSystemAssignedIdentityRole(identityType VMIdentity, roleAssignmentName string, ...) field.ErrorList
- func ValidateUserAssignedIdentity(identityType VMIdentity, userAssignedIdentities []UserAssignedIdentity, ...) field.ErrorList
- func ValidateVMExtensions(disableExtensionOperations *bool, vmExtensions []VMExtension, ...) field.ErrorList
- type AADProfile
- type AKSAssignedIdentity
- type AKSExtension
- type AKSSku
- type APIServerAccessProfile
- type APIServerAccessProfileClassSpec
- type AdditionalCapabilities
- type AddonProfile
- type AddressRecord
- type AllowedNamespaces
- type AutoScalerProfile
- type AzureBastion
- type AzureBastionTemplateSpec
- type AzureCluster
- func (in *AzureCluster) DeepCopy() *AzureCluster
- func (in *AzureCluster) DeepCopyInto(out *AzureCluster)
- func (in *AzureCluster) DeepCopyObject() runtime.Object
- func (c *AzureCluster) Default()
- func (c *AzureCluster) GetConditions() clusterv1.Conditions
- func (c *AzureCluster) GetFutures() Futures
- func (*AzureCluster) Hub()
- func (c *AzureCluster) SetAPIServerLBBackendPoolNameDefault()
- func (c *AzureCluster) SetBackendPoolNameDefault()
- func (c *AzureCluster) SetConditions(conditions clusterv1.Conditions)
- func (c *AzureCluster) SetControlPlaneOutboundLBBackendPoolNameDefault()
- func (c *AzureCluster) SetControlPlaneOutboundLBDefaults()
- func (c *AzureCluster) SetFutures(futures Futures)
- func (c *AzureCluster) SetNodeOutboundLBBackendPoolNameDefault()
- func (c *AzureCluster) SetNodeOutboundLBDefaults()
- func (c *AzureCluster) ValidateCreate() (jjjWarnings, error)
- func (c *AzureCluster) ValidateDelete() (jjjWarnings, error)
- func (c *AzureCluster) ValidateUpdate(oldRaw runtime.Object) (jjjWarnings, error)
- type AzureClusterClassSpec
- type AzureClusterIdentity
- func (in *AzureClusterIdentity) DeepCopy() *AzureClusterIdentity
- func (in *AzureClusterIdentity) DeepCopyInto(out *AzureClusterIdentity)
- func (in *AzureClusterIdentity) DeepCopyObject() runtime.Object
- func (c *AzureClusterIdentity) GetConditions() clusterv1.Conditions
- func (*AzureClusterIdentity) Hub()
- func (c *AzureClusterIdentity) SetConditions(conditions clusterv1.Conditions)
- func (c *AzureClusterIdentity) ValidateCreate() (jjjWarnings, error)
- func (c *AzureClusterIdentity) ValidateDelete() (jjjWarnings, error)
- func (c *AzureClusterIdentity) ValidateUpdate(oldRaw runtime.Object) (jjjWarnings, error)
- type AzureClusterIdentityList
- type AzureClusterIdentitySpec
- type AzureClusterIdentityStatus
- type AzureClusterList
- type AzureClusterSpec
- type AzureClusterStatus
- type AzureClusterTemplate
- func (in *AzureClusterTemplate) DeepCopy() *AzureClusterTemplate
- func (in *AzureClusterTemplate) DeepCopyInto(out *AzureClusterTemplate)
- func (in *AzureClusterTemplate) DeepCopyObject() runtime.Object
- func (c *AzureClusterTemplate) Default()
- func (*AzureClusterTemplate) Hub()
- func (c *AzureClusterTemplate) ValidateCreate() (jjjWarnings, error)
- func (c *AzureClusterTemplate) ValidateDelete() (jjjWarnings, error)
- func (c *AzureClusterTemplate) ValidateUpdate(oldRaw runtime.Object) (jjjWarnings, error)
- type AzureClusterTemplateList
- type AzureClusterTemplateResource
- type AzureClusterTemplateResourceSpec
- type AzureClusterTemplateSpec
- type AzureComputeGalleryImage
- type AzureKeyVaultKms
- type AzureMachine
- func (in *AzureMachine) DeepCopy() *AzureMachine
- func (in *AzureMachine) DeepCopyInto(out *AzureMachine)
- func (in *AzureMachine) DeepCopyObject() runtime.Object
- func (m *AzureMachine) GetConditions() clusterv1.Conditions
- func (m *AzureMachine) GetFutures() Futures
- func (*AzureMachine) Hub()
- func (m *AzureMachine) SetConditions(conditions clusterv1.Conditions)
- func (m *AzureMachine) SetFutures(futures Futures)
- type AzureMachineList
- type AzureMachineSpec
- func (in *AzureMachineSpec) DeepCopy() *AzureMachineSpec
- func (in *AzureMachineSpec) DeepCopyInto(out *AzureMachineSpec)
- func (s *AzureMachineSpec) SetDataDisksDefaults()
- func (s *AzureMachineSpec) SetDefaultCachingType()
- func (s *AzureMachineSpec) SetDefaultSSHPublicKey() error
- func (s *AzureMachineSpec) SetDiagnosticsDefaults()
- func (s *AzureMachineSpec) SetIdentityDefaults(subscriptionID string)
- func (s *AzureMachineSpec) SetNetworkInterfacesDefaults()
- func (s *AzureMachineSpec) SetSpotEvictionPolicyDefaults()
- type AzureMachineStatus
- type AzureMachineTemplate
- func (in *AzureMachineTemplate) DeepCopy() *AzureMachineTemplate
- func (in *AzureMachineTemplate) DeepCopyInto(out *AzureMachineTemplate)
- func (in *AzureMachineTemplate) DeepCopyObject() runtime.Object
- func (*AzureMachineTemplate) Hub()
- func (r *AzureMachineTemplate) ValidateCreate(ctx context.Context, obj runtime.Object) (jjjWarnings, error)
- func (r *AzureMachineTemplate) ValidateDelete(ctx context.Context, obj runtime.Object) (jjjWarnings, error)
- type AzureMachineTemplateList
- type AzureMachineTemplateResource
- type AzureMachineTemplateSpec
- type AzureManagedCluster
- func (in *AzureManagedCluster) DeepCopy() *AzureManagedCluster
- func (in *AzureManagedCluster) DeepCopyInto(out *AzureManagedCluster)
- func (in *AzureManagedCluster) DeepCopyObject() runtime.Object
- func (*AzureManagedCluster) Hub()
- func (r *AzureManagedCluster) ValidateCreate() (jjjWarnings, error)
- func (r *AzureManagedCluster) ValidateDelete() (jjjWarnings, error)
- func (r *AzureManagedCluster) ValidateUpdate(oldRaw runtime.Object) (jjjWarnings, error)
- type AzureManagedClusterList
- type AzureManagedClusterSpec
- type AzureManagedClusterStatus
- type AzureManagedClusterTemplate
- func (in *AzureManagedClusterTemplate) DeepCopy() *AzureManagedClusterTemplate
- func (in *AzureManagedClusterTemplate) DeepCopyInto(out *AzureManagedClusterTemplate)
- func (in *AzureManagedClusterTemplate) DeepCopyObject() runtime.Object
- func (r *AzureManagedClusterTemplate) ValidateCreate() (jjjWarnings, error)
- func (r *AzureManagedClusterTemplate) ValidateDelete() (jjjWarnings, error)
- func (r *AzureManagedClusterTemplate) ValidateUpdate(_ runtime.Object) (jjjWarnings, error)
- type AzureManagedClusterTemplateList
- type AzureManagedClusterTemplateResource
- type AzureManagedClusterTemplateResourceSpec
- type AzureManagedClusterTemplateSpec
- type AzureManagedControlPlane
- func (in *AzureManagedControlPlane) DeepCopy() *AzureManagedControlPlane
- func (in *AzureManagedControlPlane) DeepCopyInto(out *AzureManagedControlPlane)
- func (in *AzureManagedControlPlane) DeepCopyObject() runtime.Object
- func (m *AzureManagedControlPlane) GetConditions() clusterv1.Conditions
- func (m *AzureManagedControlPlane) GetFutures() Futures
- func (*AzureManagedControlPlane) Hub()
- func (m *AzureManagedControlPlane) SetConditions(conditions clusterv1.Conditions)
- func (m *AzureManagedControlPlane) SetFutures(futures Futures)
- type AzureManagedControlPlaneClassSpec
- type AzureManagedControlPlaneList
- type AzureManagedControlPlaneSkuTier
- type AzureManagedControlPlaneSpec
- type AzureManagedControlPlaneStatus
- type AzureManagedControlPlaneTemplate
- type AzureManagedControlPlaneTemplateList
- type AzureManagedControlPlaneTemplateMachineTemplate
- type AzureManagedControlPlaneTemplateResource
- type AzureManagedControlPlaneTemplateResourceSpec
- type AzureManagedControlPlaneTemplateSpec
- type AzureManagedMachinePool
- func (in *AzureManagedMachinePool) DeepCopy() *AzureManagedMachinePool
- func (in *AzureManagedMachinePool) DeepCopyInto(out *AzureManagedMachinePool)
- func (in *AzureManagedMachinePool) DeepCopyObject() runtime.Object
- func (m *AzureManagedMachinePool) GetConditions() clusterv1.Conditions
- func (m *AzureManagedMachinePool) GetFutures() Futures
- func (*AzureManagedMachinePool) Hub()
- func (m *AzureManagedMachinePool) SetConditions(conditions clusterv1.Conditions)
- func (m *AzureManagedMachinePool) SetFutures(futures Futures)
- type AzureManagedMachinePoolClassSpec
- type AzureManagedMachinePoolList
- type AzureManagedMachinePoolSpec
- type AzureManagedMachinePoolStatus
- type AzureManagedMachinePoolTemplate
- type AzureManagedMachinePoolTemplateList
- type AzureManagedMachinePoolTemplateResource
- type AzureManagedMachinePoolTemplateResourceSpec
- type AzureManagedMachinePoolTemplateSpec
- type AzureMarketplaceImage
- type AzureSharedGalleryImage
- type BackOffConfig
- type BackendPool
- type BalanceSimilarNodeGroups
- type BastionHostSkuName
- type BastionSpec
- type BastionTemplateSpec
- type BootDiagnostics
- type BootDiagnosticsStorageAccountType
- type BuildParams
- type CPUManagerPolicy
- type CloudProviderConfigOverrides
- type DataDisk
- type Diagnostics
- type DiffDiskPlacement
- type DiffDiskSettings
- type DiskEncryptionSetParameters
- type Expander
- type ExtendedLocationSpec
- type ExtensionIdentity
- type ExtensionPlan
- type ExtensionScope
- type ExtensionScopeType
- type FleetsMember
- type FleetsMemberClassSpec
- type FrontendIP
- type FrontendIPClass
- type Future
- type Futures
- type HTTPProxyConfig
- type IPTag
- type Identity
- type IdentityType
- type Image
- type ImagePlan
- type KeyVaultNetworkAccessTypes
- type KubeletConfig
- type KubeletDiskType
- type LBType
- type LinuxOSConfig
- type LoadBalancerClassSpec
- type LoadBalancerProfile
- type LoadBalancerSpec
- type ManagedClusterAutoUpgradeProfile
- type ManagedClusterSecurityProfile
- type ManagedClusterSecurityProfileDefender
- type ManagedClusterSecurityProfileDefenderSecurityMonitoring
- type ManagedClusterSecurityProfileImageCleaner
- type ManagedClusterSecurityProfileWorkloadIdentity
- type ManagedControlPlaneIdentityType
- type ManagedControlPlaneOutboundType
- type ManagedControlPlaneSubnet
- type ManagedControlPlaneVirtualNetwork
- type ManagedControlPlaneVirtualNetworkClassSpec
- type ManagedDiskParameters
- type ManagedMachinePoolScaling
- type NatGateway
- type NatGatewayClassSpec
- type NetworkClassSpec
- type NetworkDataplaneType
- type NetworkInterface
- type NetworkPluginMode
- type NetworkSpec
- func (in *NetworkSpec) DeepCopy() *NetworkSpec
- func (in *NetworkSpec) DeepCopyInto(out *NetworkSpec)
- func (n *NetworkSpec) GetControlPlaneSubnet() (SubnetSpec, error)
- func (n *NetworkSpec) GetSubnet(role SubnetRole) (SubnetSpec, error)
- func (n *NetworkSpec) UpdateControlPlaneSubnet(subnet SubnetSpec)
- func (n *NetworkSpec) UpdateSubnet(subnet SubnetSpec, role SubnetRole)
- type NetworkTemplateSpec
- func (in *NetworkTemplateSpec) DeepCopy() *NetworkTemplateSpec
- func (in *NetworkTemplateSpec) DeepCopyInto(out *NetworkTemplateSpec)
- func (n *NetworkTemplateSpec) GetSubnetTemplate(role SubnetRole) (SubnetTemplateSpec, error)
- func (n *NetworkTemplateSpec) UpdateSubnetTemplate(subnet SubnetTemplateSpec, role SubnetRole)
- type NodePoolMode
- type OIDCIssuerProfile
- type OIDCIssuerProfileStatus
- type OSDisk
- type OrchestrationModeType
- type PrivateEndpointSpec
- type PrivateEndpoints
- type PrivateLinkServiceConnection
- type ProvisioningState
- type PublicIPSpec
- type RateLimitConfig
- type RateLimitSpec
- type ResourceLifecycle
- type RouteTable
- type SKU
- type SecurityEncryptionType
- type SecurityGroup
- type SecurityGroupClass
- type SecurityGroupProtocol
- type SecurityProfile
- type SecurityRule
- type SecurityRuleAccess
- type SecurityRuleDirection
- type SecurityRules
- type SecurityTypes
- type ServiceEndpointSpec
- type ServiceEndpoints
- type SkipNodesWithLocalStorage
- type SkipNodesWithSystemPods
- type SpotEvictionPolicy
- type SpotVMOptions
- type SubnetClassSpec
- type SubnetRole
- type SubnetSpec
- type SubnetTemplateSpec
- type SubnetTemplatesSpec
- type Subnets
- type SysctlConfig
- type SystemAssignedIdentityRole
- type Tags
- func (t Tags) AddSpecVersionHashTag(hash string) Tags
- func (in Tags) DeepCopy() Tags
- func (in Tags) DeepCopyInto(out *Tags)
- func (t Tags) Difference(other Tags) Tags
- func (t Tags) Equals(other Tags) bool
- func (t Tags) GetRole() string
- func (t Tags) HasAzureCloudProviderOwned(cluster string) bool
- func (t Tags) HasMatchingSpecVersionHash(hash string) bool
- func (t Tags) HasOwned(cluster string) bool
- func (t Tags) Merge(other Tags)
- type Taint
- type TaintEffect
- type Taints
- type TopologyManagerPolicy
- type TransparentHugePageOption
- type UefiSettings
- type UpgradeChannel
- type UserAssignedIdentity
- type UserManagedBootDiagnostics
- type VMDiskSecurityProfile
- type VMExtension
- type VMIdentity
- type VMState
- type VnetClassSpec
- type VnetPeeringClassSpec
- type VnetPeeringProperties
- type VnetPeeringSpec
- type VnetPeerings
- type VnetPeeringsTemplateSpec
- type VnetSpec
- type VnetTemplateSpec
Constants ¶
const ( // DefaultVnetCIDR is the default Vnet CIDR. DefaultVnetCIDR = "10.0.0.0/8" // DefaultControlPlaneSubnetCIDR is the default Control Plane Subnet CIDR. DefaultControlPlaneSubnetCIDR = "10.0.0.0/16" // DefaultNodeSubnetCIDR is the default Node Subnet CIDR. DefaultNodeSubnetCIDR = "10.1.0.0/16" // DefaultClusterSubnetCIDR is the default Cluster Subnet CIDR. DefaultClusterSubnetCIDR = "10.0.0.0/16" // DefaultNodeSubnetCIDRPattern is the pattern that will be used to generate the default subnets CIDRs. DefaultNodeSubnetCIDRPattern = "10.%d.0.0/16" // DefaultAzureBastionSubnetCIDR is the default Subnet CIDR for AzureBastion. DefaultAzureBastionSubnetCIDR = "10.255.255.224/27" // DefaultAzureBastionSubnetName is the default Subnet Name for AzureBastion. DefaultAzureBastionSubnetName = "AzureBastionSubnet" // DefaultAzureBastionSubnetRole is the default Subnet role for AzureBastion. DefaultAzureBastionSubnetRole = SubnetBastion // DefaultInternalLBIPAddress is the default internal load balancer ip address. DefaultInternalLBIPAddress = "10.0.0.100" // DefaultOutboundRuleIdleTimeoutInMinutes is the default for IdleTimeoutInMinutes for the load balancer. DefaultOutboundRuleIdleTimeoutInMinutes = 4 // DefaultAzureCloud is the public cloud that will be used by most users. DefaultAzureCloud = "AzurePublicCloud" )
const ( // ClusterFinalizer allows ReconcileAzureCluster to clean up Azure resources associated with AzureCluster before // removing it from the apiserver. ClusterFinalizer = "azurecluster.infrastructure.cluster.x-k8s.io" // ClusterLabelNamespace indicates the namespace of the cluster. ClusterLabelNamespace = "azurecluster.infrastructure.cluster.x-k8s.io/cluster-namespace" )
const ( // MaxLoadBalancerOutboundIPs is the maximum number of outbound IPs in a Standard LoadBalancer frontend configuration. MaxLoadBalancerOutboundIPs = 16 // MinLBIdleTimeoutInMinutes is the minimum number of minutes for the LB idle timeout. MinLBIdleTimeoutInMinutes = 4 // MaxLBIdleTimeoutInMinutes is the maximum number of minutes for the LB idle timeout. MaxLBIdleTimeoutInMinutes = 30 )
const ( AzureMachineTemplateImmutableMsg = "" /* 174-byte string literal not displayed */ AzureMachineTemplateRoleAssignmentNameMsg = "AzureMachineTemplate spec.template.spec.roleAssignmentName field can't be set" AzureMachineTemplateSystemAssignedIdentityRoleNameMsg = "AzureMachineTemplate spec.template.spec.systemAssignedIdentityRole.name field can't be set" )
AzureMachineTemplateImmutableMsg ...
const ( // ManagedClusterFinalizer allows Reconcile to clean up Azure resources associated with the AzureManagedControlPlane before // removing it from the apiserver. ManagedClusterFinalizer = "azuremanagedcontrolplane.infrastructure.cluster.x-k8s.io" // PrivateDNSZoneModeSystem represents mode System for azuremanagedcontrolplane. PrivateDNSZoneModeSystem string = "System" // PrivateDNSZoneModeNone represents mode None for azuremanagedcontrolplane. PrivateDNSZoneModeNone string = "None" )
const ( // LoadBalancerSKUStandard is the Standard load balancer SKU. LoadBalancerSKUStandard = "Standard" // LoadBalancerSKUBasic is the Basic load balancer SKU. LoadBalancerSKUBasic = "Basic" )
const ( // LabelAgentPoolMode represents mode of an agent pool. Possible values include: System, User. LabelAgentPoolMode = "azuremanagedmachinepool.infrastructure.cluster.x-k8s.io/agentpoolmode" // NodePoolModeSystem represents mode system for azuremachinepool. NodePoolModeSystem NodePoolMode = "System" // NodePoolModeUser represents mode user for azuremachinepool. NodePoolModeUser NodePoolMode = "User" // DefaultOSType represents the default operating system for azmachinepool. DefaultOSType string = LinuxOS )
const ( // NetworkInfrastructureReadyCondition reports of current status of cluster infrastructure. NetworkInfrastructureReadyCondition clusterv1.ConditionType = "NetworkInfrastructureReady" // NamespaceNotAllowedByIdentity used to indicate cluster in a namespace not allowed by identity. NamespaceNotAllowedByIdentity = "NamespaceNotAllowedByIdentity" )
AzureCluster Conditions and Reasons.
const ( // VMRunningCondition reports on current status of the Azure VM. VMRunningCondition clusterv1.ConditionType = "VMRunning" // VMIdentitiesReadyCondition reports on the readiness of the Azure VM identities. VMIdentitiesReadyCondition clusterv1.ConditionType = "VMIdentitiesReady" // VMCreatingReason used when the vm creation is in progress. VMCreatingReason = "VMCreating" // VMUpdatingReason used when the vm updating is in progress. VMUpdatingReason = "VMUpdating" // VMDeletingReason used when the vm is in a deleting state. VMDeletingReason = "VMDeleting" // VMProvisionFailedReason used for failures during vm provisioning. VMProvisionFailedReason = "VMProvisionFailed" // UserAssignedIdentityMissingReason used for failures when a user-assigned identity is missing. UserAssignedIdentityMissingReason = "UserAssignedIdentityMissing" // WaitingForClusterInfrastructureReason used when machine is waiting for cluster infrastructure to be ready before proceeding. WaitingForClusterInfrastructureReason = "WaitingForClusterInfrastructure" // WaitingForBootstrapDataReason used when machine is waiting for bootstrap data to be ready before proceeding. WaitingForBootstrapDataReason = "WaitingForBootstrapData" // BootstrapSucceededCondition reports the result of the execution of the bootstrap data on the machine. BootstrapSucceededCondition clusterv1.ConditionType = "BootstrapSucceeded" // BootstrapInProgressReason is used to indicate the bootstrap data has not finished executing. BootstrapInProgressReason = "BootstrapInProgress" // BootstrapFailedReason is used to indicate the bootstrap process ran into an error. BootstrapFailedReason = "BootstrapFailed" )
AzureMachine Conditions and Reasons.
const ( // ScaleSetRunningCondition reports on current status of the Azure Scale Set. ScaleSetRunningCondition clusterv1.ConditionType = "ScaleSetRunning" // ScaleSetCreatingReason used when the scale set creation is in progress. ScaleSetCreatingReason = "ScaleSetCreating" // ScaleSetUpdatingReason used when the scale set updating is in progress. ScaleSetUpdatingReason = "ScaleSetUpdating" // ScaleSetDeletingReason used when the scale set is in a deleting state. ScaleSetDeletingReason = "ScaleSetDeleting" // ScaleSetProvisionFailedReason used for failures during scale set provisioning. ScaleSetProvisionFailedReason = "ScaleSetProvisionFailed" // ScaleSetDesiredReplicasCondition reports on the scaling state of the machine pool. ScaleSetDesiredReplicasCondition clusterv1.ConditionType = "ScaleSetDesiredReplicas" // ScaleSetScaleUpReason describes the machine pool scaling up. ScaleSetScaleUpReason = "ScaleSetScalingUp" // ScaleSetScaleDownReason describes the machine pool scaling down. ScaleSetScaleDownReason = "ScaleSetScalingDown" // ScaleSetModelUpdatedCondition reports on the model state of the pool. ScaleSetModelUpdatedCondition clusterv1.ConditionType = "ScaleSetModelUpdated" // ScaleSetModelOutOfDateReason describes the machine pool model being out of date. ScaleSetModelOutOfDateReason = "ScaleSetModelOutOfDate" )
AzureMachinePool Conditions and Reasons.
const ( // ManagedClusterRunningCondition means the AKS cluster exists and is in a running state. ManagedClusterRunningCondition clusterv1.ConditionType = "ManagedClusterRunning" // AgentPoolsReadyCondition means the AKS agent pools exist and are ready to be used. AgentPoolsReadyCondition clusterv1.ConditionType = "AgentPoolsReady" // AzureResourceAvailableCondition means the AKS cluster is healthy according to Azure's Resource Health API. AzureResourceAvailableCondition clusterv1.ConditionType = "AzureResourceAvailable" )
AzureManagedCluster Conditions and Reasons.
const ( // ResourceGroupReadyCondition means the resource group exists and is ready to be used. ResourceGroupReadyCondition clusterv1.ConditionType = "ResourceGroupReady" // VNetReadyCondition means the virtual network exists and is ready to be used. VNetReadyCondition clusterv1.ConditionType = "VNetReady" // VnetPeeringReadyCondition means the virtual network peerings exist and are ready to be used. VnetPeeringReadyCondition clusterv1.ConditionType = "VnetPeeringReady" // SecurityGroupsReadyCondition means the security groups exist and are ready to be used. SecurityGroupsReadyCondition clusterv1.ConditionType = "SecurityGroupsReady" // RouteTablesReadyCondition means the route tables exist and are ready to be used. RouteTablesReadyCondition clusterv1.ConditionType = "RouteTablesReady" // PublicIPsReadyCondition means the public IPs exist and are ready to be used. PublicIPsReadyCondition clusterv1.ConditionType = "PublicIPsReady" // NATGatewaysReadyCondition means the NAT gateways exist and are ready to be used. NATGatewaysReadyCondition clusterv1.ConditionType = "NATGatewaysReady" // SubnetsReadyCondition means the subnets exist and are ready to be used. SubnetsReadyCondition clusterv1.ConditionType = "SubnetsReady" // LoadBalancersReadyCondition means the load balancers exist and are ready to be used. LoadBalancersReadyCondition clusterv1.ConditionType = "LoadBalancersReady" // PrivateDNSZoneReadyCondition means the private DNS zone exists and is ready to be used. PrivateDNSZoneReadyCondition clusterv1.ConditionType = "PrivateDNSZoneReady" // PrivateDNSLinkReadyCondition means the private DNS links exist and are ready to be used. PrivateDNSLinkReadyCondition clusterv1.ConditionType = "PrivateDNSLinkReady" // PrivateDNSRecordReadyCondition means the private DNS records exist and are ready to be used. PrivateDNSRecordReadyCondition clusterv1.ConditionType = "PrivateDNSRecordReady" // BastionHostReadyCondition means the bastion host exists and is ready to be used. BastionHostReadyCondition clusterv1.ConditionType = "BastionHostReady" // InboundNATRulesReadyCondition means the inbound NAT rules exist and are ready to be used. InboundNATRulesReadyCondition clusterv1.ConditionType = "InboundNATRulesReady" // AvailabilitySetReadyCondition means the availability set exists and is ready to be used. AvailabilitySetReadyCondition clusterv1.ConditionType = "AvailabilitySetReady" // RoleAssignmentReadyCondition means the role assignment exists and is ready to be used. RoleAssignmentReadyCondition clusterv1.ConditionType = "RoleAssignmentReady" // DisksReadyCondition means the disks exist and are ready to be used. DisksReadyCondition clusterv1.ConditionType = "DisksReady" // NetworkInterfaceReadyCondition means the network interfaces exist and are ready to be used. NetworkInterfaceReadyCondition clusterv1.ConditionType = "NetworkInterfacesReady" // PrivateEndpointsReadyCondition means the private endpoints exist and are ready to be used. PrivateEndpointsReadyCondition clusterv1.ConditionType = "PrivateEndpointsReady" // FleetReadyCondition means the Fleet exists and is ready to be used. FleetReadyCondition clusterv1.ConditionType = "FleetReady" // AKSExtensionsReadyCondition means the AKS Extensions exist and are ready to be used. AKSExtensionsReadyCondition clusterv1.ConditionType = "AKSExtensionsReady" // CreatingReason means the resource is being created. CreatingReason = "Creating" // FailedReason means the resource failed to be created. FailedReason = "Failed" // DeletingReason means the resource is being deleted. DeletingReason = "Deleting" // DeletedReason means the resource was deleted. DeletedReason = "Deleted" // DeletionFailedReason means the resource failed to be deleted. DeletionFailedReason = "DeletionFailed" // UpdatingReason means the resource is being updated. UpdatingReason = "Updating" )
Azure Services Conditions and Reasons.
const ( // LinuxOS is Linux OS value for OSDisk.OSType. LinuxOS = "Linux" // WindowsOS is Windows OS value for OSDisk.OSType. WindowsOS = "Windows" )
const ( // AzureClusterKind indicates the kind of an AzureCluster. AzureClusterKind = "AzureCluster" // AzureClusterTemplateKind indicates the kind of an AzureClusterTemplate. AzureClusterTemplateKind = "AzureClusterTemplate" // AzureMachineKind indicates the kind of an AzureMachine. AzureMachineKind = "AzureMachine" // AzureMachineTemplateKind indicates the kind of an AzureMachineTemplate. AzureMachineTemplateKind = "AzureMachineTemplate" // AzureMachinePoolKind indicates the kind of an AzureMachinePool. AzureMachinePoolKind = "AzureMachinePool" // AzureManagedMachinePoolKind indicates the kind of an AzureManagedMachinePool. AzureManagedMachinePoolKind = "AzureManagedMachinePool" // AzureManagedClusterKind indicates the kind of an AzureManagedCluster. AzureManagedClusterKind = "AzureManagedCluster" // AzureManagedControlPlaneKind indicates the kind of an AzureManagedControlPlane. AzureManagedControlPlaneKind = "AzureManagedControlPlane" // AzureManagedControlPlaneTemplateKind indicates the kind of an AzureManagedControlPlaneTemplate. AzureManagedControlPlaneTemplateKind = "AzureManagedControlPlaneTemplate" // AzureManagedMachinePoolTemplateKind indicates the kind of an AzureManagedMachinePoolTemplate. AzureManagedMachinePoolTemplateKind = "AzureManagedMachinePoolTemplate" // AzureClusterIdentityKind indicates the kind of an AzureClusterIdentity. AzureClusterIdentityKind = "AzureClusterIdentity" )
const ( // ResourceLifecycleOwned is the value we use when tagging resources to indicate // that the resource is considered owned and managed by the cluster, // and in particular that the lifecycle is tied to the lifecycle of the cluster. ResourceLifecycleOwned = ResourceLifecycle("owned") // that the resource is shared between multiple clusters, and should not be destroyed // if the cluster is destroyed. ResourceLifecycleShared = ResourceLifecycle("shared") // NameKubernetesAzureCloudProviderPrefix is the tag name used by the cloud provider to logically // separate independent cluster resources. We use it to identify which resources we expect // to be permissive about state changes. // logically independent clusters running in the same AZ. // The tag key = NameKubernetesAzureCloudProviderPrefix + clusterID. // The tag value is an ownership value. NameKubernetesAzureCloudProviderPrefix = "kubernetes.io_cluster_" // NameAzureProviderPrefix is the tag prefix we use to differentiate // cluster-api-provider-azure owned components from other tooling that // uses NameKubernetesClusterPrefix. NameAzureProviderPrefix = "sigs.k8s.io_cluster-api-provider-azure_" // NameAzureProviderOwned is the tag name we use to differentiate // cluster-api-provider-azure owned components from other tooling that // uses NameKubernetesClusterPrefix. NameAzureProviderOwned = NameAzureProviderPrefix + "cluster_" // NameAzureClusterAPIRole is the tag name we use to mark roles for resources // dedicated to this cluster api provider implementation. NameAzureClusterAPIRole = NameAzureProviderPrefix + "role" // APIServerRole describes the value for the apiserver role. APIServerRole = "apiserver" // NodeOutboundRole describes the value for the node outbound LB role. NodeOutboundRole = "nodeOutbound" // ControlPlaneOutboundRole describes the value for the control plane outbound LB role. ControlPlaneOutboundRole = "controlPlaneOutbound" // BastionRole describes the value for the bastion role. BastionRole = Bastion // CommonRole describes the value for the common role. CommonRole = "common" // VMTagsLastAppliedAnnotation is the key for the machine object annotation // which tracks the AdditionalTags in the Machine Provider Config. // See https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ // for annotation formatting rules. // Deprecated: use azure.VMTagsLastAppliedAnnotation instead. This constant will be removed in v1beta2. VMTagsLastAppliedAnnotation = "sigs.k8s.io/cluster-api-provider-azure-last-applied-tags-vm" // RGTagsLastAppliedAnnotation is the key for the Azure Cluster object annotation // which tracks the AdditionalTags for Resource Group which is part in the Azure Cluster. // See https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ // for annotation formatting rules. // Deprecated: use azure.RGTagsLastAppliedAnnotation instead. This constant will be removed in v1beta2. RGTagsLastAppliedAnnotation = "sigs.k8s.io/cluster-api-provider-azure-last-applied-tags-rg" )
const ( // ControlPlane machine label. ControlPlane string = "control-plane" // Node machine label. Node string = "node" // Bastion subnet label. Bastion string = "bastion" // Cluster subnet label. Cluster string = "cluster" )
const ( // PatchFuture is a future that was derived from a PATCH request. PatchFuture string = "PATCH" // PutFuture is a future that was derived from a PUT request. PutFuture string = "PUT" // DeleteFuture is a future that was derived from a DELETE request. DeleteFuture string = "DELETE" )
const ( // SecurityGroupProtocolAll is a wildcard for all IP protocols. SecurityGroupProtocolAll = SecurityGroupProtocol("*") // SecurityGroupProtocolTCP represents the TCP protocol. SecurityGroupProtocolTCP = SecurityGroupProtocol("Tcp") // SecurityGroupProtocolUDP represents the UDP protocol. SecurityGroupProtocolUDP = SecurityGroupProtocol("Udp") // SecurityGroupProtocolICMP represents the ICMP protocol. SecurityGroupProtocolICMP = SecurityGroupProtocol("Icmp") )
const ( // SecurityRuleDirectionInbound defines an ingress security rule. SecurityRuleDirectionInbound = SecurityRuleDirection("Inbound") // SecurityRuleDirectionOutbound defines an egress security rule. SecurityRuleDirectionOutbound = SecurityRuleDirection("Outbound") )
const ( // Internal is the value for the Azure load balancer internal type. Internal = LBType("Internal") // Public is the value for the Azure load balancer public type. Public = LBType("Public") )
const ( // SubnetNode defines a Kubernetes workload node role. SubnetNode = SubnetRole(Node) // SubnetControlPlane defines a Kubernetes control plane node role. SubnetControlPlane = SubnetRole(ControlPlane) // SubnetBastion defines a Bastion subnet role. SubnetBastion = SubnetRole(Bastion) // SubnetCluster defines a role that can be used for both Kubernetes control plane node and Kubernetes workload node. SubnetCluster = SubnetRole(Cluster) )
const ( // DefaultRateLimit ... DefaultRateLimit = "defaultRateLimit" // RouteRateLimit ... RouteRateLimit = "routeRateLimit" // SubnetsRateLimit ... SubnetsRateLimit = "subnetsRateLimit" // InterfaceRateLimit ... InterfaceRateLimit = "interfaceRateLimit" // RouteTableRateLimit ... RouteTableRateLimit = "routeTableRateLimit" // LoadBalancerRateLimit ... LoadBalancerRateLimit = "loadBalancerRateLimit" // PublicIPAddressRateLimit ... PublicIPAddressRateLimit = "publicIPAddressRateLimit" // SecurityGroupRateLimit ... SecurityGroupRateLimit = "securityGroupRateLimit" // VirtualMachineRateLimit ... VirtualMachineRateLimit = "virtualMachineRateLimit" // StorageAccountRateLimit ... StorageAccountRateLimit = "storageAccountRateLimit" // DiskRateLimit ... DiskRateLimit = "diskRateLimit" // SnapshotRateLimit ... SnapshotRateLimit = "snapshotRateLimit" // VirtualMachineScaleSetRateLimit ... VirtualMachineScaleSetRateLimit = "virtualMachineScaleSetRateLimit" // VirtualMachineSizesRateLimit ... VirtualMachineSizesRateLimit = "virtualMachineSizesRateLimit" // AvailabilitySetRateLimit ... AvailabilitySetRateLimit = "availabilitySetRateLimit" )
const AzureClusterTemplateImmutableMsg = "" /* 203-byte string literal not displayed */
AzureClusterTemplateImmutableMsg is the message used for errors on fields that are immutable.
const (
// AzureNetworkPluginName is the name of the Azure network plugin.
AzureNetworkPluginName = "azure"
)
const ContributorRoleID = "b24988ac-6180-42a0-ab88-20f7382dd24c"
ContributorRoleID is the ID of the built-in "Contributor" role.
const ( // MachineFinalizer allows ReconcileAzureMachine to clean up Azure resources associated with AzureMachine before // removing it from the apiserver. MachineFinalizer = "azuremachine.infrastructure.cluster.x-k8s.io" )
const ( // OwnedByClusterLabelKey communicates CAPZ's ownership of an ASO resource // independently of its ownership of the underlying Azure resource. The // value for the label is the CAPI Cluster Name. // // Deprecated: OwnerReferences now determine ownership. OwnedByClusterLabelKey = NameAzureProviderPrefix + string(ResourceLifecycleOwned) )
const ( // SKUStandard is the value for the Azure load balancer Standard SKU. SKUStandard = SKU("Standard") )
Variables ¶
var ( // SchemeBuilder initializes a scheme builder. SchemeBuilder runtime.SchemeBuilder // AddToScheme is a global function that registers this API group & version to a scheme AddToScheme = SchemeBuilder.AddToScheme )
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "infrastructure.cluster.x-k8s.io", Version: "v1beta1"} )
JJJ esto lo he tenido que meter (sacado del fichero original groupversion_info) porque se usa desde varios sitios.
var SchemeGroupVersion = schema.GroupVersion{
Group: "infrastructure.cluster.x-k8s.io",
Version: "v1beta1",
}
SchemeGroupVersion is group version used to register these objects. Define your schema name and the version.
Functions ¶
func ClusterAzureCloudProviderTagKey ¶
ClusterAzureCloudProviderTagKey generates the key for resources associated a cluster's Azure cloud provider.
func ClusterTagKey ¶
ClusterTagKey generates the key for resources associated with a cluster.
func IsTerminalProvisioningState ¶
func IsTerminalProvisioningState(state ProvisioningState) bool
IsTerminalProvisioningState returns true if the ProvisioningState is a terminal state for an Azure resource.
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
func SpecVersionHashTagKey ¶
func SpecVersionHashTagKey() string
SpecVersionHashTagKey is the key for the spec version hash used to enable quick spec difference comparison.
func ValidateAzureMachineSpec ¶
func ValidateAzureMachineSpec(spec AzureMachineSpec) field.ErrorList
ValidateAzureMachineSpec checks an AzureMachineSpec and returns any validation errors.
func ValidateCapacityReservationGroupID ¶
func ValidateCapacityReservationGroupID(capacityReservationGroupID *string, fldPath *field.Path) field.ErrorList
ValidateCapacityReservationGroupID validates the capacity reservation group id.
func ValidateConfidentialCompute ¶
func ValidateConfidentialCompute(managedDisk *ManagedDiskParameters, profile *SecurityProfile, fieldPath *field.Path) field.ErrorList
ValidateConfidentialCompute validates the configuration options when the machine is a Confidential VM. https://learn.microsoft.com/en-us/rest/api/compute/virtual-machines/create-or-update?tabs=HTTP#vmdisksecurityprofile https://learn.microsoft.com/en-us/rest/api/compute/virtual-machines/create-or-update?tabs=HTTP#securityencryptiontypes https://learn.microsoft.com/en-us/rest/api/compute/virtual-machines/create-or-update?tabs=HTTP#uefisettings
func ValidateDataDisks ¶
ValidateDataDisks validates a list of data disks.
func ValidateDataDisksUpdate ¶
func ValidateDataDisksUpdate(oldDataDisks, newDataDisks []DataDisk, fieldPath *field.Path) field.ErrorList
ValidateDataDisksUpdate validates updates to Data disks.
func ValidateDiagnostics ¶
func ValidateDiagnostics(diagnostics *Diagnostics, fieldPath *field.Path) field.ErrorList
ValidateDiagnostics validates the Diagnostic spec.
func ValidateImage ¶
ValidateImage validates an image.
func ValidateNetwork ¶
func ValidateNetwork(subnetName string, acceleratedNetworking *bool, networkInterfaces []NetworkInterface, fldPath *field.Path) field.ErrorList
ValidateNetwork validates the network configuration.
func ValidateOSDisk ¶
ValidateOSDisk validates the OSDisk spec.
func ValidateSSHKey ¶
ValidateSSHKey validates an SSHKey.
func ValidateSystemAssignedIdentity ¶
func ValidateSystemAssignedIdentity(identityType VMIdentity, oldIdentity, newIdentity string, fldPath *field.Path) field.ErrorList
ValidateSystemAssignedIdentity validates the system-assigned identities list.
func ValidateSystemAssignedIdentityRole ¶
func ValidateSystemAssignedIdentityRole(identityType VMIdentity, roleAssignmentName string, role *SystemAssignedIdentityRole, fldPath *field.Path) field.ErrorList
ValidateSystemAssignedIdentityRole validates the system-assigned identity role.
func ValidateUserAssignedIdentity ¶
func ValidateUserAssignedIdentity(identityType VMIdentity, userAssignedIdentities []UserAssignedIdentity, fldPath *field.Path) field.ErrorList
ValidateUserAssignedIdentity validates the user-assigned identities list.
func ValidateVMExtensions ¶
func ValidateVMExtensions(disableExtensionOperations *bool, vmExtensions []VMExtension, fldPath *field.Path) field.ErrorList
ValidateVMExtensions validates the VMExtensions spec.
Types ¶
type AADProfile ¶
type AADProfile struct {
// Managed - Whether to enable managed AAD.
// +kubebuilder:validation:Required
Managed bool `json:"managed"`
// AdminGroupObjectIDs - AAD group object IDs that will have admin role of the cluster.
// +kubebuilder:validation:Required
AdminGroupObjectIDs []string `json:"adminGroupObjectIDs"`
}
AADProfile - AAD integration managed by AKS. See also AKS doc.
func (*AADProfile) DeepCopy ¶
func (in *AADProfile) DeepCopy() *AADProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AADProfile.
func (*AADProfile) DeepCopyInto ¶
func (in *AADProfile) DeepCopyInto(out *AADProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AKSAssignedIdentity ¶
type AKSAssignedIdentity string
AKSAssignedIdentity defines the AKS assigned-identity of the aks marketplace extension, if configured. +kubebuilder:validation:Enum=SystemAssigned;UserAssigned
const ( // AKSAssignedIdentitySystemAssigned ... AKSAssignedIdentitySystemAssigned AKSAssignedIdentity = "SystemAssigned" // AKSAssignedIdentityUserAssigned ... AKSAssignedIdentityUserAssigned AKSAssignedIdentity = "UserAssigned" )
type AKSExtension ¶
type AKSExtension struct {
// Name is the name of the extension.
Name string `json:"name"`
// AKSAssignedIdentityType is the type of the AKS assigned identity.
// +optional
AKSAssignedIdentityType AKSAssignedIdentity `json:"aksAssignedIdentityType,omitempty"`
// AutoUpgradeMinorVersion is a flag to note if this extension participates in auto upgrade of minor version, or not.
// +kubebuilder:default=true
// +optional
AutoUpgradeMinorVersion *bool `json:"autoUpgradeMinorVersion,omitempty"`
// ConfigurationSettings are the name-value pairs for configuring this extension.
// +optional
ConfigurationSettings map[string]string `json:"configurationSettings,omitempty"`
// ExtensionType is the type of the Extension of which this resource is an instance.
// It must be one of the Extension Types registered with Microsoft.KubernetesConfiguration by the Extension publisher.
ExtensionType *string `json:"extensionType"`
// Plan is the plan of the extension.
// +optional
Plan *ExtensionPlan `json:"plan,omitempty"`
// ReleaseTrain is the release train this extension participates in for auto-upgrade (e.g. Stable, Preview, etc.)
// This is only used if autoUpgradeMinorVersion is ‘true’.
// +optional
ReleaseTrain *string `json:"releaseTrain,omitempty"`
// Scope is the scope at which this extension is enabled.
// +optional
Scope *ExtensionScope `json:"scope,omitempty"`
// Version is the version of the extension.
// +optional
Version *string `json:"version,omitempty"`
// Identity is the identity type of the Extension resource in an AKS cluster.
// +optional
Identity ExtensionIdentity `json:"identity,omitempty"`
}
AKSExtension represents the configuration for an AKS cluster extension. See also AKS doc.
func (*AKSExtension) DeepCopy ¶
func (in *AKSExtension) DeepCopy() *AKSExtension
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AKSExtension.
func (*AKSExtension) DeepCopyInto ¶
func (in *AKSExtension) DeepCopyInto(out *AKSExtension)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AKSSku ¶
type AKSSku struct {
// Tier - Tier of an AKS cluster.
Tier AzureManagedControlPlaneSkuTier `json:"tier"`
}
AKSSku - AKS SKU.
func (*AKSSku) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AKSSku.
func (*AKSSku) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type APIServerAccessProfile ¶
type APIServerAccessProfile struct {
// AuthorizedIPRanges - Authorized IP Ranges to kubernetes API server.
// +optional
AuthorizedIPRanges []string `json:"authorizedIPRanges,omitempty"`
APIServerAccessProfileClassSpec `json:",inline"`
}
APIServerAccessProfile tunes the accessibility of the cluster's control plane. See also AKS doc.
func (*APIServerAccessProfile) DeepCopy ¶
func (in *APIServerAccessProfile) DeepCopy() *APIServerAccessProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerAccessProfile.
func (*APIServerAccessProfile) DeepCopyInto ¶
func (in *APIServerAccessProfile) DeepCopyInto(out *APIServerAccessProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type APIServerAccessProfileClassSpec ¶
type APIServerAccessProfileClassSpec struct {
// EnablePrivateCluster indicates whether to create the cluster as a private cluster or not.
// +optional
EnablePrivateCluster *bool `json:"enablePrivateCluster,omitempty"`
// PrivateDNSZone enables private dns zone mode for private cluster.
// +optional
PrivateDNSZone *string `json:"privateDNSZone,omitempty"`
// EnablePrivateClusterPublicFQDN indicates whether to create additional public FQDN for private cluster or not.
// +optional
EnablePrivateClusterPublicFQDN *bool `json:"enablePrivateClusterPublicFQDN,omitempty"`
}
APIServerAccessProfileClassSpec defines the APIServerAccessProfile properties that may be shared across several API server access profiles.
func (*APIServerAccessProfileClassSpec) DeepCopy ¶
func (in *APIServerAccessProfileClassSpec) DeepCopy() *APIServerAccessProfileClassSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServerAccessProfileClassSpec.
func (*APIServerAccessProfileClassSpec) DeepCopyInto ¶
func (in *APIServerAccessProfileClassSpec) DeepCopyInto(out *APIServerAccessProfileClassSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AdditionalCapabilities ¶
type AdditionalCapabilities struct {
// UltraSSDEnabled enables or disables Azure UltraSSD capability for the virtual machine.
// Defaults to true if Ultra SSD data disks are specified,
// otherwise it doesn't set the capability on the VM.
// +optional
UltraSSDEnabled *bool `json:"ultraSSDEnabled,omitempty"`
}
AdditionalCapabilities enables or disables a capability on the virtual machine.
func (*AdditionalCapabilities) DeepCopy ¶
func (in *AdditionalCapabilities) DeepCopy() *AdditionalCapabilities
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdditionalCapabilities.
func (*AdditionalCapabilities) DeepCopyInto ¶
func (in *AdditionalCapabilities) DeepCopyInto(out *AdditionalCapabilities)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddonProfile ¶
type AddonProfile struct {
// Name - The name of the managed cluster add-on.
Name string `json:"name"`
// Config - Key-value pairs for configuring the add-on.
// +optional
Config map[string]string `json:"config,omitempty"`
// Enabled - Whether the add-on is enabled or not.
Enabled bool `json:"enabled"`
}
AddonProfile represents a managed cluster add-on.
func (*AddonProfile) DeepCopy ¶
func (in *AddonProfile) DeepCopy() *AddonProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddonProfile.
func (*AddonProfile) DeepCopyInto ¶
func (in *AddonProfile) DeepCopyInto(out *AddonProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddressRecord ¶
AddressRecord specifies a DNS record mapping a hostname to an IPV4 or IPv6 address.
func (*AddressRecord) DeepCopy ¶
func (in *AddressRecord) DeepCopy() *AddressRecord
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddressRecord.
func (*AddressRecord) DeepCopyInto ¶
func (in *AddressRecord) DeepCopyInto(out *AddressRecord)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AllowedNamespaces ¶
type AllowedNamespaces struct {
// A nil or empty list indicates that AzureCluster cannot use the identity from any namespace.
//
// +optional
// +nullable
NamespaceList []string `json:"list"`
// Selector is a selector of namespaces that AzureCluster can
// use this Identity from. This is a standard Kubernetes LabelSelector,
// a label query over a set of resources. The result of matchLabels and
// matchExpressions are ANDed.
//
// A nil or empty selector indicates that AzureCluster cannot use this
// AzureClusterIdentity from any namespace.
// +optional
Selector *metav1.LabelSelector `json:"selector"`
}
AllowedNamespaces defines the namespaces the clusters are allowed to use the identity from NamespaceList takes precedence over the Selector.
func (*AllowedNamespaces) DeepCopy ¶
func (in *AllowedNamespaces) DeepCopy() *AllowedNamespaces
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AllowedNamespaces.
func (*AllowedNamespaces) DeepCopyInto ¶
func (in *AllowedNamespaces) DeepCopyInto(out *AllowedNamespaces)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutoScalerProfile ¶
type AutoScalerProfile struct {
// BalanceSimilarNodeGroups - Valid values are 'true' and 'false'. The default is false.
// +kubebuilder:validation:Enum="true";"false"
// +optional
BalanceSimilarNodeGroups *BalanceSimilarNodeGroups `json:"balanceSimilarNodeGroups,omitempty"`
// Expander - If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information.
// +kubebuilder:validation:Enum=least-waste;most-pods;priority;random
// +optional
Expander *Expander `json:"expander,omitempty"`
// MaxEmptyBulkDelete - The default is 10.
// +optional
MaxEmptyBulkDelete *string `json:"maxEmptyBulkDelete,omitempty"`
// MaxGracefulTerminationSec - The default is 600.
// +kubebuilder:validation:Pattern=`^(\d+)$`
// +optional
MaxGracefulTerminationSec *string `json:"maxGracefulTerminationSec,omitempty"`
// MaxNodeProvisionTime - The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.
// +kubebuilder:validation:Pattern=`^(\d+)m$`
// +optional
MaxNodeProvisionTime *string `json:"maxNodeProvisionTime,omitempty"`
// MaxTotalUnreadyPercentage - The default is 45. The maximum is 100 and the minimum is 0.
// +kubebuilder:validation:Pattern=`^(\d+)$`
// +kubebuilder:validation:MaxLength=3
// +kubebuilder:validation:MinLength=1
// +optional
MaxTotalUnreadyPercentage *string `json:"maxTotalUnreadyPercentage,omitempty"`
// NewPodScaleUpDelay - For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc).
// +optional
NewPodScaleUpDelay *string `json:"newPodScaleUpDelay,omitempty"`
// OkTotalUnreadyCount - This must be an integer. The default is 3.
// +kubebuilder:validation:Pattern=`^(\d+)$`
// +optional
OkTotalUnreadyCount *string `json:"okTotalUnreadyCount,omitempty"`
// ScanInterval - How often cluster is reevaluated for scale up or down. The default is '10s'.
// +kubebuilder:validation:Pattern=`^(\d+)s$`
// +optional
ScanInterval *string `json:"scanInterval,omitempty"`
// ScaleDownDelayAfterAdd - The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.
// +kubebuilder:validation:Pattern=`^(\d+)m$`
// +optional
ScaleDownDelayAfterAdd *string `json:"scaleDownDelayAfterAdd,omitempty"`
// ScaleDownDelayAfterDelete - The default is the scan-interval. Values must be an integer followed by an 's'. No unit of time other than seconds (s) is supported.
// +kubebuilder:validation:Pattern=`^(\d+)s$`
// +optional
ScaleDownDelayAfterDelete *string `json:"scaleDownDelayAfterDelete,omitempty"`
// ScaleDownDelayAfterFailure - The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.
// +kubebuilder:validation:Pattern=`^(\d+)m$`
// +optional
ScaleDownDelayAfterFailure *string `json:"scaleDownDelayAfterFailure,omitempty"`
// ScaleDownUnneededTime - The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.
// +kubebuilder:validation:Pattern=`^(\d+)m$`
// +optional
ScaleDownUnneededTime *string `json:"scaleDownUnneededTime,omitempty"`
// ScaleDownUnreadyTime - The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported.
// +kubebuilder:validation:Pattern=`^(\d+)m$`
// +optional
ScaleDownUnreadyTime *string `json:"scaleDownUnreadyTime,omitempty"`
// ScaleDownUtilizationThreshold - The default is '0.5'.
// +optional
ScaleDownUtilizationThreshold *string `json:"scaleDownUtilizationThreshold,omitempty"`
// SkipNodesWithLocalStorage - The default is false.
// +kubebuilder:validation:Enum="true";"false"
// +optional
SkipNodesWithLocalStorage *SkipNodesWithLocalStorage `json:"skipNodesWithLocalStorage,omitempty"`
// SkipNodesWithSystemPods - The default is true.
// +kubebuilder:validation:Enum="true";"false"
// +optional
SkipNodesWithSystemPods *SkipNodesWithSystemPods `json:"skipNodesWithSystemPods,omitempty"`
}
AutoScalerProfile parameters to be applied to the cluster-autoscaler. See also AKS doc, K8s doc.
func (*AutoScalerProfile) DeepCopy ¶
func (in *AutoScalerProfile) DeepCopy() *AutoScalerProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoScalerProfile.
func (*AutoScalerProfile) DeepCopyInto ¶
func (in *AutoScalerProfile) DeepCopyInto(out *AutoScalerProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureBastion ¶
type AzureBastion struct {
// +optional
Name string `json:"name,omitempty"`
// +optional
Subnet SubnetSpec `json:"subnet,omitempty"`
// +optional
PublicIP PublicIPSpec `json:"publicIP,omitempty"`
// BastionHostSkuName configures the tier of the Azure Bastion Host. Can be either Basic or Standard. Defaults to Basic.
// +kubebuilder:default=Basic
// +kubebuilder:validation:Enum=Basic;Standard
// +optional
Sku BastionHostSkuName `json:"sku,omitempty"`
// EnableTunneling enables the native client support feature for the Azure Bastion Host. Defaults to false.
// +kubebuilder:default=false
// +optional
EnableTunneling bool `json:"enableTunneling,omitempty"`
}
AzureBastion specifies how the Azure Bastion cloud component should be configured.
func (*AzureBastion) DeepCopy ¶
func (in *AzureBastion) DeepCopy() *AzureBastion
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureBastion.
func (*AzureBastion) DeepCopyInto ¶
func (in *AzureBastion) DeepCopyInto(out *AzureBastion)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureBastionTemplateSpec ¶
type AzureBastionTemplateSpec struct {
// +optional
Subnet SubnetTemplateSpec `json:"subnet,omitempty"`
}
AzureBastionTemplateSpec specifies a template for an Azure Bastion host.
func (*AzureBastionTemplateSpec) DeepCopy ¶
func (in *AzureBastionTemplateSpec) DeepCopy() *AzureBastionTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureBastionTemplateSpec.
func (*AzureBastionTemplateSpec) DeepCopyInto ¶
func (in *AzureBastionTemplateSpec) DeepCopyInto(out *AzureBastionTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureCluster ¶
type AzureCluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AzureClusterSpec `json:"spec,omitempty"`
Status AzureClusterStatus `json:"status,omitempty"`
}
AzureCluster is the Schema for the azureclusters API.
func (*AzureCluster) DeepCopy ¶
func (in *AzureCluster) DeepCopy() *AzureCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureCluster.
func (*AzureCluster) DeepCopyInto ¶
func (in *AzureCluster) DeepCopyInto(out *AzureCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureCluster) DeepCopyObject ¶
func (in *AzureCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureCluster) Default ¶
func (c *AzureCluster) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type.
func (*AzureCluster) GetConditions ¶
func (c *AzureCluster) GetConditions() clusterv1.Conditions
GetConditions returns the list of conditions for an AzureCluster API object.
func (*AzureCluster) GetFutures ¶
func (c *AzureCluster) GetFutures() Futures
GetFutures returns the list of long running operation states for an AzureCluster API object.
func (*AzureCluster) SetAPIServerLBBackendPoolNameDefault ¶
func (c *AzureCluster) SetAPIServerLBBackendPoolNameDefault()
SetAPIServerLBBackendPoolNameDefault defaults the name of the backend pool for apiserver LB.
func (*AzureCluster) SetBackendPoolNameDefault ¶
func (c *AzureCluster) SetBackendPoolNameDefault()
SetBackendPoolNameDefault defaults the backend pool name of the LBs.
func (*AzureCluster) SetConditions ¶
func (c *AzureCluster) SetConditions(conditions clusterv1.Conditions)
SetConditions will set the given conditions on an AzureCluster object.
func (*AzureCluster) SetControlPlaneOutboundLBBackendPoolNameDefault ¶
func (c *AzureCluster) SetControlPlaneOutboundLBBackendPoolNameDefault()
SetControlPlaneOutboundLBBackendPoolNameDefault defaults the name of the backend pool for control plane outbound LB.
func (*AzureCluster) SetControlPlaneOutboundLBDefaults ¶
func (c *AzureCluster) SetControlPlaneOutboundLBDefaults()
SetControlPlaneOutboundLBDefaults sets the default values for the control plane's outbound LB.
func (*AzureCluster) SetFutures ¶
func (c *AzureCluster) SetFutures(futures Futures)
SetFutures will set the given long running operation states on an AzureCluster object.
func (*AzureCluster) SetNodeOutboundLBBackendPoolNameDefault ¶
func (c *AzureCluster) SetNodeOutboundLBBackendPoolNameDefault()
SetNodeOutboundLBBackendPoolNameDefault defaults the name of the backend pool for node outbound LB.
func (*AzureCluster) SetNodeOutboundLBDefaults ¶
func (c *AzureCluster) SetNodeOutboundLBDefaults()
SetNodeOutboundLBDefaults sets the default values for the NodeOutboundLB.
func (*AzureCluster) ValidateCreate ¶
func (c *AzureCluster) ValidateCreate() (jjjWarnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*AzureCluster) ValidateDelete ¶
func (c *AzureCluster) ValidateDelete() (jjjWarnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*AzureCluster) ValidateUpdate ¶
func (c *AzureCluster) ValidateUpdate(oldRaw runtime.Object) (jjjWarnings, error)
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type AzureClusterClassSpec ¶
type AzureClusterClassSpec struct {
// +optional
SubscriptionID string `json:"subscriptionID,omitempty"`
Location string `json:"location"`
// ExtendedLocation is an optional set of ExtendedLocation properties for clusters on Azure public MEC.
// +optional
ExtendedLocation *ExtendedLocationSpec `json:"extendedLocation,omitempty"`
// AdditionalTags is an optional set of tags to add to Azure resources managed by the Azure provider, in addition to the
// ones added by default.
// +optional
AdditionalTags Tags `json:"additionalTags,omitempty"`
// IdentityRef is a reference to an AzureIdentity to be used when reconciling this cluster
// +optional
IdentityRef *corev1.ObjectReference `json:"identityRef,omitempty"`
// AzureEnvironment is the name of the AzureCloud to be used.
// The default value that would be used by most users is "AzurePublicCloud", other values are:
// - ChinaCloud: "AzureChinaCloud"
// - GermanCloud: "AzureGermanCloud"
// - PublicCloud: "AzurePublicCloud"
// - USGovernmentCloud: "AzureUSGovernmentCloud"
//
// Note that values other than the default must also be accompanied by corresponding changes to the
// aso-controller-settings Secret to configure ASO to refer to the non-Public cloud. ASO currently does
// not support referring to multiple different clouds in a single installation. The following fields must
// be defined in the Secret:
// - AZURE_AUTHORITY_HOST
// - AZURE_RESOURCE_MANAGER_ENDPOINT
// - AZURE_RESOURCE_MANAGER_AUDIENCE
//
// See the [ASO docs] for more details.
//
// [ASO docs]: https://azure.github.io/azure-service-operator/guide/aso-controller-settings-options/
// +optional
AzureEnvironment string `json:"azureEnvironment,omitempty"`
// CloudProviderConfigOverrides is an optional set of configuration values that can be overridden in azure cloud provider config.
// This is only a subset of options that are available in azure cloud provider config.
// Some values for the cloud provider config are inferred from other parts of cluster api provider azure spec, and may not be available for overrides.
// See: https://cloud-provider-azure.sigs.k8s.io/install/configs
// Note: All cloud provider config values can be customized by creating the secret beforehand. CloudProviderConfigOverrides is only used when the secret is managed by the Azure Provider.
// +optional
CloudProviderConfigOverrides *CloudProviderConfigOverrides `json:"cloudProviderConfigOverrides,omitempty"`
// FailureDomains is a list of failure domains in the cluster's region, used to restrict
// eligibility to host the control plane. A FailureDomain maps to an availability zone,
// which is a separated group of datacenters within a region.
// See: https://learn.microsoft.com/azure/reliability/availability-zones-overview
// +optional
FailureDomains clusterv1.FailureDomains `json:"failureDomains,omitempty"`
}
AzureClusterClassSpec defines the AzureCluster properties that may be shared across several Azure clusters.
func (*AzureClusterClassSpec) DeepCopy ¶
func (in *AzureClusterClassSpec) DeepCopy() *AzureClusterClassSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureClusterClassSpec.
func (*AzureClusterClassSpec) DeepCopyInto ¶
func (in *AzureClusterClassSpec) DeepCopyInto(out *AzureClusterClassSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureClusterIdentity ¶
type AzureClusterIdentity struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AzureClusterIdentitySpec `json:"spec,omitempty"`
Status AzureClusterIdentityStatus `json:"status,omitempty"`
}
AzureClusterIdentity is the Schema for the azureclustersidentities API.
func (*AzureClusterIdentity) DeepCopy ¶
func (in *AzureClusterIdentity) DeepCopy() *AzureClusterIdentity
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureClusterIdentity.
func (*AzureClusterIdentity) DeepCopyInto ¶
func (in *AzureClusterIdentity) DeepCopyInto(out *AzureClusterIdentity)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureClusterIdentity) DeepCopyObject ¶
func (in *AzureClusterIdentity) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureClusterIdentity) GetConditions ¶
func (c *AzureClusterIdentity) GetConditions() clusterv1.Conditions
GetConditions returns the list of conditions for an AzureClusterIdentity API object.
func (*AzureClusterIdentity) Hub ¶
func (*AzureClusterIdentity) Hub()
Hub marks AzureClusterIdentity as a conversion hub.
func (*AzureClusterIdentity) SetConditions ¶
func (c *AzureClusterIdentity) SetConditions(conditions clusterv1.Conditions)
SetConditions will set the given conditions on an AzureClusterIdentity object.
func (*AzureClusterIdentity) ValidateCreate ¶
func (c *AzureClusterIdentity) ValidateCreate() (jjjWarnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*AzureClusterIdentity) ValidateDelete ¶
func (c *AzureClusterIdentity) ValidateDelete() (jjjWarnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*AzureClusterIdentity) ValidateUpdate ¶
func (c *AzureClusterIdentity) ValidateUpdate(oldRaw runtime.Object) (jjjWarnings, error)
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type AzureClusterIdentityList ¶
type AzureClusterIdentityList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AzureClusterIdentity `json:"items"`
}
AzureClusterIdentityList contains a list of AzureClusterIdentity.
func (*AzureClusterIdentityList) DeepCopy ¶
func (in *AzureClusterIdentityList) DeepCopy() *AzureClusterIdentityList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureClusterIdentityList.
func (*AzureClusterIdentityList) DeepCopyInto ¶
func (in *AzureClusterIdentityList) DeepCopyInto(out *AzureClusterIdentityList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureClusterIdentityList) DeepCopyObject ¶
func (in *AzureClusterIdentityList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureClusterIdentityList) Hub ¶
func (*AzureClusterIdentityList) Hub()
Hub marks AzureClusterIdentityList as a conversion hub.
type AzureClusterIdentitySpec ¶
type AzureClusterIdentitySpec struct {
// Type is the type of Azure Identity used.
// ServicePrincipal, ServicePrincipalCertificate, UserAssignedMSI, ManualServicePrincipal or WorkloadIdentity.
Type IdentityType `json:"type"`
// ResourceID is the Azure resource ID for the User Assigned MSI resource.
// Only applicable when type is UserAssignedMSI.
//
// Deprecated: This field no longer has any effect.
//
// +optional
ResourceID string `json:"resourceID,omitempty"`
// ClientID is the service principal client ID.
// Both User Assigned MSI and SP can use this field.
ClientID string `json:"clientID"`
// ClientSecret is a secret reference which should contain either a Service Principal password or certificate secret.
// +optional
ClientSecret corev1.SecretReference `json:"clientSecret,omitempty"`
// TenantID is the service principal primary tenant id.
TenantID string `json:"tenantID"`
// AllowedNamespaces is used to identify the namespaces the clusters are allowed to use the identity from.
// Namespaces can be selected either using an array of namespaces or with label selector.
// An empty allowedNamespaces object indicates that AzureClusters can use this identity from any namespace.
// If this object is nil, no namespaces will be allowed (default behaviour, if this field is not provided)
// A namespace should be either in the NamespaceList or match with Selector to use the identity.
//
// +optional
// +nullable
AllowedNamespaces *AllowedNamespaces `json:"allowedNamespaces"`
}
AzureClusterIdentitySpec defines the parameters that are used to create an AzureIdentity.
func (*AzureClusterIdentitySpec) DeepCopy ¶
func (in *AzureClusterIdentitySpec) DeepCopy() *AzureClusterIdentitySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureClusterIdentitySpec.
func (*AzureClusterIdentitySpec) DeepCopyInto ¶
func (in *AzureClusterIdentitySpec) DeepCopyInto(out *AzureClusterIdentitySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureClusterIdentityStatus ¶
type AzureClusterIdentityStatus struct {
// Conditions defines current service state of the AzureClusterIdentity.
// +optional
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
}
AzureClusterIdentityStatus defines the observed state of AzureClusterIdentity.
func (*AzureClusterIdentityStatus) DeepCopy ¶
func (in *AzureClusterIdentityStatus) DeepCopy() *AzureClusterIdentityStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureClusterIdentityStatus.
func (*AzureClusterIdentityStatus) DeepCopyInto ¶
func (in *AzureClusterIdentityStatus) DeepCopyInto(out *AzureClusterIdentityStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureClusterList ¶
type AzureClusterList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AzureCluster `json:"items"`
}
AzureClusterList contains a list of AzureClusters.
func (*AzureClusterList) DeepCopy ¶
func (in *AzureClusterList) DeepCopy() *AzureClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureClusterList.
func (*AzureClusterList) DeepCopyInto ¶
func (in *AzureClusterList) DeepCopyInto(out *AzureClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureClusterList) DeepCopyObject ¶
func (in *AzureClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureClusterList) Hub ¶
func (*AzureClusterList) Hub()
Hub marks AzureClusterList as a conversion hub.
type AzureClusterSpec ¶
type AzureClusterSpec struct {
AzureClusterClassSpec `json:",inline"`
// NetworkSpec encapsulates all things related to Azure network.
// +optional
NetworkSpec NetworkSpec `json:"networkSpec,omitempty"`
// +optional
ResourceGroup string `json:"resourceGroup,omitempty"`
// BastionSpec encapsulates all things related to the Bastions in the cluster.
// +optional
BastionSpec BastionSpec `json:"bastionSpec,omitempty"`
// ControlPlaneEndpoint represents the endpoint used to communicate with the control plane. It is not recommended to set
// this when creating an AzureCluster as CAPZ will set this for you. However, if it is set, CAPZ will not change it.
// +optional
ControlPlaneEndpoint clusterv1.APIEndpoint `json:"controlPlaneEndpoint,omitempty"`
}
AzureClusterSpec defines the desired state of AzureCluster.
func (*AzureClusterSpec) DeepCopy ¶
func (in *AzureClusterSpec) DeepCopy() *AzureClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureClusterSpec.
func (*AzureClusterSpec) DeepCopyInto ¶
func (in *AzureClusterSpec) DeepCopyInto(out *AzureClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureClusterStatus ¶
type AzureClusterStatus struct {
// FailureDomains specifies the list of unique failure domains for the location/region of the cluster.
// A FailureDomain maps to Availability Zone with an Azure Region (if the region support them). An
// Availability Zone is a separate data center within a region and they can be used to ensure
// the cluster is more resilient to failure.
// See: https://learn.microsoft.com/azure/reliability/availability-zones-overview
// This list will be used by Cluster API to try and spread the machines across the failure domains.
// +optional
FailureDomains clusterv1.FailureDomains `json:"failureDomains,omitempty"`
// Ready is true when the provider resource is ready.
// +optional
Ready bool `json:"ready"`
// Conditions defines current service state of the AzureCluster.
// +optional
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
// LongRunningOperationStates saves the states for Azure long-running operations so they can be continued on the
// next reconciliation loop.
// +optional
LongRunningOperationStates Futures `json:"longRunningOperationStates,omitempty"`
}
AzureClusterStatus defines the observed state of AzureCluster.
func (*AzureClusterStatus) DeepCopy ¶
func (in *AzureClusterStatus) DeepCopy() *AzureClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureClusterStatus.
func (*AzureClusterStatus) DeepCopyInto ¶
func (in *AzureClusterStatus) DeepCopyInto(out *AzureClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureClusterTemplate ¶
type AzureClusterTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AzureClusterTemplateSpec `json:"spec,omitempty"`
}
AzureClusterTemplate is the Schema for the azureclustertemplates API.
func (*AzureClusterTemplate) DeepCopy ¶
func (in *AzureClusterTemplate) DeepCopy() *AzureClusterTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureClusterTemplate.
func (*AzureClusterTemplate) DeepCopyInto ¶
func (in *AzureClusterTemplate) DeepCopyInto(out *AzureClusterTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureClusterTemplate) DeepCopyObject ¶
func (in *AzureClusterTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureClusterTemplate) Default ¶
func (c *AzureClusterTemplate) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type.
func (*AzureClusterTemplate) Hub ¶
func (*AzureClusterTemplate) Hub()
Hub marks AzureCluster as a conversion hub.
func (*AzureClusterTemplate) ValidateCreate ¶
func (c *AzureClusterTemplate) ValidateCreate() (jjjWarnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*AzureClusterTemplate) ValidateDelete ¶
func (c *AzureClusterTemplate) ValidateDelete() (jjjWarnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*AzureClusterTemplate) ValidateUpdate ¶
func (c *AzureClusterTemplate) ValidateUpdate(oldRaw runtime.Object) (jjjWarnings, error)
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type AzureClusterTemplateList ¶
type AzureClusterTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AzureClusterTemplate `json:"items"`
}
AzureClusterTemplateList contains a list of AzureClusterTemplate.
func (*AzureClusterTemplateList) DeepCopy ¶
func (in *AzureClusterTemplateList) DeepCopy() *AzureClusterTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureClusterTemplateList.
func (*AzureClusterTemplateList) DeepCopyInto ¶
func (in *AzureClusterTemplateList) DeepCopyInto(out *AzureClusterTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureClusterTemplateList) DeepCopyObject ¶
func (in *AzureClusterTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureClusterTemplateList) Hub ¶
func (*AzureClusterTemplateList) Hub()
Hub marks AzureClusterList as a conversion hub.
type AzureClusterTemplateResource ¶
type AzureClusterTemplateResource struct {
Spec AzureClusterTemplateResourceSpec `json:"spec"`
}
AzureClusterTemplateResource describes the data needed to create an AzureCluster from a template.
func (*AzureClusterTemplateResource) DeepCopy ¶
func (in *AzureClusterTemplateResource) DeepCopy() *AzureClusterTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureClusterTemplateResource.
func (*AzureClusterTemplateResource) DeepCopyInto ¶
func (in *AzureClusterTemplateResource) DeepCopyInto(out *AzureClusterTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureClusterTemplateResourceSpec ¶
type AzureClusterTemplateResourceSpec struct {
AzureClusterClassSpec `json:",inline"`
// NetworkSpec encapsulates all things related to Azure network.
// +optional
NetworkSpec NetworkTemplateSpec `json:"networkSpec,omitempty"`
// BastionSpec encapsulates all things related to the Bastions in the cluster.
// +optional
BastionSpec BastionTemplateSpec `json:"bastionSpec,omitempty"`
}
AzureClusterTemplateResourceSpec specifies an Azure cluster template resource.
func (*AzureClusterTemplateResourceSpec) DeepCopy ¶
func (in *AzureClusterTemplateResourceSpec) DeepCopy() *AzureClusterTemplateResourceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureClusterTemplateResourceSpec.
func (*AzureClusterTemplateResourceSpec) DeepCopyInto ¶
func (in *AzureClusterTemplateResourceSpec) DeepCopyInto(out *AzureClusterTemplateResourceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureClusterTemplateSpec ¶
type AzureClusterTemplateSpec struct {
Template AzureClusterTemplateResource `json:"template"`
}
AzureClusterTemplateSpec defines the desired state of AzureClusterTemplate.
func (*AzureClusterTemplateSpec) DeepCopy ¶
func (in *AzureClusterTemplateSpec) DeepCopy() *AzureClusterTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureClusterTemplateSpec.
func (*AzureClusterTemplateSpec) DeepCopyInto ¶
func (in *AzureClusterTemplateSpec) DeepCopyInto(out *AzureClusterTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureComputeGalleryImage ¶
type AzureComputeGalleryImage struct {
// Gallery specifies the name of the compute image gallery that contains the image
// +kubebuilder:validation:MinLength=1
Gallery string `json:"gallery"`
// Name is the name of the image
// +kubebuilder:validation:MinLength=1
Name string `json:"name"`
// Version specifies the version of the marketplace image. The allowed formats
// are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers.
// Specify 'latest' to use the latest version of an image available at deploy time.
// Even if you use 'latest', the VM image will not automatically update after deploy
// time even if a new version becomes available.
// +kubebuilder:validation:MinLength=1
Version string `json:"version"`
// SubscriptionID is the identifier of the subscription that contains the private compute gallery.
// +optional
SubscriptionID *string `json:"subscriptionID,omitempty"`
// ResourceGroup specifies the resource group containing the private compute gallery.
// +optional
ResourceGroup *string `json:"resourceGroup,omitempty"`
// Plan contains plan information.
// +optional
Plan *ImagePlan `json:"plan,omitempty"`
}
AzureComputeGalleryImage defines an image in the Azure Compute Gallery to use for VM creation.
func (*AzureComputeGalleryImage) DeepCopy ¶
func (in *AzureComputeGalleryImage) DeepCopy() *AzureComputeGalleryImage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureComputeGalleryImage.
func (*AzureComputeGalleryImage) DeepCopyInto ¶
func (in *AzureComputeGalleryImage) DeepCopyInto(out *AzureComputeGalleryImage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureKeyVaultKms ¶
type AzureKeyVaultKms struct {
// Enabled enables the Azure Key Vault key management service. The default is false.
// +kubebuilder:validation:Required
Enabled bool `json:"enabled"`
// KeyID defines the Identifier of Azure Key Vault key.
// When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier.
// +kubebuilder:validation:Required
KeyID string `json:"keyID"`
// KeyVaultNetworkAccess defines the network access of key vault.
// The possible values are Public and Private.
// Public means the key vault allows public access from all networks.
// Private means the key vault disables public access and enables private link. The default value is Public.
// +optional
// +kubebuilder:default:=Public
KeyVaultNetworkAccess *KeyVaultNetworkAccessTypes `json:"keyVaultNetworkAccess,omitempty"`
// KeyVaultResourceID is the Resource ID of key vault. When keyVaultNetworkAccess is Private, this field is required and must be a valid resource ID.
// +optional
KeyVaultResourceID *string `json:"keyVaultResourceID,omitempty"`
}
AzureKeyVaultKms service settings for the security profile. See also AKS doc.
func (*AzureKeyVaultKms) DeepCopy ¶
func (in *AzureKeyVaultKms) DeepCopy() *AzureKeyVaultKms
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureKeyVaultKms.
func (*AzureKeyVaultKms) DeepCopyInto ¶
func (in *AzureKeyVaultKms) DeepCopyInto(out *AzureKeyVaultKms)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureMachine ¶
type AzureMachine struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AzureMachineSpec `json:"spec,omitempty"`
Status AzureMachineStatus `json:"status,omitempty"`
}
AzureMachine is the Schema for the azuremachines API.
func (*AzureMachine) DeepCopy ¶
func (in *AzureMachine) DeepCopy() *AzureMachine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMachine.
func (*AzureMachine) DeepCopyInto ¶
func (in *AzureMachine) DeepCopyInto(out *AzureMachine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureMachine) DeepCopyObject ¶
func (in *AzureMachine) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureMachine) GetConditions ¶
func (m *AzureMachine) GetConditions() clusterv1.Conditions
GetConditions returns the list of conditions for an AzureMachine API object.
func (*AzureMachine) GetFutures ¶
func (m *AzureMachine) GetFutures() Futures
GetFutures returns the list of long running operation states for an AzureMachine API object.
func (*AzureMachine) SetConditions ¶
func (m *AzureMachine) SetConditions(conditions clusterv1.Conditions)
SetConditions will set the given conditions on an AzureMachine object.
func (*AzureMachine) SetFutures ¶
func (m *AzureMachine) SetFutures(futures Futures)
SetFutures will set the given long running operation states on an AzureMachine object.
type AzureMachineList ¶
type AzureMachineList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AzureMachine `json:"items"`
}
AzureMachineList contains a list of AzureMachine.
func (*AzureMachineList) DeepCopy ¶
func (in *AzureMachineList) DeepCopy() *AzureMachineList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMachineList.
func (*AzureMachineList) DeepCopyInto ¶
func (in *AzureMachineList) DeepCopyInto(out *AzureMachineList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureMachineList) DeepCopyObject ¶
func (in *AzureMachineList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureMachineList) Hub ¶
func (*AzureMachineList) Hub()
Hub marks AzureMachineList as a conversion hub.
type AzureMachineSpec ¶
type AzureMachineSpec struct {
// ProviderID is the unique identifier as specified by the cloud provider.
// +optional
ProviderID *string `json:"providerID,omitempty"`
VMSize string `json:"vmSize"`
// FailureDomain is the failure domain unique identifier this Machine should be attached to,
// as defined in Cluster API. This relates to an Azure Availability Zone
// +optional
FailureDomain *string `json:"failureDomain,omitempty"`
// Image 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.
// +kubebuilder:validation:nullable
// +optional
Image *Image `json:"image,omitempty"`
// Identity is the type of identity used for the virtual machine.
// 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 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 AzureMachine.
// See https://learn.microsoft.com/azure/active-directory/managed-identities-azure-resources/how-to-manage-ua-identity-cli
// +optional
UserAssignedIdentities []UserAssignedIdentity `json:"userAssignedIdentities,omitempty"`
// SystemAssignedIdentityRole defines the role and scope to assign to the system-assigned identity.
// +optional
SystemAssignedIdentityRole *SystemAssignedIdentityRole `json:"systemAssignedIdentityRole,omitempty"`
// Deprecated: RoleAssignmentName should be set in the systemAssignedIdentityRole field.
// +optional
RoleAssignmentName string `json:"roleAssignmentName,omitempty"`
// OSDisk specifies the parameters for the operating system disk of the machine
OSDisk OSDisk `json:"osDisk"`
// DataDisk specifies the parameters that are used to add one or more data disks to the machine
// +optional
DataDisks []DataDisk `json:"dataDisks,omitempty"`
// SSHPublicKey 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.
// +optional
SSHPublicKey string `json:"sshPublicKey,omitempty"`
// 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 Tags `json:"additionalTags,omitempty"`
// AdditionalCapabilities specifies additional capabilities enabled or disabled on the virtual machine.
// +optional
AdditionalCapabilities *AdditionalCapabilities `json:"additionalCapabilities,omitempty"`
// AllocatePublicIP allows the ability to create dynamic public ips for machines where this value is true.
// +optional
AllocatePublicIP bool `json:"allocatePublicIP,omitempty"`
// EnableIPForwarding enables IP Forwarding in Azure which is required for some CNI's to send traffic from a pods on one machine
// to another. This is required for IpV6 with Calico in combination with User Defined Routes (set by the Azure Cloud Controller
// manager). Default is false for disabled.
// +optional
EnableIPForwarding bool `json:"enableIPForwarding,omitempty"`
// Deprecated: AcceleratedNetworking should be set in the networkInterfaces field.
// +kubebuilder:validation:nullable
// +optional
AcceleratedNetworking *bool `json:"acceleratedNetworking,omitempty"`
// Diagnostics specifies the diagnostics settings for a virtual machine.
// If not specified then Boot diagnostics (Managed) will be enabled.
// +optional
Diagnostics *Diagnostics `json:"diagnostics,omitempty"`
// SpotVMOptions allows the ability to specify the Machine should use a Spot VM
// +optional
SpotVMOptions *SpotVMOptions `json:"spotVMOptions,omitempty"`
// SecurityProfile specifies the Security profile settings for a virtual machine.
// +optional
SecurityProfile *SecurityProfile `json:"securityProfile,omitempty"`
// Deprecated: SubnetName should be set in the networkInterfaces field.
// +optional
SubnetName string `json:"subnetName,omitempty"`
// DNSServers adds a list of DNS Server IP addresses to the VM NICs.
// +optional
DNSServers []string `json:"dnsServers,omitempty"`
// DisableExtensionOperations specifies whether extension operations should be disabled on the virtual machine.
// Use this setting only if VMExtensions are not supported by your image, as it disables CAPZ bootstrapping extension used for detecting Kubernetes bootstrap failure.
// This may only be set to True when no extensions are configured on the virtual machine.
// +optional
DisableExtensionOperations *bool `json:"disableExtensionOperations,omitempty"`
// VMExtensions specifies a list of extensions to be added to the virtual machine.
// +optional
VMExtensions []VMExtension `json:"vmExtensions,omitempty"`
// NetworkInterfaces 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.
// +optional
NetworkInterfaces []NetworkInterface `json:"networkInterfaces,omitempty"`
// 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.
// It is optional but may not be changed once set.
// +optional
CapacityReservationGroupID *string `json:"capacityReservationGroupID,omitempty"`
}
AzureMachineSpec defines the desired state of AzureMachine.
func (*AzureMachineSpec) DeepCopy ¶
func (in *AzureMachineSpec) DeepCopy() *AzureMachineSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMachineSpec.
func (*AzureMachineSpec) DeepCopyInto ¶
func (in *AzureMachineSpec) DeepCopyInto(out *AzureMachineSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureMachineSpec) SetDataDisksDefaults ¶
func (s *AzureMachineSpec) SetDataDisksDefaults()
SetDataDisksDefaults sets the data disk defaults for an AzureMachine.
func (*AzureMachineSpec) SetDefaultCachingType ¶
func (s *AzureMachineSpec) SetDefaultCachingType()
SetDefaultCachingType sets the default cache type for an AzureMachine.
func (*AzureMachineSpec) SetDefaultSSHPublicKey ¶
func (s *AzureMachineSpec) SetDefaultSSHPublicKey() error
SetDefaultSSHPublicKey sets the default SSHPublicKey for an AzureMachine.
func (*AzureMachineSpec) SetDiagnosticsDefaults ¶
func (s *AzureMachineSpec) SetDiagnosticsDefaults()
SetDiagnosticsDefaults sets the defaults for Diagnostic settings for an AzureMachinePool.
func (*AzureMachineSpec) SetIdentityDefaults ¶
func (s *AzureMachineSpec) SetIdentityDefaults(subscriptionID string)
SetIdentityDefaults sets the defaults for VM Identity.
func (*AzureMachineSpec) SetNetworkInterfacesDefaults ¶
func (s *AzureMachineSpec) SetNetworkInterfacesDefaults()
SetNetworkInterfacesDefaults sets the defaults for the network interfaces.
func (*AzureMachineSpec) SetSpotEvictionPolicyDefaults ¶
func (s *AzureMachineSpec) SetSpotEvictionPolicyDefaults()
SetSpotEvictionPolicyDefaults sets the defaults for the spot VM eviction policy.
type AzureMachineStatus ¶
type AzureMachineStatus struct {
// Ready is true when the provider resource is ready.
// +optional
Ready bool `json:"ready"`
// Addresses contains the Azure instance associated addresses.
// +optional
Addresses []corev1.NodeAddress `json:"addresses,omitempty"`
// VMState is the provisioning state of the Azure virtual machine.
// +optional
VMState *ProvisioningState `json:"vmState,omitempty"`
// ErrorReason will be set in the event that there is a terminal problem
// reconciling the Machine 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 Machine'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 Machines
// can be added as events to the Machine object and/or logged in the
// controller's output.
// +optional
FailureReason *errors.MachineStatusError `json:"failureReason,omitempty"`
// ErrorMessage will be set in the event that there is a terminal problem
// reconciling the Machine 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 Machine'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 Machines
// can be added as events to the Machine object and/or logged in the
// controller's output.
// +optional
FailureMessage *string `json:"failureMessage,omitempty"`
// Conditions defines current service state of the AzureMachine.
// +optional
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
// LongRunningOperationStates saves the states for Azure long-running operations so they can be continued on the
// next reconciliation loop.
// +optional
LongRunningOperationStates Futures `json:"longRunningOperationStates,omitempty"`
}
AzureMachineStatus defines the observed state of AzureMachine.
func (*AzureMachineStatus) DeepCopy ¶
func (in *AzureMachineStatus) DeepCopy() *AzureMachineStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMachineStatus.
func (*AzureMachineStatus) DeepCopyInto ¶
func (in *AzureMachineStatus) DeepCopyInto(out *AzureMachineStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureMachineTemplate ¶
type AzureMachineTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AzureMachineTemplateSpec `json:"spec,omitempty"`
}
AzureMachineTemplate is the Schema for the azuremachinetemplates API.
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.
func (*AzureMachineTemplate) DeepCopyObject ¶
func (in *AzureMachineTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureMachineTemplate) Hub ¶
func (*AzureMachineTemplate) Hub()
Hub marks AzureMachineTemplate as a conversion hub.
func (*AzureMachineTemplate) ValidateCreate ¶
func (r *AzureMachineTemplate) ValidateCreate(ctx context.Context, obj runtime.Object) (jjjWarnings, error)
ValidateCreate implements webhook.CustomValidator so a webhook will be registered for the type.
func (*AzureMachineTemplate) ValidateDelete ¶
func (r *AzureMachineTemplate) ValidateDelete(ctx context.Context, obj runtime.Object) (jjjWarnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
type AzureMachineTemplateList ¶
type AzureMachineTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AzureMachineTemplate `json:"items"`
}
AzureMachineTemplateList contains a list of AzureMachineTemplates.
func (*AzureMachineTemplateList) DeepCopy ¶
func (in *AzureMachineTemplateList) DeepCopy() *AzureMachineTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMachineTemplateList.
func (*AzureMachineTemplateList) DeepCopyInto ¶
func (in *AzureMachineTemplateList) DeepCopyInto(out *AzureMachineTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureMachineTemplateList) DeepCopyObject ¶
func (in *AzureMachineTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureMachineTemplateList) Hub ¶
func (*AzureMachineTemplateList) Hub()
Hub marks AzureMachineTemplateList as a conversion hub.
type AzureMachineTemplateResource ¶
type AzureMachineTemplateResource struct {
// +optional
ObjectMeta clusterv1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the specification of the desired behavior of the machine.
Spec AzureMachineSpec `json:"spec"`
}
AzureMachineTemplateResource describes the data needed to create an AzureMachine from a template.
func (*AzureMachineTemplateResource) DeepCopy ¶
func (in *AzureMachineTemplateResource) DeepCopy() *AzureMachineTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMachineTemplateResource.
func (*AzureMachineTemplateResource) DeepCopyInto ¶
func (in *AzureMachineTemplateResource) DeepCopyInto(out *AzureMachineTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureMachineTemplateSpec ¶
type AzureMachineTemplateSpec struct {
Template AzureMachineTemplateResource `json:"template"`
}
AzureMachineTemplateSpec defines the desired state of AzureMachineTemplate.
func (*AzureMachineTemplateSpec) DeepCopy ¶
func (in *AzureMachineTemplateSpec) DeepCopy() *AzureMachineTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMachineTemplateSpec.
func (*AzureMachineTemplateSpec) DeepCopyInto ¶
func (in *AzureMachineTemplateSpec) DeepCopyInto(out *AzureMachineTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedCluster ¶
type AzureManagedCluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AzureManagedClusterSpec `json:"spec,omitempty"`
Status AzureManagedClusterStatus `json:"status,omitempty"`
}
AzureManagedCluster is the Schema for the azuremanagedclusters API.
func (*AzureManagedCluster) DeepCopy ¶
func (in *AzureManagedCluster) DeepCopy() *AzureManagedCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedCluster.
func (*AzureManagedCluster) DeepCopyInto ¶
func (in *AzureManagedCluster) DeepCopyInto(out *AzureManagedCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureManagedCluster) DeepCopyObject ¶
func (in *AzureManagedCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureManagedCluster) Hub ¶
func (*AzureManagedCluster) Hub()
Hub marks AzureManagedCluster as a conversion hub.
func (*AzureManagedCluster) ValidateCreate ¶
func (r *AzureManagedCluster) ValidateCreate() (jjjWarnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*AzureManagedCluster) ValidateDelete ¶
func (r *AzureManagedCluster) ValidateDelete() (jjjWarnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*AzureManagedCluster) ValidateUpdate ¶
func (r *AzureManagedCluster) ValidateUpdate(oldRaw runtime.Object) (jjjWarnings, error)
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type AzureManagedClusterList ¶
type AzureManagedClusterList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AzureManagedCluster `json:"items"`
}
AzureManagedClusterList contains a list of AzureManagedClusters.
func (*AzureManagedClusterList) DeepCopy ¶
func (in *AzureManagedClusterList) DeepCopy() *AzureManagedClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedClusterList.
func (*AzureManagedClusterList) DeepCopyInto ¶
func (in *AzureManagedClusterList) DeepCopyInto(out *AzureManagedClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureManagedClusterList) DeepCopyObject ¶
func (in *AzureManagedClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureManagedClusterList) Hub ¶
func (*AzureManagedClusterList) Hub()
Hub marks AzureManagedClusterList as a conversion hub.
type AzureManagedClusterSpec ¶
type AzureManagedClusterSpec struct {
// ControlPlaneEndpoint represents the endpoint used to communicate with the control plane.
// Immutable, populated by the AKS API at create.
// Because this field is programmatically set by CAPZ after resource creation, we define it as +optional
// in the API schema to permit resource admission.
// +optional
ControlPlaneEndpoint clusterv1.APIEndpoint `json:"controlPlaneEndpoint"`
}
AzureManagedClusterSpec defines the desired state of AzureManagedCluster.
func (*AzureManagedClusterSpec) DeepCopy ¶
func (in *AzureManagedClusterSpec) DeepCopy() *AzureManagedClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedClusterSpec.
func (*AzureManagedClusterSpec) DeepCopyInto ¶
func (in *AzureManagedClusterSpec) DeepCopyInto(out *AzureManagedClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedClusterStatus ¶
type AzureManagedClusterStatus struct {
// Ready is true when the provider resource is ready.
// +optional
Ready bool `json:"ready,omitempty"`
}
AzureManagedClusterStatus defines the observed state of AzureManagedCluster.
func (*AzureManagedClusterStatus) DeepCopy ¶
func (in *AzureManagedClusterStatus) DeepCopy() *AzureManagedClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedClusterStatus.
func (*AzureManagedClusterStatus) DeepCopyInto ¶
func (in *AzureManagedClusterStatus) DeepCopyInto(out *AzureManagedClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedClusterTemplate ¶
type AzureManagedClusterTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AzureManagedClusterTemplateSpec `json:"spec,omitempty"`
}
AzureManagedClusterTemplate is the Schema for the AzureManagedClusterTemplates API.
func (*AzureManagedClusterTemplate) DeepCopy ¶
func (in *AzureManagedClusterTemplate) DeepCopy() *AzureManagedClusterTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedClusterTemplate.
func (*AzureManagedClusterTemplate) DeepCopyInto ¶
func (in *AzureManagedClusterTemplate) DeepCopyInto(out *AzureManagedClusterTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureManagedClusterTemplate) DeepCopyObject ¶
func (in *AzureManagedClusterTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureManagedClusterTemplate) ValidateCreate ¶
func (r *AzureManagedClusterTemplate) ValidateCreate() (jjjWarnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type.
func (*AzureManagedClusterTemplate) ValidateDelete ¶
func (r *AzureManagedClusterTemplate) ValidateDelete() (jjjWarnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
func (*AzureManagedClusterTemplate) ValidateUpdate ¶
func (r *AzureManagedClusterTemplate) ValidateUpdate(_ runtime.Object) (jjjWarnings, error)
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.
type AzureManagedClusterTemplateList ¶
type AzureManagedClusterTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AzureManagedClusterTemplate `json:"items"`
}
AzureManagedClusterTemplateList contains a list of AzureManagedClusterTemplates.
func (*AzureManagedClusterTemplateList) DeepCopy ¶
func (in *AzureManagedClusterTemplateList) DeepCopy() *AzureManagedClusterTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedClusterTemplateList.
func (*AzureManagedClusterTemplateList) DeepCopyInto ¶
func (in *AzureManagedClusterTemplateList) DeepCopyInto(out *AzureManagedClusterTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureManagedClusterTemplateList) DeepCopyObject ¶
func (in *AzureManagedClusterTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AzureManagedClusterTemplateResource ¶
type AzureManagedClusterTemplateResource struct {
Spec AzureManagedClusterTemplateResourceSpec `json:"spec"`
}
AzureManagedClusterTemplateResource describes the data needed to create an AzureManagedCluster from a template.
func (*AzureManagedClusterTemplateResource) DeepCopy ¶
func (in *AzureManagedClusterTemplateResource) DeepCopy() *AzureManagedClusterTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedClusterTemplateResource.
func (*AzureManagedClusterTemplateResource) DeepCopyInto ¶
func (in *AzureManagedClusterTemplateResource) DeepCopyInto(out *AzureManagedClusterTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedClusterTemplateResourceSpec ¶
type AzureManagedClusterTemplateResourceSpec struct{}
AzureManagedClusterTemplateResourceSpec specifies an Azure managed cluster template resource.
func (*AzureManagedClusterTemplateResourceSpec) DeepCopy ¶
func (in *AzureManagedClusterTemplateResourceSpec) DeepCopy() *AzureManagedClusterTemplateResourceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedClusterTemplateResourceSpec.
func (*AzureManagedClusterTemplateResourceSpec) DeepCopyInto ¶
func (in *AzureManagedClusterTemplateResourceSpec) DeepCopyInto(out *AzureManagedClusterTemplateResourceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedClusterTemplateSpec ¶
type AzureManagedClusterTemplateSpec struct {
Template AzureManagedClusterTemplateResource `json:"template"`
}
AzureManagedClusterTemplateSpec defines the desired state of AzureManagedClusterTemplate.
func (*AzureManagedClusterTemplateSpec) DeepCopy ¶
func (in *AzureManagedClusterTemplateSpec) DeepCopy() *AzureManagedClusterTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedClusterTemplateSpec.
func (*AzureManagedClusterTemplateSpec) DeepCopyInto ¶
func (in *AzureManagedClusterTemplateSpec) DeepCopyInto(out *AzureManagedClusterTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedControlPlane ¶
type AzureManagedControlPlane struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AzureManagedControlPlaneSpec `json:"spec,omitempty"`
Status AzureManagedControlPlaneStatus `json:"status,omitempty"`
}
AzureManagedControlPlane is the Schema for the azuremanagedcontrolplanes API.
func (*AzureManagedControlPlane) DeepCopy ¶
func (in *AzureManagedControlPlane) DeepCopy() *AzureManagedControlPlane
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedControlPlane.
func (*AzureManagedControlPlane) DeepCopyInto ¶
func (in *AzureManagedControlPlane) DeepCopyInto(out *AzureManagedControlPlane)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureManagedControlPlane) DeepCopyObject ¶
func (in *AzureManagedControlPlane) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureManagedControlPlane) GetConditions ¶
func (m *AzureManagedControlPlane) GetConditions() clusterv1.Conditions
GetConditions returns the list of conditions for an AzureManagedControlPlane API object.
func (*AzureManagedControlPlane) GetFutures ¶
func (m *AzureManagedControlPlane) GetFutures() Futures
GetFutures returns the list of long running operation states for an AzureManagedControlPlane API object.
func (*AzureManagedControlPlane) Hub ¶
func (*AzureManagedControlPlane) Hub()
Hub marks AzureManagedControlPlane as a conversion hub.
func (*AzureManagedControlPlane) SetConditions ¶
func (m *AzureManagedControlPlane) SetConditions(conditions clusterv1.Conditions)
SetConditions will set the given conditions on an AzureManagedControlPlane object.
func (*AzureManagedControlPlane) SetFutures ¶
func (m *AzureManagedControlPlane) SetFutures(futures Futures)
SetFutures will set the given long running operation states on an AzureManagedControlPlane object.
type AzureManagedControlPlaneClassSpec ¶
type AzureManagedControlPlaneClassSpec struct {
// MachineTemplate contains information about how machines
// should be shaped when creating or updating a control plane.
// For the AzureManagedControlPlaneTemplate, this field is used
// only to fulfill the CAPI contract.
// +optional
MachineTemplate *AzureManagedControlPlaneTemplateMachineTemplate `json:"machineTemplate,omitempty"`
// ResourceGroupName is the name of the Azure resource group for this AKS Cluster.
// Immutable.
ResourceGroupName string `json:"resourceGroupName"`
// Version defines the desired Kubernetes version.
// +kubebuilder:validation:MinLength:=2
Version string `json:"version"`
// VirtualNetwork describes the virtual network for the AKS cluster. It will be created if it does not already exist.
// +optional
VirtualNetwork ManagedControlPlaneVirtualNetwork `json:"virtualNetwork,omitempty"`
// SubscriptionID is the GUID of the Azure subscription that owns this cluster.
// +optional
SubscriptionID string `json:"subscriptionID,omitempty"`
// Location is a string matching one of the canonical Azure region names. Examples: "westus2", "eastus".
Location string `json:"location"`
// AdditionalTags is an optional set of tags to add to Azure resources managed by the Azure provider, in addition to the
// ones added by default.
// +optional
AdditionalTags Tags `json:"additionalTags,omitempty"`
// NetworkPlugin used for building Kubernetes network.
// +kubebuilder:validation:Enum=azure;kubenet;none
// +optional
NetworkPlugin *string `json:"networkPlugin,omitempty"`
// NetworkPluginMode is the mode the network plugin should use.
// Allowed value is "overlay".
// +kubebuilder:validation:Enum=overlay
// +optional
NetworkPluginMode *NetworkPluginMode `json:"networkPluginMode,omitempty"`
// NetworkPolicy used for building Kubernetes network.
// +kubebuilder:validation:Enum=azure;calico;cilium
// +optional
NetworkPolicy *string `json:"networkPolicy,omitempty"`
// NetworkDataplane is the dataplane used for building the Kubernetes network.
// +kubebuilder:validation:Enum=azure;cilium
// +optional
NetworkDataplane *NetworkDataplaneType `json:"networkDataplane,omitempty"`
// Outbound configuration used by Nodes.
// +kubebuilder:validation:Enum=loadBalancer;managedNATGateway;userAssignedNATGateway;userDefinedRouting
// +optional
OutboundType *ManagedControlPlaneOutboundType `json:"outboundType,omitempty"`
// DNSServiceIP is an IP address assigned to the Kubernetes DNS service.
// It must be within the Kubernetes service address range specified in serviceCidr.
// Immutable.
// +optional
DNSServiceIP *string `json:"dnsServiceIP,omitempty"`
// LoadBalancerSKU is the SKU of the loadBalancer to be provisioned.
// Immutable.
// +kubebuilder:validation:Enum=Basic;Standard
// +kubebuilder:default:=Standard
// +optional
LoadBalancerSKU *string `json:"loadBalancerSKU,omitempty"`
// IdentityRef is a reference to a AzureClusterIdentity to be used when reconciling this cluster
IdentityRef *corev1.ObjectReference `json:"identityRef"`
// AadProfile is Azure Active Directory configuration to integrate with AKS for aad authentication.
// +optional
AADProfile *AADProfile `json:"aadProfile,omitempty"`
// AddonProfiles are the profiles of managed cluster add-on.
// +optional
AddonProfiles []AddonProfile `json:"addonProfiles,omitempty"`
// SKU is the SKU of the AKS to be provisioned.
// +optional
SKU *AKSSku `json:"sku,omitempty"`
// LoadBalancerProfile is the profile of the cluster load balancer.
// +optional
LoadBalancerProfile *LoadBalancerProfile `json:"loadBalancerProfile,omitempty"`
// APIServerAccessProfile is the access profile for AKS API server.
// Immutable except for `authorizedIPRanges`.
// +optional
APIServerAccessProfile *APIServerAccessProfile `json:"apiServerAccessProfile,omitempty"`
// AutoscalerProfile is the parameters to be applied to the cluster-autoscaler when enabled
// +optional
AutoScalerProfile *AutoScalerProfile `json:"autoscalerProfile,omitempty"`
// AzureEnvironment is the name of the AzureCloud to be used.
// The default value that would be used by most users is "AzurePublicCloud", other values are:
// - ChinaCloud: "AzureChinaCloud"
// - PublicCloud: "AzurePublicCloud"
// - USGovernmentCloud: "AzureUSGovernmentCloud"
//
// Note that values other than the default must also be accompanied by corresponding changes to the
// aso-controller-settings Secret to configure ASO to refer to the non-Public cloud. ASO currently does
// not support referring to multiple different clouds in a single installation. The following fields must
// be defined in the Secret:
// - AZURE_AUTHORITY_HOST
// - AZURE_RESOURCE_MANAGER_ENDPOINT
// - AZURE_RESOURCE_MANAGER_AUDIENCE
//
// See the [ASO docs] for more details.
//
// [ASO docs]: https://azure.github.io/azure-service-operator/guide/aso-controller-settings-options/
// +optional
AzureEnvironment string `json:"azureEnvironment,omitempty"`
// Identity configuration used by the AKS control plane.
// +optional
Identity *Identity `json:"identity,omitempty"`
// KubeletUserAssignedIdentity is the user-assigned identity for kubelet.
// For authentication with Azure Container Registry.
// +optional
KubeletUserAssignedIdentity string `json:"kubeletUserAssignedIdentity,omitempty"`
// HTTPProxyConfig is the HTTP proxy configuration for the cluster.
// Immutable.
// +optional
HTTPProxyConfig *HTTPProxyConfig `json:"httpProxyConfig,omitempty"`
// OIDCIssuerProfile is the OIDC issuer profile of the Managed Cluster.
// +optional
OIDCIssuerProfile *OIDCIssuerProfile `json:"oidcIssuerProfile,omitempty"`
// DisableLocalAccounts disables getting static credentials for this cluster when set. Expected to only be used for AAD clusters.
// +optional
DisableLocalAccounts *bool `json:"disableLocalAccounts,omitempty"`
// FleetsMember is the spec for the fleet this cluster is a member of.
// See also [AKS doc].
//
// [AKS doc]: https://learn.microsoft.com/en-us/azure/templates/microsoft.containerservice/2023-03-15-preview/fleets/members
// +optional
FleetsMember *FleetsMemberClassSpec `json:"fleetsMember,omitempty"`
// Extensions is a list of AKS extensions to be installed on the cluster.
// +optional
Extensions []AKSExtension `json:"extensions,omitempty"`
// AutoUpgradeProfile defines the auto upgrade configuration.
// +optional
AutoUpgradeProfile *ManagedClusterAutoUpgradeProfile `json:"autoUpgradeProfile,omitempty"`
// SecurityProfile defines the security profile for cluster.
// +optional
SecurityProfile *ManagedClusterSecurityProfile `json:"securityProfile,omitempty"`
// ASOManagedClusterPatches defines JSON merge patches to be applied to the generated ASO ManagedCluster resource.
// WARNING: This is meant to be used sparingly to enable features for development and testing that are not
// otherwise represented in the CAPZ API. Misconfiguration that conflicts with CAPZ's normal mode of
// operation is possible.
// +optional
ASOManagedClusterPatches []string `json:"asoManagedClusterPatches,omitempty"`
// EnablePreviewFeatures enables preview features for the cluster.
// +optional
EnablePreviewFeatures *bool `json:"enablePreviewFeatures,omitempty"`
}
AzureManagedControlPlaneClassSpec defines the AzureManagedControlPlane properties that may be shared across several azure managed control planes.
func (*AzureManagedControlPlaneClassSpec) DeepCopy ¶
func (in *AzureManagedControlPlaneClassSpec) DeepCopy() *AzureManagedControlPlaneClassSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedControlPlaneClassSpec.
func (*AzureManagedControlPlaneClassSpec) DeepCopyInto ¶
func (in *AzureManagedControlPlaneClassSpec) DeepCopyInto(out *AzureManagedControlPlaneClassSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedControlPlaneList ¶
type AzureManagedControlPlaneList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AzureManagedControlPlane `json:"items"`
}
AzureManagedControlPlaneList contains a list of AzureManagedControlPlane.
func (*AzureManagedControlPlaneList) DeepCopy ¶
func (in *AzureManagedControlPlaneList) DeepCopy() *AzureManagedControlPlaneList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedControlPlaneList.
func (*AzureManagedControlPlaneList) DeepCopyInto ¶
func (in *AzureManagedControlPlaneList) DeepCopyInto(out *AzureManagedControlPlaneList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureManagedControlPlaneList) DeepCopyObject ¶
func (in *AzureManagedControlPlaneList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureManagedControlPlaneList) Hub ¶
func (*AzureManagedControlPlaneList) Hub()
Hub marks AzureManagedControlPlaneList as a conversion hub.
type AzureManagedControlPlaneSkuTier ¶
type AzureManagedControlPlaneSkuTier string
AzureManagedControlPlaneSkuTier - Tier of a managed cluster SKU. +kubebuilder:validation:Enum=Free;Paid;Standard
const ( // FreeManagedControlPlaneTier is the free tier of AKS without corresponding SLAs. FreeManagedControlPlaneTier AzureManagedControlPlaneSkuTier = "Free" // PaidManagedControlPlaneTier is the paid tier of AKS with corresponding SLAs. // Deprecated. It has been replaced with StandardManagedControlPlaneTier. PaidManagedControlPlaneTier AzureManagedControlPlaneSkuTier = "Paid" // StandardManagedControlPlaneTier is the standard tier of AKS with corresponding SLAs. StandardManagedControlPlaneTier AzureManagedControlPlaneSkuTier = "Standard" )
type AzureManagedControlPlaneSpec ¶
type AzureManagedControlPlaneSpec struct {
AzureManagedControlPlaneClassSpec `json:",inline"`
// NodeResourceGroupName is the name of the resource group
// containing cluster IaaS resources. Will be populated to default
// in webhook.
// Immutable.
// +optional
NodeResourceGroupName string `json:"nodeResourceGroupName,omitempty"`
// ControlPlaneEndpoint represents the endpoint used to communicate with the control plane.
// Immutable, populated by the AKS API at create.
// +optional
ControlPlaneEndpoint clusterv1.APIEndpoint `json:"controlPlaneEndpoint,omitempty"`
// SSHPublicKey is a string literal containing an ssh public key base64 encoded.
// Use empty string to autogenerate new key. Use null value to not set key.
// Immutable.
// +optional
SSHPublicKey *string `json:"sshPublicKey,omitempty"`
// DNSPrefix allows the user to customize dns prefix.
// Immutable.
// +optional
DNSPrefix *string `json:"dnsPrefix,omitempty"`
// FleetsMember is the spec for the fleet this cluster is a member of.
// See also [AKS doc].
//
// [AKS doc]: https://learn.microsoft.com/en-us/azure/templates/microsoft.containerservice/2023-03-15-preview/fleets/members
// +optional
FleetsMember *FleetsMember `json:"fleetsMember,omitempty"`
}
AzureManagedControlPlaneSpec defines the desired state of AzureManagedControlPlane.
func (*AzureManagedControlPlaneSpec) DeepCopy ¶
func (in *AzureManagedControlPlaneSpec) DeepCopy() *AzureManagedControlPlaneSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedControlPlaneSpec.
func (*AzureManagedControlPlaneSpec) DeepCopyInto ¶
func (in *AzureManagedControlPlaneSpec) DeepCopyInto(out *AzureManagedControlPlaneSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedControlPlaneStatus ¶
type AzureManagedControlPlaneStatus struct {
// AutoUpgradeVersion is the Kubernetes version populated after auto-upgrade based on the upgrade channel.
// +kubebuilder:validation:MinLength=2
// +optional
AutoUpgradeVersion string `json:"autoUpgradeVersion,omitempty"`
// Ready is true when the provider resource is ready.
// +optional
Ready bool `json:"ready,omitempty"`
// Initialized is true when the control plane is available for initial contact.
// This may occur before the control plane is fully ready.
// In the AzureManagedControlPlane implementation, these are identical.
// +optional
Initialized bool `json:"initialized,omitempty"`
// Conditions defines current service state of the AzureManagedControlPlane.
// +optional
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
// LongRunningOperationStates saves the states for Azure long-running operations so they can be continued on the
// next reconciliation loop.
// +optional
LongRunningOperationStates Futures `json:"longRunningOperationStates,omitempty"`
// OIDCIssuerProfile is the OIDC issuer profile of the Managed Cluster.
// +optional
OIDCIssuerProfile *OIDCIssuerProfileStatus `json:"oidcIssuerProfile,omitempty"`
// Version defines the Kubernetes version for the control plane instance.
// +optional
Version string `json:"version"`
}
AzureManagedControlPlaneStatus defines the observed state of AzureManagedControlPlane.
func (*AzureManagedControlPlaneStatus) DeepCopy ¶
func (in *AzureManagedControlPlaneStatus) DeepCopy() *AzureManagedControlPlaneStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedControlPlaneStatus.
func (*AzureManagedControlPlaneStatus) DeepCopyInto ¶
func (in *AzureManagedControlPlaneStatus) DeepCopyInto(out *AzureManagedControlPlaneStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedControlPlaneTemplate ¶
type AzureManagedControlPlaneTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AzureManagedControlPlaneTemplateSpec `json:"spec,omitempty"`
}
AzureManagedControlPlaneTemplate is the Schema for the AzureManagedControlPlaneTemplates API.
func (*AzureManagedControlPlaneTemplate) DeepCopy ¶
func (in *AzureManagedControlPlaneTemplate) DeepCopy() *AzureManagedControlPlaneTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedControlPlaneTemplate.
func (*AzureManagedControlPlaneTemplate) DeepCopyInto ¶
func (in *AzureManagedControlPlaneTemplate) DeepCopyInto(out *AzureManagedControlPlaneTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureManagedControlPlaneTemplate) DeepCopyObject ¶
func (in *AzureManagedControlPlaneTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AzureManagedControlPlaneTemplateList ¶
type AzureManagedControlPlaneTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AzureManagedControlPlaneTemplate `json:"items"`
}
AzureManagedControlPlaneTemplateList contains a list of AzureManagedControlPlaneTemplates.
func (*AzureManagedControlPlaneTemplateList) DeepCopy ¶
func (in *AzureManagedControlPlaneTemplateList) DeepCopy() *AzureManagedControlPlaneTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedControlPlaneTemplateList.
func (*AzureManagedControlPlaneTemplateList) DeepCopyInto ¶
func (in *AzureManagedControlPlaneTemplateList) DeepCopyInto(out *AzureManagedControlPlaneTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureManagedControlPlaneTemplateList) DeepCopyObject ¶
func (in *AzureManagedControlPlaneTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AzureManagedControlPlaneTemplateMachineTemplate ¶
type AzureManagedControlPlaneTemplateMachineTemplate struct{}
AzureManagedControlPlaneTemplateMachineTemplate is only used to fulfill the CAPI contract which expects a MachineTemplate field for any controlplane ref in a topology.
func (*AzureManagedControlPlaneTemplateMachineTemplate) DeepCopy ¶
func (in *AzureManagedControlPlaneTemplateMachineTemplate) DeepCopy() *AzureManagedControlPlaneTemplateMachineTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedControlPlaneTemplateMachineTemplate.
func (*AzureManagedControlPlaneTemplateMachineTemplate) DeepCopyInto ¶
func (in *AzureManagedControlPlaneTemplateMachineTemplate) DeepCopyInto(out *AzureManagedControlPlaneTemplateMachineTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedControlPlaneTemplateResource ¶
type AzureManagedControlPlaneTemplateResource struct {
Spec AzureManagedControlPlaneTemplateResourceSpec `json:"spec"`
}
AzureManagedControlPlaneTemplateResource describes the data needed to create an AzureManagedCluster from a template.
func (*AzureManagedControlPlaneTemplateResource) DeepCopy ¶
func (in *AzureManagedControlPlaneTemplateResource) DeepCopy() *AzureManagedControlPlaneTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedControlPlaneTemplateResource.
func (*AzureManagedControlPlaneTemplateResource) DeepCopyInto ¶
func (in *AzureManagedControlPlaneTemplateResource) DeepCopyInto(out *AzureManagedControlPlaneTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedControlPlaneTemplateResourceSpec ¶
type AzureManagedControlPlaneTemplateResourceSpec struct {
AzureManagedControlPlaneClassSpec `json:",inline"`
}
AzureManagedControlPlaneTemplateResourceSpec specifies an Azure managed control plane template resource.
func (*AzureManagedControlPlaneTemplateResourceSpec) DeepCopy ¶
func (in *AzureManagedControlPlaneTemplateResourceSpec) DeepCopy() *AzureManagedControlPlaneTemplateResourceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedControlPlaneTemplateResourceSpec.
func (*AzureManagedControlPlaneTemplateResourceSpec) DeepCopyInto ¶
func (in *AzureManagedControlPlaneTemplateResourceSpec) DeepCopyInto(out *AzureManagedControlPlaneTemplateResourceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedControlPlaneTemplateSpec ¶
type AzureManagedControlPlaneTemplateSpec struct {
Template AzureManagedControlPlaneTemplateResource `json:"template"`
}
AzureManagedControlPlaneTemplateSpec defines the desired state of AzureManagedControlPlaneTemplate.
func (*AzureManagedControlPlaneTemplateSpec) DeepCopy ¶
func (in *AzureManagedControlPlaneTemplateSpec) DeepCopy() *AzureManagedControlPlaneTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedControlPlaneTemplateSpec.
func (*AzureManagedControlPlaneTemplateSpec) DeepCopyInto ¶
func (in *AzureManagedControlPlaneTemplateSpec) DeepCopyInto(out *AzureManagedControlPlaneTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedMachinePool ¶
type AzureManagedMachinePool struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AzureManagedMachinePoolSpec `json:"spec,omitempty"`
Status AzureManagedMachinePoolStatus `json:"status,omitempty"`
}
AzureManagedMachinePool is the Schema for the azuremanagedmachinepools API.
func (*AzureManagedMachinePool) DeepCopy ¶
func (in *AzureManagedMachinePool) DeepCopy() *AzureManagedMachinePool
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedMachinePool.
func (*AzureManagedMachinePool) DeepCopyInto ¶
func (in *AzureManagedMachinePool) DeepCopyInto(out *AzureManagedMachinePool)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureManagedMachinePool) DeepCopyObject ¶
func (in *AzureManagedMachinePool) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureManagedMachinePool) GetConditions ¶
func (m *AzureManagedMachinePool) GetConditions() clusterv1.Conditions
GetConditions returns the list of conditions for an AzureManagedMachinePool API object.
func (*AzureManagedMachinePool) GetFutures ¶
func (m *AzureManagedMachinePool) GetFutures() Futures
GetFutures returns the list of long running operation states for an AzureManagedMachinePool API object.
func (*AzureManagedMachinePool) Hub ¶
func (*AzureManagedMachinePool) Hub()
Hub marks AzureManagedMachinePool as a conversion hub.
func (*AzureManagedMachinePool) SetConditions ¶
func (m *AzureManagedMachinePool) SetConditions(conditions clusterv1.Conditions)
SetConditions will set the given conditions on an AzureManagedMachinePool object.
func (*AzureManagedMachinePool) SetFutures ¶
func (m *AzureManagedMachinePool) SetFutures(futures Futures)
SetFutures will set the given long running operation states on an AzureManagedMachinePool object.
type AzureManagedMachinePoolClassSpec ¶
type AzureManagedMachinePoolClassSpec struct {
// AdditionalTags is an optional set of tags to add to Azure resources managed by the
// Azure provider, in addition to the ones added by default.
// +optional
AdditionalTags Tags `json:"additionalTags,omitempty"`
// Name is the name of the agent pool. If not specified, CAPZ uses the name of the CR as the agent pool name.
// Immutable.
// +optional
Name *string `json:"name,omitempty"`
// Mode represents the mode of an agent pool. Possible values include: System, User.
// +kubebuilder:validation:Enum=System;User
Mode string `json:"mode"`
// SKU is the size of the VMs in the node pool.
// Immutable.
SKU string `json:"sku"`
// OSDiskSizeGB is the disk size for every machine in this agent pool.
// If you specify 0, it will apply the default osDisk size according to the vmSize specified.
// Immutable.
// +optional
OSDiskSizeGB *int `json:"osDiskSizeGB,omitempty"`
// AvailabilityZones - Availability zones for nodes. Must use VirtualMachineScaleSets AgentPoolType.
// Immutable.
// +optional
AvailabilityZones []string `json:"availabilityZones,omitempty"`
// Node labels represent the labels for all of the nodes present in node pool.
// See also [AKS doc].
//
// [AKS doc]: https://learn.microsoft.com/azure/aks/use-labels
// +optional
NodeLabels map[string]string `json:"nodeLabels,omitempty"`
// Taints specifies the taints for nodes present in this agent pool.
// See also [AKS doc].
//
// [AKS doc]: https://learn.microsoft.com/azure/aks/use-multiple-node-pools#setting-node-pool-taints
// +optional
Taints Taints `json:"taints,omitempty"`
// Scaling specifies the autoscaling parameters for the node pool.
// +optional
Scaling *ManagedMachinePoolScaling `json:"scaling,omitempty"`
// MaxPods specifies the kubelet `--max-pods` configuration for the node pool.
// Immutable.
// See also [AKS doc], [K8s doc].
//
// [AKS doc]: https://learn.microsoft.com/azure/aks/configure-azure-cni#configure-maximum---new-clusters
// [K8s doc]: https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/
// +optional
MaxPods *int `json:"maxPods,omitempty"`
// OsDiskType specifies the OS disk type for each node in the pool. Allowed values are 'Ephemeral' and 'Managed' (default).
// Immutable.
// See also [AKS doc].
//
// [AKS doc]: https://learn.microsoft.com/azure/aks/cluster-configuration#ephemeral-os
// +kubebuilder:validation:Enum=Ephemeral;Managed
// +kubebuilder:default=Managed
// +optional
OsDiskType *string `json:"osDiskType,omitempty"`
// EnableUltraSSD enables the storage type UltraSSD_LRS for the agent pool.
// Immutable.
// +optional
EnableUltraSSD *bool `json:"enableUltraSSD,omitempty"`
// OSType specifies the virtual machine operating system. Default to Linux. Possible values include: 'Linux', 'Windows'.
// 'Windows' requires the AzureManagedControlPlane's `spec.networkPlugin` to be `azure`.
// Immutable.
// See also [AKS doc].
//
// [AKS doc]: https://learn.microsoft.com/rest/api/aks/agent-pools/create-or-update?tabs=HTTP#ostype
// +kubebuilder:validation:Enum=Linux;Windows
// +optional
OSType *string `json:"osType,omitempty"`
// EnableNodePublicIP controls whether or not nodes in the pool each have a public IP address.
// Immutable.
// +optional
EnableNodePublicIP *bool `json:"enableNodePublicIP,omitempty"`
// NodePublicIPPrefixID specifies the public IP prefix resource ID which VM nodes should use IPs from.
// Immutable.
// +optional
NodePublicIPPrefixID *string `json:"nodePublicIPPrefixID,omitempty"`
// ScaleSetPriority specifies the ScaleSetPriority value. Default to Regular. Possible values include: 'Regular', 'Spot'
// Immutable.
// +kubebuilder:validation:Enum=Regular;Spot
// +optional
ScaleSetPriority *string `json:"scaleSetPriority,omitempty"`
// ScaleDownMode affects the cluster autoscaler behavior. Default to Delete. Possible values include: 'Deallocate', 'Delete'
// +kubebuilder:validation:Enum=Deallocate;Delete
// +kubebuilder:default=Delete
// +optional
ScaleDownMode *string `json:"scaleDownMode,omitempty"`
// SpotMaxPrice defines max price to pay for spot instance. Possible values are any decimal value greater than zero or -1.
// If you set the max price to be -1, the VM won't be evicted based on price. The price for the VM will be the current price
// for spot or the price for a standard VM, which ever is less, as long as there's capacity and quota available.
// +optional
SpotMaxPrice *resource.Quantity `json:"spotMaxPrice,omitempty"`
// KubeletConfig specifies the kubelet configurations for nodes.
// Immutable.
// +optional
KubeletConfig *KubeletConfig `json:"kubeletConfig,omitempty"`
// KubeletDiskType specifies the kubelet disk type. Default to OS. Possible values include: 'OS', 'Temporary'.
// Requires Microsoft.ContainerService/KubeletDisk preview feature to be set.
// Immutable.
// See also [AKS doc].
//
// [AKS doc]: https://learn.microsoft.com/rest/api/aks/agent-pools/create-or-update?tabs=HTTP#kubeletdisktype
// +kubebuilder:validation:Enum=OS;Temporary
// +optional
KubeletDiskType *KubeletDiskType `json:"kubeletDiskType,omitempty"`
// LinuxOSConfig specifies the custom Linux OS settings and configurations.
// Immutable.
// +optional
LinuxOSConfig *LinuxOSConfig `json:"linuxOSConfig,omitempty"`
// SubnetName specifies the Subnet where the MachinePool will be placed
// Immutable.
// +optional
SubnetName *string `json:"subnetName,omitempty"`
// EnableFIPS indicates whether FIPS is enabled on the node pool.
// Immutable.
// +optional
EnableFIPS *bool `json:"enableFIPS,omitempty"`
// EnableEncryptionAtHost indicates whether host encryption is enabled on the node pool.
// Immutable.
// See also [AKS doc].
//
// [AKS doc]: https://learn.microsoft.com/en-us/azure/aks/enable-host-encryption
// +optional
EnableEncryptionAtHost *bool `json:"enableEncryptionAtHost,omitempty"`
// ASOManagedClustersAgentPoolPatches defines JSON merge patches to be applied to the generated ASO ManagedClustersAgentPool resource.
// WARNING: This is meant to be used sparingly to enable features for development and testing that are not
// otherwise represented in the CAPZ API. Misconfiguration that conflicts with CAPZ's normal mode of
// operation is possible.
// +optional
ASOManagedClustersAgentPoolPatches []string `json:"asoManagedClustersAgentPoolPatches,omitempty"`
}
AzureManagedMachinePoolClassSpec defines the AzureManagedMachinePool properties that may be shared across several Azure managed machinepools.
func (*AzureManagedMachinePoolClassSpec) DeepCopy ¶
func (in *AzureManagedMachinePoolClassSpec) DeepCopy() *AzureManagedMachinePoolClassSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedMachinePoolClassSpec.
func (*AzureManagedMachinePoolClassSpec) DeepCopyInto ¶
func (in *AzureManagedMachinePoolClassSpec) DeepCopyInto(out *AzureManagedMachinePoolClassSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedMachinePoolList ¶
type AzureManagedMachinePoolList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AzureManagedMachinePool `json:"items"`
}
AzureManagedMachinePoolList contains a list of AzureManagedMachinePools.
func (*AzureManagedMachinePoolList) DeepCopy ¶
func (in *AzureManagedMachinePoolList) DeepCopy() *AzureManagedMachinePoolList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedMachinePoolList.
func (*AzureManagedMachinePoolList) DeepCopyInto ¶
func (in *AzureManagedMachinePoolList) DeepCopyInto(out *AzureManagedMachinePoolList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureManagedMachinePoolList) DeepCopyObject ¶
func (in *AzureManagedMachinePoolList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AzureManagedMachinePoolList) Hub ¶
func (*AzureManagedMachinePoolList) Hub()
Hub marks AzureManagedMachinePoolList as a conversion hub.
type AzureManagedMachinePoolSpec ¶
type AzureManagedMachinePoolSpec struct {
AzureManagedMachinePoolClassSpec `json:",inline"`
// ProviderIDList is the unique identifier as specified by the cloud provider.
// +optional
ProviderIDList []string `json:"providerIDList,omitempty"`
}
AzureManagedMachinePoolSpec defines the desired state of AzureManagedMachinePool.
func (*AzureManagedMachinePoolSpec) DeepCopy ¶
func (in *AzureManagedMachinePoolSpec) DeepCopy() *AzureManagedMachinePoolSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedMachinePoolSpec.
func (*AzureManagedMachinePoolSpec) DeepCopyInto ¶
func (in *AzureManagedMachinePoolSpec) DeepCopyInto(out *AzureManagedMachinePoolSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedMachinePoolStatus ¶
type AzureManagedMachinePoolStatus 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"`
// Any transient errors that occur during the reconciliation of Machines
// can be added as events to the Machine object and/or logged in the
// controller's output.
// +optional
ErrorReason *capierrors.MachineStatusError `json:"errorReason,omitempty"`
// Any transient errors that occur during the reconciliation of Machines
// can be added as events to the Machine object and/or logged in the
// controller's output.
// +optional
ErrorMessage *string `json:"errorMessage,omitempty"`
// Conditions defines current service state of the AzureManagedControlPlane.
// +optional
Conditions clusterv1.Conditions `json:"conditions,omitempty"`
// LongRunningOperationStates saves the states for Azure long-running operations so they can be continued on the
// next reconciliation loop.
// +optional
LongRunningOperationStates Futures `json:"longRunningOperationStates,omitempty"`
}
AzureManagedMachinePoolStatus defines the observed state of AzureManagedMachinePool.
func (*AzureManagedMachinePoolStatus) DeepCopy ¶
func (in *AzureManagedMachinePoolStatus) DeepCopy() *AzureManagedMachinePoolStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedMachinePoolStatus.
func (*AzureManagedMachinePoolStatus) DeepCopyInto ¶
func (in *AzureManagedMachinePoolStatus) DeepCopyInto(out *AzureManagedMachinePoolStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedMachinePoolTemplate ¶
type AzureManagedMachinePoolTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec AzureManagedMachinePoolTemplateSpec `json:"spec,omitempty"`
}
AzureManagedMachinePoolTemplate is the Schema for the AzureManagedMachinePoolTemplates API.
func (*AzureManagedMachinePoolTemplate) DeepCopy ¶
func (in *AzureManagedMachinePoolTemplate) DeepCopy() *AzureManagedMachinePoolTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedMachinePoolTemplate.
func (*AzureManagedMachinePoolTemplate) DeepCopyInto ¶
func (in *AzureManagedMachinePoolTemplate) DeepCopyInto(out *AzureManagedMachinePoolTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureManagedMachinePoolTemplate) DeepCopyObject ¶
func (in *AzureManagedMachinePoolTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AzureManagedMachinePoolTemplateList ¶
type AzureManagedMachinePoolTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AzureManagedMachinePoolTemplate `json:"items"`
}
AzureManagedMachinePoolTemplateList contains a list of AzureManagedMachinePoolTemplates.
func (*AzureManagedMachinePoolTemplateList) DeepCopy ¶
func (in *AzureManagedMachinePoolTemplateList) DeepCopy() *AzureManagedMachinePoolTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedMachinePoolTemplateList.
func (*AzureManagedMachinePoolTemplateList) DeepCopyInto ¶
func (in *AzureManagedMachinePoolTemplateList) DeepCopyInto(out *AzureManagedMachinePoolTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AzureManagedMachinePoolTemplateList) DeepCopyObject ¶
func (in *AzureManagedMachinePoolTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AzureManagedMachinePoolTemplateResource ¶
type AzureManagedMachinePoolTemplateResource struct {
Spec AzureManagedMachinePoolTemplateResourceSpec `json:"spec"`
}
AzureManagedMachinePoolTemplateResource describes the data needed to create an AzureManagedCluster from a template.
func (*AzureManagedMachinePoolTemplateResource) DeepCopy ¶
func (in *AzureManagedMachinePoolTemplateResource) DeepCopy() *AzureManagedMachinePoolTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedMachinePoolTemplateResource.
func (*AzureManagedMachinePoolTemplateResource) DeepCopyInto ¶
func (in *AzureManagedMachinePoolTemplateResource) DeepCopyInto(out *AzureManagedMachinePoolTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedMachinePoolTemplateResourceSpec ¶
type AzureManagedMachinePoolTemplateResourceSpec struct {
AzureManagedMachinePoolClassSpec `json:",inline"`
}
AzureManagedMachinePoolTemplateResourceSpec specifies an Azure managed control plane template resource.
func (*AzureManagedMachinePoolTemplateResourceSpec) DeepCopy ¶
func (in *AzureManagedMachinePoolTemplateResourceSpec) DeepCopy() *AzureManagedMachinePoolTemplateResourceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedMachinePoolTemplateResourceSpec.
func (*AzureManagedMachinePoolTemplateResourceSpec) DeepCopyInto ¶
func (in *AzureManagedMachinePoolTemplateResourceSpec) DeepCopyInto(out *AzureManagedMachinePoolTemplateResourceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureManagedMachinePoolTemplateSpec ¶
type AzureManagedMachinePoolTemplateSpec struct {
Template AzureManagedMachinePoolTemplateResource `json:"template"`
}
AzureManagedMachinePoolTemplateSpec defines the desired state of AzureManagedMachinePoolTemplate.
func (*AzureManagedMachinePoolTemplateSpec) DeepCopy ¶
func (in *AzureManagedMachinePoolTemplateSpec) DeepCopy() *AzureManagedMachinePoolTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureManagedMachinePoolTemplateSpec.
func (*AzureManagedMachinePoolTemplateSpec) DeepCopyInto ¶
func (in *AzureManagedMachinePoolTemplateSpec) DeepCopyInto(out *AzureManagedMachinePoolTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureMarketplaceImage ¶
type AzureMarketplaceImage struct {
ImagePlan `json:",inline"`
// Version specifies the version of an image sku. The allowed formats
// are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers.
// Specify 'latest' to use the latest version of an image available at deploy time.
// Even if you use 'latest', the VM image will not automatically update after deploy
// time even if a new version becomes available.
// +kubebuilder:validation:MinLength=1
Version string `json:"version"`
// ThirdPartyImage indicates the image is published by a third party publisher and a Plan
// will be generated for it.
// +kubebuilder:default=false
// +optional
ThirdPartyImage bool `json:"thirdPartyImage"`
}
AzureMarketplaceImage defines an image in the Azure Marketplace to use for VM creation.
func (*AzureMarketplaceImage) DeepCopy ¶
func (in *AzureMarketplaceImage) DeepCopy() *AzureMarketplaceImage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureMarketplaceImage.
func (*AzureMarketplaceImage) DeepCopyInto ¶
func (in *AzureMarketplaceImage) DeepCopyInto(out *AzureMarketplaceImage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureSharedGalleryImage ¶
type AzureSharedGalleryImage struct {
// +kubebuilder:validation:MinLength=1
SubscriptionID string `json:"subscriptionID"`
// +kubebuilder:validation:MinLength=1
ResourceGroup string `json:"resourceGroup"`
// +kubebuilder:validation:MinLength=1
Gallery string `json:"gallery"`
// +kubebuilder:validation:MinLength=1
Name string `json:"name"`
// are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers.
// Specify 'latest' to use the latest version of an image available at deploy time.
// Even if you use 'latest', the VM image will not automatically update after deploy
// time even if a new version becomes available.
// +kubebuilder:validation:MinLength=1
Version string `json:"version"`
// This value will be used to add a `Plan` in the API request when creating the VM/VMSS resource.
// This is needed when the source image from which this SIG image was built requires the `Plan` to be used.
// +optional
Publisher *string `json:"publisher,omitempty"`
// For example, UbuntuServer, WindowsServer
// This value will be used to add a `Plan` in the API request when creating the VM/VMSS resource.
// This is needed when the source image from which this SIG image was built requires the `Plan` to be used.
// +optional
Offer *string `json:"offer,omitempty"`
// For example, 18.04-LTS, 2019-Datacenter
// This value will be used to add a `Plan` in the API request when creating the VM/VMSS resource.
// This is needed when the source image from which this SIG image was built requires the `Plan` to be used.
// +optional
SKU *string `json:"sku,omitempty"`
}
AzureSharedGalleryImage defines an image in a Shared Image Gallery to use for VM creation.
func (*AzureSharedGalleryImage) DeepCopy ¶
func (in *AzureSharedGalleryImage) DeepCopy() *AzureSharedGalleryImage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureSharedGalleryImage.
func (*AzureSharedGalleryImage) DeepCopyInto ¶
func (in *AzureSharedGalleryImage) DeepCopyInto(out *AzureSharedGalleryImage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackOffConfig ¶
type BackOffConfig struct {
// +optional
CloudProviderBackoff bool `json:"cloudProviderBackoff,omitempty"`
// +optional
CloudProviderBackoffRetries int `json:"cloudProviderBackoffRetries,omitempty"`
// +optional
CloudProviderBackoffExponent *resource.Quantity `json:"cloudProviderBackoffExponent,omitempty"`
// +optional
CloudProviderBackoffDuration int `json:"cloudProviderBackoffDuration,omitempty"`
// +optional
CloudProviderBackoffJitter *resource.Quantity `json:"cloudProviderBackoffJitter,omitempty"`
}
BackOffConfig indicates the back-off config options.
func (*BackOffConfig) DeepCopy ¶
func (in *BackOffConfig) DeepCopy() *BackOffConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackOffConfig.
func (*BackOffConfig) DeepCopyInto ¶
func (in *BackOffConfig) DeepCopyInto(out *BackOffConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackendPool ¶
type BackendPool struct {
// Name specifies the name of backend pool for the load balancer. If not specified, the default name will
// be set, depending on the load balancer role.
// +optional
Name string `json:"name,omitempty"`
}
BackendPool describes the backend pool of the load balancer.
func (*BackendPool) DeepCopy ¶
func (in *BackendPool) DeepCopy() *BackendPool
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendPool.
func (*BackendPool) DeepCopyInto ¶
func (in *BackendPool) DeepCopyInto(out *BackendPool)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BalanceSimilarNodeGroups ¶
type BalanceSimilarNodeGroups string
BalanceSimilarNodeGroups enumerates the values for BalanceSimilarNodeGroups.
const ( // BalanceSimilarNodeGroupsTrue ... BalanceSimilarNodeGroupsTrue BalanceSimilarNodeGroups = "true" // BalanceSimilarNodeGroupsFalse ... BalanceSimilarNodeGroupsFalse BalanceSimilarNodeGroups = "false" )
type BastionHostSkuName ¶
type BastionHostSkuName string
BastionHostSkuName is the name of the SKU used to specify the tier of Azure Bastion Host.
const ( // BasicBastionHostSku SKU for the Azure Bastion Host. BasicBastionHostSku BastionHostSkuName = "Basic" // StandardBastionHostSku SKU for the Azure Bastion Host. StandardBastionHostSku BastionHostSkuName = "Standard" )
type BastionSpec ¶
type BastionSpec struct {
// +optional
AzureBastion *AzureBastion `json:"azureBastion,omitempty"`
}
BastionSpec specifies how the Bastion feature should be set up for the cluster.
func (*BastionSpec) DeepCopy ¶
func (in *BastionSpec) DeepCopy() *BastionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BastionSpec.
func (*BastionSpec) DeepCopyInto ¶
func (in *BastionSpec) DeepCopyInto(out *BastionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BastionTemplateSpec ¶
type BastionTemplateSpec struct {
// +optional
AzureBastion *AzureBastionTemplateSpec `json:"azureBastion,omitempty"`
}
BastionTemplateSpec specifies a template for a bastion host.
func (*BastionTemplateSpec) DeepCopy ¶
func (in *BastionTemplateSpec) DeepCopy() *BastionTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BastionTemplateSpec.
func (*BastionTemplateSpec) DeepCopyInto ¶
func (in *BastionTemplateSpec) DeepCopyInto(out *BastionTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BootDiagnostics ¶
type BootDiagnostics struct {
// StorageAccountType determines if the storage account for storing the diagnostics data
// should be disabled (Disabled), provisioned by Azure (Managed) or by the user (UserManaged).
// +kubebuilder:validation:Required
// +unionDiscriminator
StorageAccountType BootDiagnosticsStorageAccountType `json:"storageAccountType"`
// UserManaged provides a reference to the user-managed storage account.
// +optional
UserManaged *UserManagedBootDiagnostics `json:"userManaged,omitempty"`
}
BootDiagnostics configures the boot diagnostics settings for the virtual machine. This allows you to configure capturing serial output from the virtual machine on boot. This is useful for debugging software based launch issues. +union
func (*BootDiagnostics) DeepCopy ¶
func (in *BootDiagnostics) DeepCopy() *BootDiagnostics
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BootDiagnostics.
func (*BootDiagnostics) DeepCopyInto ¶
func (in *BootDiagnostics) DeepCopyInto(out *BootDiagnostics)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BootDiagnosticsStorageAccountType ¶
type BootDiagnosticsStorageAccountType string
BootDiagnosticsStorageAccountType defines the list of valid storage account types for the boot diagnostics. +kubebuilder:validation:Enum:="Managed";"UserManaged";"Disabled"
const ( // DisabledDiagnosticsStorage is used to determine that the diagnostics storage account // should be disabled. DisabledDiagnosticsStorage BootDiagnosticsStorageAccountType = "Disabled" // ManagedDiagnosticsStorage is used to determine that the diagnostics storage account // should be provisioned by Azure. ManagedDiagnosticsStorage BootDiagnosticsStorageAccountType = "Managed" // UserManagedDiagnosticsStorage is used to determine that the diagnostics storage account // should be provisioned by the User. UserManagedDiagnosticsStorage BootDiagnosticsStorageAccountType = "UserManaged" )
type BuildParams ¶
type BuildParams struct {
// Lifecycle determines the resource lifecycle.
Lifecycle ResourceLifecycle
// ClusterName is the cluster associated with the resource.
ClusterName string
// ResourceID is the unique identifier of the resource to be tagged.
ResourceID string
// Name is the name of the resource, it's applied as the tag "Name" on Azure.
// +optional
Name *string
// Role is the role associated to the resource.
// +optional
Role *string
// Any additional tags to be added to the resource.
// +optional
Additional Tags
}
BuildParams is used to build tags around an azure resource.
func (*BuildParams) DeepCopy ¶
func (in *BuildParams) DeepCopy() *BuildParams
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildParams.
func (*BuildParams) DeepCopyInto ¶
func (in *BuildParams) DeepCopyInto(out *BuildParams)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CPUManagerPolicy ¶
type CPUManagerPolicy string
CPUManagerPolicy enumerates the values for KubeletConfig.CPUManagerPolicy.
const ( // CPUManagerPolicyNone ... CPUManagerPolicyNone CPUManagerPolicy = "none" // CPUManagerPolicyStatic ... CPUManagerPolicyStatic CPUManagerPolicy = "static" )
type CloudProviderConfigOverrides ¶
type CloudProviderConfigOverrides struct {
// +optional
RateLimits []RateLimitSpec `json:"rateLimits,omitempty"`
// +optional
BackOffs BackOffConfig `json:"backOffs,omitempty"`
}
CloudProviderConfigOverrides represents the fields that can be overridden in azure cloud provider config.
func (*CloudProviderConfigOverrides) DeepCopy ¶
func (in *CloudProviderConfigOverrides) DeepCopy() *CloudProviderConfigOverrides
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudProviderConfigOverrides.
func (*CloudProviderConfigOverrides) DeepCopyInto ¶
func (in *CloudProviderConfigOverrides) DeepCopyInto(out *CloudProviderConfigOverrides)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataDisk ¶
type DataDisk struct {
// NameSuffix is the suffix to be appended to the machine name to generate the disk name.
// Each disk name will be in format <machineName>_<nameSuffix>.
NameSuffix string `json:"nameSuffix"`
// DiskSizeGB is the size in GB to assign to the data disk.
DiskSizeGB int32 `json:"diskSizeGB"`
// ManagedDisk specifies the Managed Disk parameters for the data disk.
// +optional
ManagedDisk *ManagedDiskParameters `json:"managedDisk,omitempty"`
// Lun Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM.
// The value must be between 0 and 63.
// +optional
Lun *int32 `json:"lun,omitempty"`
// CachingType specifies the caching requirements.
// +optional
// +kubebuilder:validation:Enum=None;ReadOnly;ReadWrite
CachingType string `json:"cachingType,omitempty"`
}
DataDisk specifies the parameters that are used to add one or more data disks to the machine.
func (*DataDisk) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataDisk.
func (*DataDisk) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Diagnostics ¶
type Diagnostics struct {
// Boot configures the boot diagnostics settings for the virtual machine.
// This allows to configure capturing serial output from the virtual machine on boot.
// This is useful for debugging software based launch issues.
// If not specified then Boot diagnostics (Managed) will be enabled.
// +optional
Boot *BootDiagnostics `json:"boot,omitempty"`
}
Diagnostics is used to configure the diagnostic settings of the virtual machine.
func (*Diagnostics) DeepCopy ¶
func (in *Diagnostics) DeepCopy() *Diagnostics
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Diagnostics.
func (*Diagnostics) DeepCopyInto ¶
func (in *Diagnostics) DeepCopyInto(out *Diagnostics)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DiffDiskPlacement ¶
type DiffDiskPlacement string
DiffDiskPlacement - Specifies the ephemeral disk placement for operating system disk. This property can be used by user in the request to choose the location i.e, cache disk, resource disk or nvme disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer Ephemeral OS disk size requirements for Windows VM at https://docs.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VM at https://docs.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements.
const ( // DiffDiskPlacementCacheDisk places the OsDisk on cache disk. DiffDiskPlacementCacheDisk DiffDiskPlacement = "CacheDisk" // DiffDiskPlacementNvmeDisk places the OsDisk on NVMe disk. DiffDiskPlacementNvmeDisk DiffDiskPlacement = "NvmeDisk" // DiffDiskPlacementResourceDisk places the OsDisk on temp disk. DiffDiskPlacementResourceDisk DiffDiskPlacement = "ResourceDisk" )
func PossibleDiffDiskPlacementValues ¶
func PossibleDiffDiskPlacementValues() []DiffDiskPlacement
PossibleDiffDiskPlacementValues returns the possible values for the DiffDiskPlacement const type.
type DiffDiskSettings ¶
type DiffDiskSettings struct {
// Option enables ephemeral OS when set to "Local"
// See https://learn.microsoft.com/azure/virtual-machines/ephemeral-os-disks for full details
// +kubebuilder:validation:Enum=Local
Option string `json:"option"`
// Placement specifies the ephemeral disk placement for operating system disk. If placement is specified, Option must be set to "Local".
// +kubebuilder:validation:Enum=CacheDisk;NvmeDisk;ResourceDisk
// +optional
Placement *DiffDiskPlacement `json:"placement,omitempty"`
}
DiffDiskSettings describe ephemeral disk settings for the os disk.
func (*DiffDiskSettings) DeepCopy ¶
func (in *DiffDiskSettings) DeepCopy() *DiffDiskSettings
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiffDiskSettings.
func (*DiffDiskSettings) DeepCopyInto ¶
func (in *DiffDiskSettings) DeepCopyInto(out *DiffDiskSettings)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DiskEncryptionSetParameters ¶
type DiskEncryptionSetParameters struct {
// ID defines resourceID for diskEncryptionSet resource. It must be in the same subscription
// +optional
ID string `json:"id,omitempty"`
}
DiskEncryptionSetParameters defines disk encryption options.
func (*DiskEncryptionSetParameters) DeepCopy ¶
func (in *DiskEncryptionSetParameters) DeepCopy() *DiskEncryptionSetParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiskEncryptionSetParameters.
func (*DiskEncryptionSetParameters) DeepCopyInto ¶
func (in *DiskEncryptionSetParameters) DeepCopyInto(out *DiskEncryptionSetParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExtendedLocationSpec ¶
type ExtendedLocationSpec struct {
// Name defines the name for the extended location.
Name string `json:"name"`
// Type defines the type for the extended location.
// +kubebuilder:validation:Enum=EdgeZone
Type string `json:"type"`
}
ExtendedLocationSpec defines the ExtendedLocation properties to enable CAPZ for Azure public MEC.
func (*ExtendedLocationSpec) DeepCopy ¶
func (in *ExtendedLocationSpec) DeepCopy() *ExtendedLocationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtendedLocationSpec.
func (*ExtendedLocationSpec) DeepCopyInto ¶
func (in *ExtendedLocationSpec) DeepCopyInto(out *ExtendedLocationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExtensionIdentity ¶
type ExtensionIdentity string
ExtensionIdentity defines the identity of the AKS marketplace extension, if configured. +kubebuilder:validation:Enum=SystemAssigned
const ( // ExtensionIdentitySystemAssigned ... ExtensionIdentitySystemAssigned ExtensionIdentity = "SystemAssigned" )
type ExtensionPlan ¶
type ExtensionPlan struct {
// Name is the user-defined name of the 3rd Party Artifact that is being procured.
// +optional
Name string `json:"name,omitempty"`
// Product is the name of the 3rd Party artifact that is being procured.
// +optional
Product string `json:"product,omitempty"`
// PromotionCode is a publisher-provided promotion code as provisioned in Data Market for the said product/artifact.
// +optional
PromotionCode string `json:"promotionCode,omitempty"`
// Publisher is the name of the publisher of the 3rd Party Artifact that is being bought.
// +optional
Publisher string `json:"publisher,omitempty"`
// Version is the version of the plan.
// +optional
Version string `json:"version,omitempty"`
}
ExtensionPlan represents the plan for an AKS marketplace extension.
func (*ExtensionPlan) DeepCopy ¶
func (in *ExtensionPlan) DeepCopy() *ExtensionPlan
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionPlan.
func (*ExtensionPlan) DeepCopyInto ¶
func (in *ExtensionPlan) DeepCopyInto(out *ExtensionPlan)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExtensionScope ¶
type ExtensionScope struct {
// ScopeType is the scope of the extension. It can be either Cluster or Namespace, but not both.
ScopeType ExtensionScopeType `json:"scopeType"`
// ReleaseNamespace is the namespace where the extension Release must be placed, for a Cluster-scoped extension.
// Required for Cluster-scoped extensions.
// +optional
ReleaseNamespace string `json:"releaseNamespace,omitempty"`
// TargetNamespace is the namespace where the extension will be created for a Namespace-scoped extension.
// Required for Namespace-scoped extensions.
// +optional
TargetNamespace string `json:"targetNamespace,omitempty"`
}
ExtensionScope defines the scope of the AKS marketplace extension, if configured.
func (*ExtensionScope) DeepCopy ¶
func (in *ExtensionScope) DeepCopy() *ExtensionScope
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionScope.
func (*ExtensionScope) DeepCopyInto ¶
func (in *ExtensionScope) DeepCopyInto(out *ExtensionScope)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExtensionScopeType ¶
type ExtensionScopeType string
ExtensionScopeType defines the scope type of the AKS marketplace extension, if configured. +kubebuilder:validation:Enum=Cluster;Namespace
const ( // ExtensionScopeCluster ... ExtensionScopeCluster ExtensionScopeType = "Cluster" // ExtensionScopeNamespace ... ExtensionScopeNamespace ExtensionScopeType = "Namespace" )
type FleetsMember ¶
type FleetsMember struct {
// Name is the name of the member.
// +optional
Name string `json:"name,omitempty"`
FleetsMemberClassSpec `json:",inline"`
}
FleetsMember defines the fleets member configuration. See also AKS doc.
func (*FleetsMember) DeepCopy ¶
func (in *FleetsMember) DeepCopy() *FleetsMember
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FleetsMember.
func (*FleetsMember) DeepCopyInto ¶
func (in *FleetsMember) DeepCopyInto(out *FleetsMember)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FleetsMemberClassSpec ¶
type FleetsMemberClassSpec struct {
// Group is the group this member belongs to for multi-cluster update management.
// +optional
Group string `json:"group,omitempty"`
// ManagerName is the name of the fleet manager.
ManagerName string `json:"managerName"`
// ManagerResourceGroup is the resource group of the fleet manager.
ManagerResourceGroup string `json:"managerResourceGroup"`
}
FleetsMemberClassSpec defines the FleetsMemberSpec properties that may be shared across several Azure clusters.
func (*FleetsMemberClassSpec) DeepCopy ¶
func (in *FleetsMemberClassSpec) DeepCopy() *FleetsMemberClassSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FleetsMemberClassSpec.
func (*FleetsMemberClassSpec) DeepCopyInto ¶
func (in *FleetsMemberClassSpec) DeepCopyInto(out *FleetsMemberClassSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FrontendIP ¶
type FrontendIP struct {
// +kubebuilder:validation:MinLength=1
Name string `json:"name"`
// +optional
PublicIP *PublicIPSpec `json:"publicIP,omitempty"`
FrontendIPClass `json:",inline"`
}
FrontendIP defines a load balancer frontend IP configuration.
func (*FrontendIP) DeepCopy ¶
func (in *FrontendIP) DeepCopy() *FrontendIP
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendIP.
func (*FrontendIP) DeepCopyInto ¶
func (in *FrontendIP) DeepCopyInto(out *FrontendIP)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FrontendIPClass ¶
type FrontendIPClass struct {
// +optional
PrivateIPAddress string `json:"privateIP,omitempty"`
}
FrontendIPClass defines the FrontendIP properties that may be shared across several Azure clusters.
func (*FrontendIPClass) DeepCopy ¶
func (in *FrontendIPClass) DeepCopy() *FrontendIPClass
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FrontendIPClass.
func (*FrontendIPClass) DeepCopyInto ¶
func (in *FrontendIPClass) DeepCopyInto(out *FrontendIPClass)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Future ¶
type Future struct {
// Type describes the type of future, such as update, create, delete, etc.
Type string `json:"type"`
// ResourceGroup is the Azure resource group for the resource.
// +optional
ResourceGroup string `json:"resourceGroup,omitempty"`
// ServiceName is the name of the Azure service.
// Together with the name of the resource, this forms the unique identifier for the future.
ServiceName string `json:"serviceName"`
// Name is the name of the Azure resource.
// Together with the service name, this forms the unique identifier for the future.
Name string `json:"name"`
// Data is the base64 url encoded json Azure AutoRest Future.
Data string `json:"data"`
}
Future contains the data needed for an Azure long-running operation to continue across reconcile loops.
func (*Future) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Future.
func (*Future) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Futures ¶
type Futures []Future
Futures is a slice of Future.
func (Futures) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Futures.
func (Futures) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HTTPProxyConfig ¶
type HTTPProxyConfig struct {
// HTTPProxy is the HTTP proxy server endpoint to use.
// +optional
HTTPProxy *string `json:"httpProxy,omitempty"`
// HTTPSProxy is the HTTPS proxy server endpoint to use.
// +optional
HTTPSProxy *string `json:"httpsProxy,omitempty"`
// NoProxy indicates the endpoints that should not go through proxy.
// +optional
NoProxy []string `json:"noProxy,omitempty"`
// TrustedCA is the alternative CA cert to use for connecting to proxy servers.
// +optional
TrustedCA *string `json:"trustedCa,omitempty"`
}
HTTPProxyConfig is the HTTP proxy configuration for the cluster.
func (*HTTPProxyConfig) DeepCopy ¶
func (in *HTTPProxyConfig) DeepCopy() *HTTPProxyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HTTPProxyConfig.
func (*HTTPProxyConfig) DeepCopyInto ¶
func (in *HTTPProxyConfig) DeepCopyInto(out *HTTPProxyConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IPTag ¶
type IPTag struct {
// Type specifies the IP tag type. Example: FirstPartyUsage.
Type string `json:"type"`
// Tag specifies the value of the IP tag associated with the public IP. Example: SQL.
Tag string `json:"tag"`
}
IPTag contains the IpTag associated with the object.
func (*IPTag) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPTag.
func (*IPTag) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Identity ¶
type Identity struct {
// Type - The Identity type to use.
// +kubebuilder:validation:Enum=SystemAssigned;UserAssigned
// +optional
Type ManagedControlPlaneIdentityType `json:"type,omitempty"`
// UserAssignedIdentityResourceID - Identity ARM resource ID when using user-assigned identity.
// +optional
UserAssignedIdentityResourceID string `json:"userAssignedIdentityResourceID,omitempty"`
}
Identity represents the Identity configuration for an AKS control plane. See also AKS doc.
func (*Identity) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Identity.
func (*Identity) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IdentityType ¶
type IdentityType string
IdentityType represents different types of identities. +kubebuilder:validation:Enum=ServicePrincipal;UserAssignedMSI;ManualServicePrincipal;ServicePrincipalCertificate;WorkloadIdentity
const ( // UserAssignedMSI represents a user-assigned managed identity. UserAssignedMSI IdentityType = "UserAssignedMSI" // ServicePrincipal represents a service principal using a client password as secret. ServicePrincipal IdentityType = "ServicePrincipal" // ManualServicePrincipal represents a manual service principal. ManualServicePrincipal IdentityType = "ManualServicePrincipal" // ServicePrincipalCertificate represents a service principal using a certificate as secret. ServicePrincipalCertificate IdentityType = "ServicePrincipalCertificate" // WorkloadIdentity represents a WorkloadIdentity. WorkloadIdentity IdentityType = "WorkloadIdentity" )
type Image ¶
type Image struct {
// ID specifies an image to use by ID
// +optional
ID *string `json:"id,omitempty"`
// Deprecated: use ComputeGallery instead.
// +optional
SharedGallery *AzureSharedGalleryImage `json:"sharedGallery,omitempty"`
// Marketplace specifies an image to use from the Azure Marketplace
// +optional
Marketplace *AzureMarketplaceImage `json:"marketplace,omitempty"`
// ComputeGallery specifies an image to use from the Azure Compute Gallery
// +optional
ComputeGallery *AzureComputeGalleryImage `json:"computeGallery,omitempty"`
}
Image defines information about the image to use for VM creation. There are three ways to specify an image: by ID, Marketplace Image or SharedImageGallery One of ID, SharedImage or Marketplace should be set.
func (*Image) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Image.
func (*Image) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImagePlan ¶
type ImagePlan struct {
// Publisher is the name of the organization that created the image
// +kubebuilder:validation:MinLength=1
Publisher string `json:"publisher"`
// Offer specifies the name of a group of related images created by the publisher.
// For example, UbuntuServer, WindowsServer
// +kubebuilder:validation:MinLength=1
Offer string `json:"offer"`
// SKU specifies an instance of an offer, such as a major release of a distribution.
// For example, 18.04-LTS, 2019-Datacenter
// +kubebuilder:validation:MinLength=1
SKU string `json:"sku"`
}
ImagePlan contains plan information for marketplace images.
func (*ImagePlan) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImagePlan.
func (*ImagePlan) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KeyVaultNetworkAccessTypes ¶
type KeyVaultNetworkAccessTypes string
KeyVaultNetworkAccessTypes defines the types of network access of key vault. The possible values are Public and Private. The default value is Public.
const ( // KeyVaultNetworkAccessTypesPrivate means the key vault disables public access and enables private link. KeyVaultNetworkAccessTypesPrivate KeyVaultNetworkAccessTypes = "Private" // KeyVaultNetworkAccessTypesPublic means the key vault allows public access from all networks. KeyVaultNetworkAccessTypesPublic KeyVaultNetworkAccessTypes = "Public" )
type KubeletConfig ¶
type KubeletConfig struct {
// CPUManagerPolicy - CPU Manager policy to use.
// +kubebuilder:validation:Enum=none;static
// +optional
CPUManagerPolicy *CPUManagerPolicy `json:"cpuManagerPolicy,omitempty"`
// CPUCfsQuota - Enable CPU CFS quota enforcement for containers that specify CPU limits.
// +optional
CPUCfsQuota *bool `json:"cpuCfsQuota,omitempty"`
// CPUCfsQuotaPeriod - Sets CPU CFS quota period value.
// Must end in "ms", e.g. "100ms"
// +optional
CPUCfsQuotaPeriod *string `json:"cpuCfsQuotaPeriod,omitempty"`
// ImageGcHighThreshold - The percent of disk usage after which image garbage collection is always run.
// Valid values are 0-100 (inclusive).
// +kubebuilder:validation:Minimum=0
// +kubebuilder:validation:Maximum=100
// +optional
ImageGcHighThreshold *int `json:"imageGcHighThreshold,omitempty"`
// ImageGcLowThreshold - The percent of disk usage before which image garbage collection is never run.
// Valid values are 0-100 (inclusive) and must be less than `imageGcHighThreshold`.
// +kubebuilder:validation:Minimum=0
// +kubebuilder:validation:Maximum=100
// +optional
ImageGcLowThreshold *int `json:"imageGcLowThreshold,omitempty"`
// TopologyManagerPolicy - Topology Manager policy to use.
// +kubebuilder:validation:Enum=none;best-effort;restricted;single-numa-node
// +optional
TopologyManagerPolicy *TopologyManagerPolicy `json:"topologyManagerPolicy,omitempty"`
// AllowedUnsafeSysctls - Allowlist of unsafe sysctls or unsafe sysctl patterns (ending in `*`).
// Valid values match `kernel.shm*`, `kernel.msg*`, `kernel.sem`, `fs.mqueue.*`, or `net.*`.
// +optional
AllowedUnsafeSysctls []string `json:"allowedUnsafeSysctls,omitempty"`
// FailSwapOn - If set to true it will make the Kubelet fail to start if swap is enabled on the node.
// +optional
FailSwapOn *bool `json:"failSwapOn,omitempty"`
// ContainerLogMaxSizeMB - The maximum size in MB of a container log file before it is rotated.
// +optional
ContainerLogMaxSizeMB *int `json:"containerLogMaxSizeMB,omitempty"`
// ContainerLogMaxFiles - The maximum number of container log files that can be present for a container. The number must be ≥ 2.
// +kubebuilder:validation:Minimum=2
// +optional
ContainerLogMaxFiles *int `json:"containerLogMaxFiles,omitempty"`
// PodMaxPids - The maximum number of processes per pod.
// Must not exceed kernel PID limit. -1 disables the limit.
// +kubebuilder:validation:Minimum=-1
// +optional
PodMaxPids *int `json:"podMaxPids,omitempty"`
}
KubeletConfig defines the supported subset of kubelet configurations for nodes in pools. See also AKS doc, K8s doc.
func (*KubeletConfig) DeepCopy ¶
func (in *KubeletConfig) DeepCopy() *KubeletConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletConfig.
func (*KubeletConfig) DeepCopyInto ¶
func (in *KubeletConfig) DeepCopyInto(out *KubeletConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeletDiskType ¶
type KubeletDiskType string
KubeletDiskType enumerates the values for the agent pool's KubeletDiskType.
const ( // KubeletDiskTypeOS ... KubeletDiskTypeOS KubeletDiskType = "OS" // KubeletDiskTypeTemporary ... KubeletDiskTypeTemporary KubeletDiskType = "Temporary" )
type LinuxOSConfig ¶
type LinuxOSConfig struct {
// SwapFileSizeMB specifies size in MB of a swap file will be created on the agent nodes from this node pool.
// Max value of SwapFileSizeMB should be the size of temporary disk(/dev/sdb).
// Must be at least 1.
// See also [AKS doc].
//
// [AKS doc]: https://learn.microsoft.com/azure/virtual-machines/managed-disks-overview#temporary-disk
// +kubebuilder:validation:Minimum=1
// +optional
SwapFileSizeMB *int `json:"swapFileSizeMB,omitempty"`
// Sysctl specifies the settings for Linux agent nodes.
// +optional
Sysctls *SysctlConfig `json:"sysctls,omitempty"`
// TransparentHugePageDefrag specifies whether the kernel should make aggressive use of memory compaction to make more hugepages available.
// See also [Linux doc].
//
// [Linux doc]: https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge for more details.
// +kubebuilder:validation:Enum=always;defer;defer+madvise;madvise;never
// +optional
TransparentHugePageDefrag *TransparentHugePageOption `json:"transparentHugePageDefrag,omitempty"`
// TransparentHugePageEnabled specifies various modes of Transparent Hugepages.
// See also [Linux doc].
//
// [Linux doc]: https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge for more details.
// +kubebuilder:validation:Enum=always;madvise;never
// +optional
TransparentHugePageEnabled *TransparentHugePageOption `json:"transparentHugePageEnabled,omitempty"`
}
LinuxOSConfig specifies the custom Linux OS settings and configurations. See also AKS doc.
func (*LinuxOSConfig) DeepCopy ¶
func (in *LinuxOSConfig) DeepCopy() *LinuxOSConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinuxOSConfig.
func (*LinuxOSConfig) DeepCopyInto ¶
func (in *LinuxOSConfig) DeepCopyInto(out *LinuxOSConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoadBalancerClassSpec ¶
type LoadBalancerClassSpec struct {
// +optional
SKU SKU `json:"sku,omitempty"`
// +optional
Type LBType `json:"type,omitempty"`
// IdleTimeoutInMinutes specifies the timeout for the TCP idle connection.
// +optional
IdleTimeoutInMinutes *int32 `json:"idleTimeoutInMinutes,omitempty"`
}
LoadBalancerClassSpec defines the LoadBalancerSpec properties that may be shared across several Azure clusters.
func (*LoadBalancerClassSpec) DeepCopy ¶
func (in *LoadBalancerClassSpec) DeepCopy() *LoadBalancerClassSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerClassSpec.
func (*LoadBalancerClassSpec) DeepCopyInto ¶
func (in *LoadBalancerClassSpec) DeepCopyInto(out *LoadBalancerClassSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoadBalancerProfile ¶
type LoadBalancerProfile struct {
// ManagedOutboundIPs - Desired managed outbound IPs for the cluster load balancer.
// +optional
ManagedOutboundIPs *int `json:"managedOutboundIPs,omitempty"`
// OutboundIPPrefixes - Desired outbound IP Prefix resources for the cluster load balancer.
// +optional
OutboundIPPrefixes []string `json:"outboundIPPrefixes,omitempty"`
// OutboundIPs - Desired outbound IP resources for the cluster load balancer.
// +optional
OutboundIPs []string `json:"outboundIPs,omitempty"`
// AllocatedOutboundPorts - Desired number of allocated SNAT ports per VM. Allowed values must be in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports.
// +optional
AllocatedOutboundPorts *int `json:"allocatedOutboundPorts,omitempty"`
// IdleTimeoutInMinutes - Desired outbound flow idle timeout in minutes. Allowed values must be in the range of 4 to 120 (inclusive). The default value is 30 minutes.
// +optional
IdleTimeoutInMinutes *int `json:"idleTimeoutInMinutes,omitempty"`
}
LoadBalancerProfile - Profile of the cluster load balancer. At most one of `managedOutboundIPs`, `outboundIPPrefixes`, or `outboundIPs` may be specified. See also AKS doc.
func (*LoadBalancerProfile) DeepCopy ¶
func (in *LoadBalancerProfile) DeepCopy() *LoadBalancerProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerProfile.
func (*LoadBalancerProfile) DeepCopyInto ¶
func (in *LoadBalancerProfile) DeepCopyInto(out *LoadBalancerProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoadBalancerSpec ¶
type LoadBalancerSpec struct {
// ID is the Azure resource ID of the load balancer.
// READ-ONLY
// +optional
ID string `json:"id,omitempty"`
// +optional
Name string `json:"name,omitempty"`
// +optional
FrontendIPs []FrontendIP `json:"frontendIPs,omitempty"`
// FrontendIPsCount specifies the number of frontend IP addresses for the load balancer.
// +optional
FrontendIPsCount *int32 `json:"frontendIPsCount,omitempty"`
// BackendPool describes the backend pool of the load balancer.
// +optional
BackendPool BackendPool `json:"backendPool,omitempty"`
LoadBalancerClassSpec `json:",inline"`
}
LoadBalancerSpec defines an Azure load balancer.
func (*LoadBalancerSpec) DeepCopy ¶
func (in *LoadBalancerSpec) DeepCopy() *LoadBalancerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerSpec.
func (*LoadBalancerSpec) DeepCopyInto ¶
func (in *LoadBalancerSpec) DeepCopyInto(out *LoadBalancerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ManagedClusterAutoUpgradeProfile ¶
type ManagedClusterAutoUpgradeProfile struct {
// UpgradeChannel determines the type of upgrade channel for automatically upgrading the cluster.
// +kubebuilder:validation:Enum=node-image;none;patch;rapid;stable
// +optional
UpgradeChannel *UpgradeChannel `json:"upgradeChannel,omitempty"`
}
ManagedClusterAutoUpgradeProfile defines the auto upgrade profile for a managed cluster.
func (*ManagedClusterAutoUpgradeProfile) DeepCopy ¶
func (in *ManagedClusterAutoUpgradeProfile) DeepCopy() *ManagedClusterAutoUpgradeProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedClusterAutoUpgradeProfile.
func (*ManagedClusterAutoUpgradeProfile) DeepCopyInto ¶
func (in *ManagedClusterAutoUpgradeProfile) DeepCopyInto(out *ManagedClusterAutoUpgradeProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ManagedClusterSecurityProfile ¶
type ManagedClusterSecurityProfile struct {
// AzureKeyVaultKms defines Azure Key Vault Management Services Profile for the security profile.
// +optional
AzureKeyVaultKms *AzureKeyVaultKms `json:"azureKeyVaultKms,omitempty"`
// Defender settings for the security profile.
// +optional
Defender *ManagedClusterSecurityProfileDefender `json:"defender,omitempty"`
// ImageCleaner settings for the security profile.
// +optional
ImageCleaner *ManagedClusterSecurityProfileImageCleaner `json:"imageCleaner,omitempty"`
// Workloadidentity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. Ensure to enable OIDC issuer while enabling Workload Identity
// +optional
WorkloadIdentity *ManagedClusterSecurityProfileWorkloadIdentity `json:"workloadIdentity,omitempty"`
}
ManagedClusterSecurityProfile defines the security profile for the cluster.
func (*ManagedClusterSecurityProfile) DeepCopy ¶
func (in *ManagedClusterSecurityProfile) DeepCopy() *ManagedClusterSecurityProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedClusterSecurityProfile.
func (*ManagedClusterSecurityProfile) DeepCopyInto ¶
func (in *ManagedClusterSecurityProfile) DeepCopyInto(out *ManagedClusterSecurityProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ManagedClusterSecurityProfileDefender ¶
type ManagedClusterSecurityProfileDefender struct {
// LogAnalyticsWorkspaceResourceID is the ID of the Log Analytics workspace that has to be associated with Microsoft Defender.
// When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID.
// +kubebuilder:validation:Required
LogAnalyticsWorkspaceResourceID string `json:"logAnalyticsWorkspaceResourceID"`
// SecurityMonitoring profile defines the Microsoft Defender threat detection for Cloud settings for the security profile.
// +kubebuilder:validation:Required
SecurityMonitoring ManagedClusterSecurityProfileDefenderSecurityMonitoring `json:"securityMonitoring"`
}
ManagedClusterSecurityProfileDefender defines Microsoft Defender settings for the security profile. See also AKS doc.
func (*ManagedClusterSecurityProfileDefender) DeepCopy ¶
func (in *ManagedClusterSecurityProfileDefender) DeepCopy() *ManagedClusterSecurityProfileDefender
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedClusterSecurityProfileDefender.
func (*ManagedClusterSecurityProfileDefender) DeepCopyInto ¶
func (in *ManagedClusterSecurityProfileDefender) DeepCopyInto(out *ManagedClusterSecurityProfileDefender)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ManagedClusterSecurityProfileDefenderSecurityMonitoring ¶
type ManagedClusterSecurityProfileDefenderSecurityMonitoring struct {
// Enabled enables Defender threat detection
// +kubebuilder:validation:Required
Enabled bool `json:"enabled"`
}
ManagedClusterSecurityProfileDefenderSecurityMonitoring settings for the security profile threat detection.
func (*ManagedClusterSecurityProfileDefenderSecurityMonitoring) DeepCopy ¶
func (in *ManagedClusterSecurityProfileDefenderSecurityMonitoring) DeepCopy() *ManagedClusterSecurityProfileDefenderSecurityMonitoring
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedClusterSecurityProfileDefenderSecurityMonitoring.
func (*ManagedClusterSecurityProfileDefenderSecurityMonitoring) DeepCopyInto ¶
func (in *ManagedClusterSecurityProfileDefenderSecurityMonitoring) DeepCopyInto(out *ManagedClusterSecurityProfileDefenderSecurityMonitoring)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ManagedClusterSecurityProfileImageCleaner ¶
type ManagedClusterSecurityProfileImageCleaner struct {
// Enabled enables the Image Cleaner on AKS cluster.
// +kubebuilder:validation:Required
Enabled bool `json:"enabled"`
// IntervalHours defines Image Cleaner scanning interval in hours. Default value is 24 hours.
// +optional
// +kubebuilder:validation:Minimum=24
// +kubebuilder:validation:Maximum=2160
IntervalHours *int `json:"intervalHours,omitempty"`
}
ManagedClusterSecurityProfileImageCleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. See also AKS doc.
func (*ManagedClusterSecurityProfileImageCleaner) DeepCopy ¶
func (in *ManagedClusterSecurityProfileImageCleaner) DeepCopy() *ManagedClusterSecurityProfileImageCleaner
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedClusterSecurityProfileImageCleaner.
func (*ManagedClusterSecurityProfileImageCleaner) DeepCopyInto ¶
func (in *ManagedClusterSecurityProfileImageCleaner) DeepCopyInto(out *ManagedClusterSecurityProfileImageCleaner)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ManagedClusterSecurityProfileWorkloadIdentity ¶
type ManagedClusterSecurityProfileWorkloadIdentity struct {
// Enabled enables the workload identity.
// +kubebuilder:validation:Required
Enabled bool `json:"enabled"`
}
ManagedClusterSecurityProfileWorkloadIdentity settings for the security profile. See also AKS doc.
func (*ManagedClusterSecurityProfileWorkloadIdentity) DeepCopy ¶
func (in *ManagedClusterSecurityProfileWorkloadIdentity) DeepCopy() *ManagedClusterSecurityProfileWorkloadIdentity
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedClusterSecurityProfileWorkloadIdentity.
func (*ManagedClusterSecurityProfileWorkloadIdentity) DeepCopyInto ¶
func (in *ManagedClusterSecurityProfileWorkloadIdentity) DeepCopyInto(out *ManagedClusterSecurityProfileWorkloadIdentity)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ManagedControlPlaneIdentityType ¶
type ManagedControlPlaneIdentityType string
ManagedControlPlaneIdentityType enumerates the values for managed control plane identity type.
const ( // ManagedControlPlaneIdentityTypeSystemAssigned Use an implicitly created system-assigned managed identity to manage // cluster resources. Components in the control plane such as kube-controller-manager will use the // system-assigned managed identity to manipulate Azure resources. ManagedControlPlaneIdentityTypeSystemAssigned ManagedControlPlaneIdentityType = ManagedControlPlaneIdentityType(VMIdentitySystemAssigned) // ManagedControlPlaneIdentityTypeUserAssigned Use a user-assigned identity to manage cluster resources. // Components in the control plane such as kube-controller-manager will use the specified user-assigned // managed identity to manipulate Azure resources. ManagedControlPlaneIdentityTypeUserAssigned ManagedControlPlaneIdentityType = ManagedControlPlaneIdentityType(VMIdentityUserAssigned) )
type ManagedControlPlaneOutboundType ¶
type ManagedControlPlaneOutboundType string
ManagedControlPlaneOutboundType enumerates the values for the managed control plane OutboundType.
const ( // ManagedControlPlaneOutboundTypeLoadBalancer ... ManagedControlPlaneOutboundTypeLoadBalancer ManagedControlPlaneOutboundType = "loadBalancer" // ManagedControlPlaneOutboundTypeManagedNATGateway ... ManagedControlPlaneOutboundTypeManagedNATGateway ManagedControlPlaneOutboundType = "managedNATGateway" // ManagedControlPlaneOutboundTypeUserAssignedNATGateway ... ManagedControlPlaneOutboundTypeUserAssignedNATGateway ManagedControlPlaneOutboundType = "userAssignedNATGateway" // ManagedControlPlaneOutboundTypeUserDefinedRouting ... ManagedControlPlaneOutboundTypeUserDefinedRouting ManagedControlPlaneOutboundType = "userDefinedRouting" )
type ManagedControlPlaneSubnet ¶
type ManagedControlPlaneSubnet struct {
Name string `json:"name"`
CIDRBlock string `json:"cidrBlock"`
// ServiceEndpoints is a slice of Virtual Network service endpoints to enable for the subnets.
// +optional
ServiceEndpoints ServiceEndpoints `json:"serviceEndpoints,omitempty"`
// PrivateEndpoints is a slice of Virtual Network private endpoints to create for the subnets.
// +optional
PrivateEndpoints PrivateEndpoints `json:"privateEndpoints,omitempty"`
}
ManagedControlPlaneSubnet describes a subnet for an AKS cluster.
func (*ManagedControlPlaneSubnet) DeepCopy ¶
func (in *ManagedControlPlaneSubnet) DeepCopy() *ManagedControlPlaneSubnet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedControlPlaneSubnet.
func (*ManagedControlPlaneSubnet) DeepCopyInto ¶
func (in *ManagedControlPlaneSubnet) DeepCopyInto(out *ManagedControlPlaneSubnet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ManagedControlPlaneVirtualNetwork ¶
type ManagedControlPlaneVirtualNetwork struct {
// ResourceGroup is the name of the Azure resource group for the VNet and Subnet.
// +optional
ResourceGroup string `json:"resourceGroup,omitempty"`
// Name is the name of the virtual network.
Name string `json:"name"`
ManagedControlPlaneVirtualNetworkClassSpec `json:",inline"`
}
ManagedControlPlaneVirtualNetwork describes a virtual network required to provision AKS clusters.
func (*ManagedControlPlaneVirtualNetwork) DeepCopy ¶
func (in *ManagedControlPlaneVirtualNetwork) DeepCopy() *ManagedControlPlaneVirtualNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedControlPlaneVirtualNetwork.
func (*ManagedControlPlaneVirtualNetwork) DeepCopyInto ¶
func (in *ManagedControlPlaneVirtualNetwork) DeepCopyInto(out *ManagedControlPlaneVirtualNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ManagedControlPlaneVirtualNetworkClassSpec ¶
type ManagedControlPlaneVirtualNetworkClassSpec struct {
CIDRBlock string `json:"cidrBlock"`
// +optional
Subnet ManagedControlPlaneSubnet `json:"subnet,omitempty"`
}
ManagedControlPlaneVirtualNetworkClassSpec defines the ManagedControlPlaneVirtualNetwork properties that may be shared across several managed control plane vnets.
func (*ManagedControlPlaneVirtualNetworkClassSpec) DeepCopy ¶
func (in *ManagedControlPlaneVirtualNetworkClassSpec) DeepCopy() *ManagedControlPlaneVirtualNetworkClassSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedControlPlaneVirtualNetworkClassSpec.
func (*ManagedControlPlaneVirtualNetworkClassSpec) DeepCopyInto ¶
func (in *ManagedControlPlaneVirtualNetworkClassSpec) DeepCopyInto(out *ManagedControlPlaneVirtualNetworkClassSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ManagedDiskParameters ¶
type ManagedDiskParameters struct {
// +optional
StorageAccountType string `json:"storageAccountType,omitempty"`
// DiskEncryptionSet specifies the customer-managed disk encryption set resource id for the managed disk.
// +optional
DiskEncryptionSet *DiskEncryptionSetParameters `json:"diskEncryptionSet,omitempty"`
// SecurityProfile specifies the security profile for the managed disk.
// +optional
SecurityProfile *VMDiskSecurityProfile `json:"securityProfile,omitempty"`
}
ManagedDiskParameters defines the parameters of a managed disk.
func (*ManagedDiskParameters) DeepCopy ¶
func (in *ManagedDiskParameters) DeepCopy() *ManagedDiskParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskParameters.
func (*ManagedDiskParameters) DeepCopyInto ¶
func (in *ManagedDiskParameters) DeepCopyInto(out *ManagedDiskParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ManagedMachinePoolScaling ¶
type ManagedMachinePoolScaling struct {
// MinSize is the minimum number of nodes for auto-scaling.
MinSize *int `json:"minSize,omitempty"`
// MaxSize is the maximum number of nodes for auto-scaling.
MaxSize *int `json:"maxSize,omitempty"`
}
ManagedMachinePoolScaling specifies scaling options.
func (*ManagedMachinePoolScaling) DeepCopy ¶
func (in *ManagedMachinePoolScaling) DeepCopy() *ManagedMachinePoolScaling
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedMachinePoolScaling.
func (*ManagedMachinePoolScaling) DeepCopyInto ¶
func (in *ManagedMachinePoolScaling) DeepCopyInto(out *ManagedMachinePoolScaling)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NatGateway ¶
type NatGateway struct {
// ID is the Azure resource ID of the NAT gateway.
// READ-ONLY
// +optional
ID string `json:"id,omitempty"`
// +optional
NatGatewayIP PublicIPSpec `json:"ip,omitempty"`
NatGatewayClassSpec `json:",inline"`
}
NatGateway defines an Azure NAT gateway. NAT gateway resources are part of Vnet NAT and provide outbound Internet connectivity for subnets of a virtual network.
func (*NatGateway) DeepCopy ¶
func (in *NatGateway) DeepCopy() *NatGateway
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatGateway.
func (*NatGateway) DeepCopyInto ¶
func (in *NatGateway) DeepCopyInto(out *NatGateway)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NatGatewayClassSpec ¶
type NatGatewayClassSpec struct {
Name string `json:"name"`
}
NatGatewayClassSpec defines a NAT gateway class specification.
func (*NatGatewayClassSpec) DeepCopy ¶
func (in *NatGatewayClassSpec) DeepCopy() *NatGatewayClassSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NatGatewayClassSpec.
func (*NatGatewayClassSpec) DeepCopyInto ¶
func (in *NatGatewayClassSpec) DeepCopyInto(out *NatGatewayClassSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkClassSpec ¶
type NetworkClassSpec struct {
// PrivateDNSZoneName defines the zone name for the Azure Private DNS.
// +optional
PrivateDNSZoneName string `json:"privateDNSZoneName,omitempty"`
}
NetworkClassSpec defines the NetworkSpec properties that may be shared across several Azure clusters.
func (*NetworkClassSpec) DeepCopy ¶
func (in *NetworkClassSpec) DeepCopy() *NetworkClassSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkClassSpec.
func (*NetworkClassSpec) DeepCopyInto ¶
func (in *NetworkClassSpec) DeepCopyInto(out *NetworkClassSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkDataplaneType ¶
type NetworkDataplaneType string
NetworkDataplaneType is the type of network dataplane to use.
const ( // NetworkDataplaneTypeAzure is the Azure network dataplane type. NetworkDataplaneTypeAzure NetworkDataplaneType = "azure" // NetworkDataplaneTypeCilium is the Cilium network dataplane type. NetworkDataplaneTypeCilium NetworkDataplaneType = "cilium" )
type NetworkInterface ¶
type NetworkInterface struct {
// SubnetName specifies the subnet in which the new network interface will be placed.
SubnetName string `json:"subnetName,omitempty"`
// PrivateIPConfigs specifies the number of private IP addresses to attach to the interface.
// Defaults to 1 if not specified.
// +optional
PrivateIPConfigs int `json:"privateIPConfigs,omitempty"`
// 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.
// +kubebuilder:validation:nullable
// +optional
AcceleratedNetworking *bool `json:"acceleratedNetworking,omitempty"`
}
NetworkInterface defines a network interface.
func (*NetworkInterface) DeepCopy ¶
func (in *NetworkInterface) DeepCopy() *NetworkInterface
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterface.
func (*NetworkInterface) DeepCopyInto ¶
func (in *NetworkInterface) DeepCopyInto(out *NetworkInterface)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkPluginMode ¶
type NetworkPluginMode string
NetworkPluginMode is the mode the network plugin should use.
const ( // NetworkPluginModeOverlay is used with networkPlugin=azure, pods are given IPs from the PodCIDR address space but use Azure // Routing Domains rather than Kubenet's method of route tables. // See also [AKS doc]. // // [AKS doc]: https://aka.ms/aks/azure-cni-overlay NetworkPluginModeOverlay NetworkPluginMode = "overlay" )
type NetworkSpec ¶
type NetworkSpec struct {
// Vnet is the configuration for the Azure virtual network.
// +optional
Vnet VnetSpec `json:"vnet,omitempty"`
// Subnets is the configuration for the control-plane subnet and the node subnet.
// +optional
Subnets Subnets `json:"subnets,omitempty"`
// APIServerLB is the configuration for the control-plane load balancer.
// +optional
APIServerLB LoadBalancerSpec `json:"apiServerLB,omitempty"`
// NodeOutboundLB is the configuration for the node outbound load balancer.
// +optional
NodeOutboundLB *LoadBalancerSpec `json:"nodeOutboundLB,omitempty"`
// ControlPlaneOutboundLB is the configuration for the control-plane outbound load balancer.
// This is different from APIServerLB, and is used only in private clusters (optionally) for enabling outbound traffic.
// +optional
ControlPlaneOutboundLB *LoadBalancerSpec `json:"controlPlaneOutboundLB,omitempty"`
NetworkClassSpec `json:",inline"`
}
NetworkSpec specifies what the Azure networking resources should look like.
func (*NetworkSpec) DeepCopy ¶
func (in *NetworkSpec) DeepCopy() *NetworkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkSpec.
func (*NetworkSpec) DeepCopyInto ¶
func (in *NetworkSpec) DeepCopyInto(out *NetworkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NetworkSpec) GetControlPlaneSubnet ¶
func (n *NetworkSpec) GetControlPlaneSubnet() (SubnetSpec, error)
GetControlPlaneSubnet returns a subnet that has a role assigned to controlplane or all. Subnets with role controlplane are given higher priority.
func (*NetworkSpec) GetSubnet ¶
func (n *NetworkSpec) GetSubnet(role SubnetRole) (SubnetSpec, error)
GetSubnet returns a subnet based on the subnet role.
func (*NetworkSpec) UpdateControlPlaneSubnet ¶
func (n *NetworkSpec) UpdateControlPlaneSubnet(subnet SubnetSpec)
UpdateControlPlaneSubnet updates the cluster control plane subnets.
func (*NetworkSpec) UpdateSubnet ¶
func (n *NetworkSpec) UpdateSubnet(subnet SubnetSpec, role SubnetRole)
UpdateSubnet updates the subnet based on the subnet role.
type NetworkTemplateSpec ¶
type NetworkTemplateSpec struct {
NetworkClassSpec `json:",inline"`
// Vnet is the configuration for the Azure virtual network.
// +optional
Vnet VnetTemplateSpec `json:"vnet,omitempty"`
// Subnets is the configuration for the control-plane subnet and the node subnet.
// +optional
Subnets SubnetTemplatesSpec `json:"subnets,omitempty"`
// APIServerLB is the configuration for the control-plane load balancer.
// +optional
APIServerLB LoadBalancerClassSpec `json:"apiServerLB,omitempty"`
// NodeOutboundLB is the configuration for the node outbound load balancer.
// +optional
NodeOutboundLB *LoadBalancerClassSpec `json:"nodeOutboundLB,omitempty"`
// ControlPlaneOutboundLB is the configuration for the control-plane outbound load balancer.
// This is different from APIServerLB, and is used only in private clusters (optionally) for enabling outbound traffic.
// +optional
ControlPlaneOutboundLB *LoadBalancerClassSpec `json:"controlPlaneOutboundLB,omitempty"`
}
NetworkTemplateSpec specifies a network template.
func (*NetworkTemplateSpec) DeepCopy ¶
func (in *NetworkTemplateSpec) DeepCopy() *NetworkTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkTemplateSpec.
func (*NetworkTemplateSpec) DeepCopyInto ¶
func (in *NetworkTemplateSpec) DeepCopyInto(out *NetworkTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NetworkTemplateSpec) GetSubnetTemplate ¶
func (n *NetworkTemplateSpec) GetSubnetTemplate(role SubnetRole) (SubnetTemplateSpec, error)
GetSubnetTemplate returns the subnet template based on the subnet role.
func (*NetworkTemplateSpec) UpdateSubnetTemplate ¶
func (n *NetworkTemplateSpec) UpdateSubnetTemplate(subnet SubnetTemplateSpec, role SubnetRole)
UpdateSubnetTemplate updates the subnet template based on subnet role.
type NodePoolMode ¶
type NodePoolMode string
NodePoolMode enumerates the values for agent pool mode.
type OIDCIssuerProfile ¶
type OIDCIssuerProfile struct {
// Enabled is whether the OIDC issuer is enabled.
// +optional
Enabled *bool `json:"enabled,omitempty"`
}
OIDCIssuerProfile is the OIDC issuer profile of the Managed Cluster. See also AKS doc.
func (*OIDCIssuerProfile) DeepCopy ¶
func (in *OIDCIssuerProfile) DeepCopy() *OIDCIssuerProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OIDCIssuerProfile.
func (*OIDCIssuerProfile) DeepCopyInto ¶
func (in *OIDCIssuerProfile) DeepCopyInto(out *OIDCIssuerProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OIDCIssuerProfileStatus ¶
type OIDCIssuerProfileStatus struct {
// IssuerURL is the OIDC issuer url of the Managed Cluster.
// +optional
IssuerURL *string `json:"issuerURL,omitempty"`
}
OIDCIssuerProfileStatus is the OIDC issuer profile of the Managed Cluster.
func (*OIDCIssuerProfileStatus) DeepCopy ¶
func (in *OIDCIssuerProfileStatus) DeepCopy() *OIDCIssuerProfileStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OIDCIssuerProfileStatus.
func (*OIDCIssuerProfileStatus) DeepCopyInto ¶
func (in *OIDCIssuerProfileStatus) DeepCopyInto(out *OIDCIssuerProfileStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OSDisk ¶
type OSDisk struct {
OSType string `json:"osType"`
// DiskSizeGB is the size in GB to assign to the OS disk.
// Will have a default of 30GB if not provided
// +optional
DiskSizeGB *int32 `json:"diskSizeGB,omitempty"`
// ManagedDisk specifies the Managed Disk parameters for the OS disk.
// +optional
ManagedDisk *ManagedDiskParameters `json:"managedDisk,omitempty"`
// +optional
DiffDiskSettings *DiffDiskSettings `json:"diffDiskSettings,omitempty"`
// CachingType specifies the caching requirements.
// +optional
// +kubebuilder:validation:Enum=None;ReadOnly;ReadWrite
CachingType string `json:"cachingType,omitempty"`
}
OSDisk defines the operating system disk for a VM.
WARNING: this requires any updates to ManagedDisk to be manually converted. This is due to the odd issue with conversion-gen where the warning message generated uses a relative directory import rather than the fully qualified import when generating outside of the GOPATH.
func (*OSDisk) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OSDisk.
func (*OSDisk) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OrchestrationModeType ¶
type OrchestrationModeType string
OrchestrationModeType represents the orchestration mode for a Virtual Machine Scale Set backing an AzureMachinePool. +kubebuilder:validation:Enum=Flexible;Uniform
const ( // FlexibleOrchestrationMode treats VMs as individual resources accessible by standard VM APIs. FlexibleOrchestrationMode OrchestrationModeType = "Flexible" // UniformOrchestrationMode treats VMs as identical instances accessible by the VMSS VM API. UniformOrchestrationMode OrchestrationModeType = "Uniform" )
type PrivateEndpointSpec ¶
type PrivateEndpointSpec struct {
// Name specifies the name of the private endpoint.
Name string `json:"name"`
// Location specifies the region to create the private endpoint.
// +optional
Location string `json:"location,omitempty"`
// PrivateLinkServiceConnections specifies Private Link Service Connections of the private endpoint.
PrivateLinkServiceConnections []PrivateLinkServiceConnection `json:"privateLinkServiceConnections,omitempty"`
// CustomNetworkInterfaceName specifies the network interface name associated with the private endpoint.
// +optional
CustomNetworkInterfaceName string `json:"customNetworkInterfaceName,omitempty"`
// PrivateIPAddresses specifies the IP addresses for the network interface associated with the private endpoint.
// They have to be part of the subnet where the private endpoint is linked.
// +optional
PrivateIPAddresses []string `json:"privateIPAddresses,omitempty"`
// ApplicationSecurityGroups specifies the Application security group in which the private endpoint IP configuration is included.
// +optional
ApplicationSecurityGroups []string `json:"applicationSecurityGroups,omitempty"`
// ManualApproval specifies if the connection approval needs to be done manually or not.
// Set it true when the network admin does not have access to approve connections to the remote resource.
// Defaults to false.
// +optional
ManualApproval bool `json:"manualApproval,omitempty"`
}
PrivateEndpointSpec configures an Azure Private Endpoint.
func (*PrivateEndpointSpec) DeepCopy ¶
func (in *PrivateEndpointSpec) DeepCopy() *PrivateEndpointSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointSpec.
func (*PrivateEndpointSpec) DeepCopyInto ¶
func (in *PrivateEndpointSpec) DeepCopyInto(out *PrivateEndpointSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrivateEndpoints ¶
type PrivateEndpoints []PrivateEndpointSpec
PrivateEndpoints is a slice of PrivateEndpointSpec. +listType=map +listMapKey=name
func (PrivateEndpoints) DeepCopy ¶
func (in PrivateEndpoints) DeepCopy() PrivateEndpoints
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpoints.
func (PrivateEndpoints) DeepCopyInto ¶
func (in PrivateEndpoints) DeepCopyInto(out *PrivateEndpoints)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrivateLinkServiceConnection ¶
type PrivateLinkServiceConnection struct {
// Name specifies the name of the private link service.
// +optional
Name string `json:"name,omitempty"`
// PrivateLinkServiceID specifies the resource ID of the private link service.
PrivateLinkServiceID string `json:"privateLinkServiceID,omitempty"`
// GroupIDs specifies the ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to.
// +optional
GroupIDs []string `json:"groupIDs,omitempty"`
// RequestMessage specifies a message passed to the owner of the remote resource with the private endpoint connection request.
// +kubebuilder:validation:MaxLength=140
// +optional
RequestMessage string `json:"requestMessage,omitempty"`
}
PrivateLinkServiceConnection defines the specification for a private link service connection associated with a private endpoint.
func (*PrivateLinkServiceConnection) DeepCopy ¶
func (in *PrivateLinkServiceConnection) DeepCopy() *PrivateLinkServiceConnection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateLinkServiceConnection.
func (*PrivateLinkServiceConnection) DeepCopyInto ¶
func (in *PrivateLinkServiceConnection) DeepCopyInto(out *PrivateLinkServiceConnection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProvisioningState ¶
type ProvisioningState string
ProvisioningState describes the provisioning state of an Azure resource.
const ( // Creating ... Creating ProvisioningState = "Creating" // Deleting ... Deleting ProvisioningState = "Deleting" // Failed ... Failed ProvisioningState = "Failed" // Migrating ... Migrating ProvisioningState = "Migrating" // Succeeded ... Succeeded ProvisioningState = "Succeeded" // Updating ... Updating ProvisioningState = "Updating" // Canceled represents an action which was initiated but terminated by the user before completion. Canceled ProvisioningState = "Canceled" // Deleted represents a deleted VM // NOTE: This state is specific to capz, and does not have corresponding mapping in Azure API (https://learn.microsoft.com/azure/virtual-machines/states-billing#provisioning-states) Deleted ProvisioningState = "Deleted" )
type PublicIPSpec ¶
type PublicIPSpec struct {
Name string `json:"name"`
// +optional
DNSName string `json:"dnsName,omitempty"`
// +optional
IPTags []IPTag `json:"ipTags,omitempty"`
}
PublicIPSpec defines the inputs to create an Azure public IP address.
func (*PublicIPSpec) DeepCopy ¶
func (in *PublicIPSpec) DeepCopy() *PublicIPSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPSpec.
func (*PublicIPSpec) DeepCopyInto ¶
func (in *PublicIPSpec) DeepCopyInto(out *PublicIPSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RateLimitConfig ¶
type RateLimitConfig struct {
// +optional
CloudProviderRateLimit bool `json:"cloudProviderRateLimit,omitempty"`
// +optional
CloudProviderRateLimitQPS *resource.Quantity `json:"cloudProviderRateLimitQPS,omitempty"`
// +optional
CloudProviderRateLimitBucket int `json:"cloudProviderRateLimitBucket,omitempty"`
// +optional
CloudProviderRateLimitQPSWrite *resource.Quantity `json:"cloudProviderRateLimitQPSWrite,omitempty"`
// +optional
CloudProviderRateLimitBucketWrite int `json:"cloudProviderRateLimitBucketWrite,omitempty"`
}
RateLimitConfig indicates the rate limit config options.
func (*RateLimitConfig) DeepCopy ¶
func (in *RateLimitConfig) DeepCopy() *RateLimitConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RateLimitConfig.
func (*RateLimitConfig) DeepCopyInto ¶
func (in *RateLimitConfig) DeepCopyInto(out *RateLimitConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RateLimitSpec ¶
type RateLimitSpec struct {
// Name is the name of the rate limit spec.
// +kubebuilder:validation:Enum=defaultRateLimit;routeRateLimit;subnetsRateLimit;interfaceRateLimit;routeTableRateLimit;loadBalancerRateLimit;publicIPAddressRateLimit;securityGroupRateLimit;virtualMachineRateLimit;storageAccountRateLimit;diskRateLimit;snapshotRateLimit;virtualMachineScaleSetRateLimit;virtualMachineSizesRateLimit;availabilitySetRateLimit
Name string `json:"name"`
// +optional
Config RateLimitConfig `json:"config,omitempty"`
}
RateLimitSpec represents the rate limit configuration for a particular kind of resource. Eg. loadBalancerRateLimit is used to configure rate limits for load balancers. This eventually gets converted to CloudProviderRateLimitConfig that cloud-provider-azure expects. See: https://github.com/kubernetes-sigs/cloud-provider-azure/blob/d585c2031925b39c925624302f22f8856e29e352/pkg/provider/azure_ratelimit.go#L25 We cannot use CloudProviderRateLimitConfig directly because floating point values are not supported in controller-tools. See: https://github.com/kubernetes-sigs/controller-tools/issues/245
func (*RateLimitSpec) DeepCopy ¶
func (in *RateLimitSpec) DeepCopy() *RateLimitSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RateLimitSpec.
func (*RateLimitSpec) DeepCopyInto ¶
func (in *RateLimitSpec) DeepCopyInto(out *RateLimitSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceLifecycle ¶
type ResourceLifecycle string
ResourceLifecycle configures the lifecycle of a resource.
type RouteTable ¶
type RouteTable struct {
// ID is the Azure resource ID of the route table.
// READ-ONLY
// +optional
ID string `json:"id,omitempty"`
Name string `json:"name"`
}
RouteTable defines an Azure route table.
func (*RouteTable) DeepCopy ¶
func (in *RouteTable) DeepCopy() *RouteTable
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteTable.
func (*RouteTable) DeepCopyInto ¶
func (in *RouteTable) DeepCopyInto(out *RouteTable)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityEncryptionType ¶
type SecurityEncryptionType string
SecurityEncryptionType represents the Encryption Type when the virtual machine is a Confidential VM.
const ( // SecurityEncryptionTypeVMGuestStateOnly disables OS disk confidential encryption. SecurityEncryptionTypeVMGuestStateOnly SecurityEncryptionType = "VMGuestStateOnly" // SecurityEncryptionTypeDiskWithVMGuestState OS disk confidential encryption with a // platform-managed key (PMK) or a customer-managed key (CMK). SecurityEncryptionTypeDiskWithVMGuestState SecurityEncryptionType = "DiskWithVMGuestState" )
type SecurityGroup ¶
type SecurityGroup struct {
// ID is the Azure resource ID of the security group.
// READ-ONLY
// +optional
ID string `json:"id,omitempty"`
Name string `json:"name"`
SecurityGroupClass `json:",inline"`
}
SecurityGroup defines an Azure security group.
func (*SecurityGroup) DeepCopy ¶
func (in *SecurityGroup) DeepCopy() *SecurityGroup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroup.
func (*SecurityGroup) DeepCopyInto ¶
func (in *SecurityGroup) DeepCopyInto(out *SecurityGroup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityGroupClass ¶
type SecurityGroupClass struct {
// +optional
SecurityRules SecurityRules `json:"securityRules,omitempty"`
// +optional
Tags Tags `json:"tags,omitempty"`
}
SecurityGroupClass defines the SecurityGroup properties that may be shared across several Azure clusters.
func (*SecurityGroupClass) DeepCopy ¶
func (in *SecurityGroupClass) DeepCopy() *SecurityGroupClass
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityGroupClass.
func (*SecurityGroupClass) DeepCopyInto ¶
func (in *SecurityGroupClass) DeepCopyInto(out *SecurityGroupClass)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityGroupProtocol ¶
type SecurityGroupProtocol string
SecurityGroupProtocol defines the protocol type for a security group rule.
type SecurityProfile ¶
type SecurityProfile struct {
// This field indicates whether Host Encryption should be enabled
// or disabled for a virtual machine or virtual machine scale set.
// This should be disabled when SecurityEncryptionType is set to DiskWithVMGuestState.
// Default is disabled.
// +optional
EncryptionAtHost *bool `json:"encryptionAtHost,omitempty"`
// SecurityType specifies the SecurityType of the virtual machine. It has to be set to any specified value to
// enable UefiSettings. The default behavior is: UefiSettings will not be enabled unless this property is set.
// +kubebuilder:validation:Enum=ConfidentialVM;TrustedLaunch
// +optional
SecurityType SecurityTypes `json:"securityType,omitempty"`
// UefiSettings specifies the security settings like secure boot and vTPM used while creating the virtual machine.
// +optional
UefiSettings *UefiSettings `json:"uefiSettings,omitempty"`
}
SecurityProfile specifies the Security profile settings for a virtual machine or virtual machine scale set.
func (*SecurityProfile) DeepCopy ¶
func (in *SecurityProfile) DeepCopy() *SecurityProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityProfile.
func (*SecurityProfile) DeepCopyInto ¶
func (in *SecurityProfile) DeepCopyInto(out *SecurityProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityRule ¶
type SecurityRule struct {
// Name is a unique name within the network security group.
Name string `json:"name"`
// A description for this rule. Restricted to 140 chars.
Description string `json:"description"`
// Protocol specifies the protocol type. "Tcp", "Udp", "Icmp", or "*".
// +kubebuilder:validation:Enum=Tcp;Udp;Icmp;*
Protocol SecurityGroupProtocol `json:"protocol"`
// Direction indicates whether the rule applies to inbound, or outbound traffic. "Inbound" or "Outbound".
// +kubebuilder:validation:Enum=Inbound;Outbound
Direction SecurityRuleDirection `json:"direction"`
// Priority is a number between 100 and 4096. Each rule should have a unique value for priority. Rules are processed in priority order, with lower numbers processed before higher numbers. Once traffic matches a rule, processing stops.
// +optional
Priority int32 `json:"priority,omitempty"`
// SourcePorts specifies source port or range. Integer or range between 0 and 65535. Asterix '*' can also be used to match all ports.
// +optional
SourcePorts *string `json:"sourcePorts,omitempty"`
// DestinationPorts specifies the destination port or range. Integer or range between 0 and 65535. Asterix '*' can also be used to match all ports.
// +optional
DestinationPorts *string `json:"destinationPorts,omitempty"`
// Source specifies the CIDR or source IP range. Asterix '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If this is an ingress rule, specifies where network traffic originates from.
// +optional
Source *string `json:"source,omitempty"`
// Sources specifies The CIDR or source IP ranges.
Sources []*string `json:"sources,omitempty"`
// Destination is the destination address prefix. CIDR or destination IP range. Asterix '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used.
// +optional
Destination *string `json:"destination,omitempty"`
// Action specifies whether network traffic is allowed or denied. Can either be "Allow" or "Deny". Defaults to "Allow".
// +kubebuilder:default=Allow
// +kubebuilder:validation:Enum=Allow;Deny
//+optional
Action SecurityRuleAccess `json:"action"`
}
SecurityRule defines an Azure security rule for security groups.
func (*SecurityRule) DeepCopy ¶
func (in *SecurityRule) DeepCopy() *SecurityRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityRule.
func (*SecurityRule) DeepCopyInto ¶
func (in *SecurityRule) DeepCopyInto(out *SecurityRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityRuleAccess ¶
type SecurityRuleAccess string
SecurityRuleAccess defines the action type for a security group rule.
const ( // SecurityRuleActionAllow allows traffic defined in the rule. SecurityRuleActionAllow SecurityRuleAccess = "Allow" // SecurityRuleActionDeny denies traffic defined in the rule. SecurityRuleActionDeny SecurityRuleAccess = "Deny" )
type SecurityRuleDirection ¶
type SecurityRuleDirection string
SecurityRuleDirection defines the direction type for a security group rule.
type SecurityRules ¶
type SecurityRules []SecurityRule
SecurityRules is a slice of Azure security rules for security groups. +listType=map +listMapKey=name
func (SecurityRules) DeepCopy ¶
func (in SecurityRules) DeepCopy() SecurityRules
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityRules.
func (SecurityRules) DeepCopyInto ¶
func (in SecurityRules) DeepCopyInto(out *SecurityRules)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityTypes ¶
type SecurityTypes string
SecurityTypes represents the SecurityType of the virtual machine.
const ( // SecurityTypesConfidentialVM defines the SecurityType of the virtual machine as a Confidential VM. SecurityTypesConfidentialVM SecurityTypes = "ConfidentialVM" // SecurityTypesTrustedLaunch defines the SecurityType of the virtual machine as a Trusted Launch VM. SecurityTypesTrustedLaunch SecurityTypes = "TrustedLaunch" )
type ServiceEndpointSpec ¶
type ServiceEndpointSpec struct {
Service string `json:"service"`
Locations []string `json:"locations"`
}
ServiceEndpointSpec configures an Azure Service Endpoint.
func (*ServiceEndpointSpec) DeepCopy ¶
func (in *ServiceEndpointSpec) DeepCopy() *ServiceEndpointSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceEndpointSpec.
func (*ServiceEndpointSpec) DeepCopyInto ¶
func (in *ServiceEndpointSpec) DeepCopyInto(out *ServiceEndpointSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceEndpoints ¶
type ServiceEndpoints []ServiceEndpointSpec
ServiceEndpoints is a slice of string. +listType=map +listMapKey=service
func (ServiceEndpoints) DeepCopy ¶
func (in ServiceEndpoints) DeepCopy() ServiceEndpoints
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceEndpoints.
func (ServiceEndpoints) DeepCopyInto ¶
func (in ServiceEndpoints) DeepCopyInto(out *ServiceEndpoints)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SkipNodesWithLocalStorage ¶
type SkipNodesWithLocalStorage string
SkipNodesWithLocalStorage enumerates the values for SkipNodesWithLocalStorage.
const ( // SkipNodesWithLocalStorageTrue ... SkipNodesWithLocalStorageTrue SkipNodesWithLocalStorage = "true" // SkipNodesWithLocalStorageFalse ... SkipNodesWithLocalStorageFalse SkipNodesWithLocalStorage = "false" )
type SkipNodesWithSystemPods ¶
type SkipNodesWithSystemPods string
SkipNodesWithSystemPods enumerates the values for SkipNodesWithSystemPods.
const ( // SkipNodesWithSystemPodsTrue ... SkipNodesWithSystemPodsTrue SkipNodesWithSystemPods = "true" // SkipNodesWithSystemPodsFalse ... SkipNodesWithSystemPodsFalse SkipNodesWithSystemPods = "false" )
type SpotEvictionPolicy ¶
type SpotEvictionPolicy string
SpotEvictionPolicy defines the eviction policy for spot VMs, if configured. +kubebuilder:validation:Enum=Deallocate;Delete
const ( // SpotEvictionPolicyDeallocate is the default eviction policy and will deallocate the VM when the node is marked for eviction. SpotEvictionPolicyDeallocate SpotEvictionPolicy = "Deallocate" // SpotEvictionPolicyDelete will delete the VM when the node is marked for eviction. SpotEvictionPolicyDelete SpotEvictionPolicy = "Delete" )
type SpotVMOptions ¶
type SpotVMOptions struct {
// MaxPrice defines the maximum price the user is willing to pay for Spot VM instances
// +optional
MaxPrice *resource.Quantity `json:"maxPrice,omitempty"`
// EvictionPolicy defines the behavior of the virtual machine when it is evicted. It can be either Delete or Deallocate.
// +optional
EvictionPolicy *SpotEvictionPolicy `json:"evictionPolicy,omitempty"`
}
SpotVMOptions defines the options relevant to running the Machine on Spot VMs.
func (*SpotVMOptions) DeepCopy ¶
func (in *SpotVMOptions) DeepCopy() *SpotVMOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpotVMOptions.
func (*SpotVMOptions) DeepCopyInto ¶
func (in *SpotVMOptions) DeepCopyInto(out *SpotVMOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SubnetClassSpec ¶
type SubnetClassSpec struct {
// Name defines a name for the subnet resource.
Name string `json:"name"`
// Role defines the subnet role (eg. Node, ControlPlane)
// +kubebuilder:validation:Enum=node;control-plane;bastion;cluster
Role SubnetRole `json:"role"`
// CIDRBlocks defines the subnet's address space, specified as one or more address prefixes in CIDR notation.
// +optional
CIDRBlocks []string `json:"cidrBlocks,omitempty"`
// ServiceEndpoints is a slice of Virtual Network service endpoints to enable for the subnets.
// +optional
ServiceEndpoints ServiceEndpoints `json:"serviceEndpoints,omitempty"`
// PrivateEndpoints defines a list of private endpoints that should be attached to this subnet.
// +optional
PrivateEndpoints PrivateEndpoints `json:"privateEndpoints,omitempty"`
}
SubnetClassSpec defines the SubnetSpec properties that may be shared across several Azure clusters.
func (*SubnetClassSpec) DeepCopy ¶
func (in *SubnetClassSpec) DeepCopy() *SubnetClassSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetClassSpec.
func (*SubnetClassSpec) DeepCopyInto ¶
func (in *SubnetClassSpec) DeepCopyInto(out *SubnetClassSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SubnetSpec ¶
type SubnetSpec struct {
// ID is the Azure resource ID of the subnet.
// READ-ONLY
// +optional
ID string `json:"id,omitempty"`
// SecurityGroup defines the NSG (network security group) that should be attached to this subnet.
// +optional
SecurityGroup SecurityGroup `json:"securityGroup,omitempty"`
// RouteTable defines the route table that should be attached to this subnet.
// +optional
RouteTable RouteTable `json:"routeTable,omitempty"`
// NatGateway associated with this subnet.
// +optional
NatGateway NatGateway `json:"natGateway,omitempty"`
SubnetClassSpec `json:",inline"`
}
SubnetSpec configures an Azure subnet.
func (*SubnetSpec) DeepCopy ¶
func (in *SubnetSpec) DeepCopy() *SubnetSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetSpec.
func (*SubnetSpec) DeepCopyInto ¶
func (in *SubnetSpec) DeepCopyInto(out *SubnetSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (SubnetSpec) IsIPv6Enabled ¶
func (s SubnetSpec) IsIPv6Enabled() bool
IsIPv6Enabled returns whether or not IPv6 is enabled on the subnet.
func (SubnetSpec) IsNatGatewayEnabled ¶
func (s SubnetSpec) IsNatGatewayEnabled() bool
IsNatGatewayEnabled returns whether or not a NAT gateway is enabled on the subnet.
type SubnetTemplateSpec ¶
type SubnetTemplateSpec struct {
SubnetClassSpec `json:",inline"`
// SecurityGroup defines the NSG (network security group) that should be attached to this subnet.
// +optional
SecurityGroup SecurityGroupClass `json:"securityGroup,omitempty"`
// NatGateway associated with this subnet.
// +optional
NatGateway NatGatewayClassSpec `json:"natGateway,omitempty"`
}
SubnetTemplateSpec specifies a template for a subnet.
func (*SubnetTemplateSpec) DeepCopy ¶
func (in *SubnetTemplateSpec) DeepCopy() *SubnetTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetTemplateSpec.
func (*SubnetTemplateSpec) DeepCopyInto ¶
func (in *SubnetTemplateSpec) DeepCopyInto(out *SubnetTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (SubnetTemplateSpec) IsIPv6Enabled ¶
func (s SubnetTemplateSpec) IsIPv6Enabled() bool
IsIPv6Enabled returns whether or not IPv6 is enabled on the subnet.
func (SubnetTemplateSpec) IsNatGatewayEnabled ¶
func (s SubnetTemplateSpec) IsNatGatewayEnabled() bool
IsNatGatewayEnabled returns true if the NAT gateway is enabled.
type SubnetTemplatesSpec ¶
type SubnetTemplatesSpec []SubnetTemplateSpec
SubnetTemplatesSpec specifies a list of subnet templates. +listType=map +listMapKey=name
func (SubnetTemplatesSpec) DeepCopy ¶
func (in SubnetTemplatesSpec) DeepCopy() SubnetTemplatesSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetTemplatesSpec.
func (SubnetTemplatesSpec) DeepCopyInto ¶
func (in SubnetTemplatesSpec) DeepCopyInto(out *SubnetTemplatesSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Subnets ¶
type Subnets []SubnetSpec
Subnets is a slice of Subnet. +listType=map +listMapKey=name
func (Subnets) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Subnets.
func (Subnets) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SysctlConfig ¶
type SysctlConfig struct {
// FsAioMaxNr specifies the maximum number of system-wide asynchronous io requests.
// Valid values are 65536-6553500 (inclusive).
// Maps to fs.aio-max-nr.
// +kubebuilder:validation:Minimum=65536
// +kubebuilder:validation:Maximum=6553500
// +optional
FsAioMaxNr *int `json:"fsAioMaxNr,omitempty"`
// FsFileMax specifies the max number of file-handles that the Linux kernel will allocate, by increasing increases the maximum number of open files permitted.
// Valid values are 8192-12000500 (inclusive).
// Maps to fs.file-max.
// +kubebuilder:validation:Minimum=8192
// +kubebuilder:validation:Maximum=12000500
// +optional
FsFileMax *int `json:"fsFileMax,omitempty"`
// FsInotifyMaxUserWatches specifies the number of file watches allowed by the system. Each watch is roughly 90 bytes on a 32-bit kernel, and roughly 160 bytes on a 64-bit kernel.
// Valid values are 781250-2097152 (inclusive).
// Maps to fs.inotify.max_user_watches.
// +kubebuilder:validation:Minimum=781250
// +kubebuilder:validation:Maximum=2097152
// +optional
FsInotifyMaxUserWatches *int `json:"fsInotifyMaxUserWatches,omitempty"`
// FsNrOpen specifies the maximum number of file-handles a process can allocate.
// Valid values are 8192-20000500 (inclusive).
// Maps to fs.nr_open.
// +kubebuilder:validation:Minimum=8192
// +kubebuilder:validation:Maximum=20000500
// +optional
FsNrOpen *int `json:"fsNrOpen,omitempty"`
// KernelThreadsMax specifies the maximum number of all threads that can be created.
// Valid values are 20-513785 (inclusive).
// Maps to kernel.threads-max.
// +kubebuilder:validation:Minimum=20
// +kubebuilder:validation:Maximum=513785
// +optional
KernelThreadsMax *int `json:"kernelThreadsMax,omitempty"`
// NetCoreNetdevMaxBacklog specifies maximum number of packets, queued on the INPUT side, when the interface receives packets faster than kernel can process them.
// Valid values are 1000-3240000 (inclusive).
// Maps to net.core.netdev_max_backlog.
// +kubebuilder:validation:Minimum=1000
// +kubebuilder:validation:Maximum=3240000
// +optional
NetCoreNetdevMaxBacklog *int `json:"netCoreNetdevMaxBacklog,omitempty"`
// NetCoreOptmemMax specifies the maximum ancillary buffer size (option memory buffer) allowed per socket.
// Socket option memory is used in a few cases to store extra structures relating to usage of the socket.
// Valid values are 20480-4194304 (inclusive).
// Maps to net.core.optmem_max.
// +kubebuilder:validation:Minimum=20480
// +kubebuilder:validation:Maximum=4194304
// +optional
NetCoreOptmemMax *int `json:"netCoreOptmemMax,omitempty"`
// NetCoreRmemDefault specifies the default receive socket buffer size in bytes.
// Valid values are 212992-134217728 (inclusive).
// Maps to net.core.rmem_default.
// +kubebuilder:validation:Minimum=212992
// +kubebuilder:validation:Maximum=134217728
// +optional
NetCoreRmemDefault *int `json:"netCoreRmemDefault,omitempty"`
// NetCoreRmemMax specifies the maximum receive socket buffer size in bytes.
// Valid values are 212992-134217728 (inclusive).
// Maps to net.core.rmem_max.
// +kubebuilder:validation:Minimum=212992
// +kubebuilder:validation:Maximum=134217728
// +optional
NetCoreRmemMax *int `json:"netCoreRmemMax,omitempty"`
// NetCoreSomaxconn specifies maximum number of connection requests that can be queued for any given listening socket.
// An upper limit for the value of the backlog parameter passed to the listen(2)(https://man7.org/linux/man-pages/man2/listen.2.html) function.
// If the backlog argument is greater than the somaxconn, then it's silently truncated to this limit.
// Valid values are 4096-3240000 (inclusive).
// Maps to net.core.somaxconn.
// +kubebuilder:validation:Minimum=4096
// +kubebuilder:validation:Maximum=3240000
// +optional
NetCoreSomaxconn *int `json:"netCoreSomaxconn,omitempty"`
// NetCoreWmemDefault specifies the default send socket buffer size in bytes.
// Valid values are 212992-134217728 (inclusive).
// Maps to net.core.wmem_default.
// +kubebuilder:validation:Minimum=212992
// +kubebuilder:validation:Maximum=134217728
// +optional
NetCoreWmemDefault *int `json:"netCoreWmemDefault,omitempty"`
// NetCoreWmemMax specifies the maximum send socket buffer size in bytes.
// Valid values are 212992-134217728 (inclusive).
// Maps to net.core.wmem_max.
// +kubebuilder:validation:Minimum=212992
// +kubebuilder:validation:Maximum=134217728
// +optional
NetCoreWmemMax *int `json:"netCoreWmemMax,omitempty"`
// NetIpv4IPLocalPortRange is used by TCP and UDP traffic to choose the local port on the agent node.
// PortRange should be specified in the format "first last".
// First, being an integer, must be between [1024 - 60999].
// Last, being an integer, must be between [32768 - 65000].
// Maps to net.ipv4.ip_local_port_range.
// +optional
NetIpv4IPLocalPortRange *string `json:"netIpv4IPLocalPortRange,omitempty"`
// NetIpv4NeighDefaultGcThresh1 specifies the minimum number of entries that may be in the ARP cache.
// Garbage collection won't be triggered if the number of entries is below this setting.
// Valid values are 128-80000 (inclusive).
// Maps to net.ipv4.neigh.default.gc_thresh1.
// +kubebuilder:validation:Minimum=128
// +kubebuilder:validation:Maximum=80000
// +optional
NetIpv4NeighDefaultGcThresh1 *int `json:"netIpv4NeighDefaultGcThresh1,omitempty"`
// NetIpv4NeighDefaultGcThresh2 specifies soft maximum number of entries that may be in the ARP cache.
// ARP garbage collection will be triggered about 5 seconds after reaching this soft maximum.
// Valid values are 512-90000 (inclusive).
// Maps to net.ipv4.neigh.default.gc_thresh2.
// +kubebuilder:validation:Minimum=512
// +kubebuilder:validation:Maximum=90000
// +optional
NetIpv4NeighDefaultGcThresh2 *int `json:"netIpv4NeighDefaultGcThresh2,omitempty"`
// NetIpv4NeighDefaultGcThresh3 specified hard maximum number of entries in the ARP cache.
// Valid values are 1024-100000 (inclusive).
// Maps to net.ipv4.neigh.default.gc_thresh3.
// +kubebuilder:validation:Minimum=1024
// +kubebuilder:validation:Maximum=100000
// +optional
NetIpv4NeighDefaultGcThresh3 *int `json:"netIpv4NeighDefaultGcThresh3,omitempty"`
// NetIpv4TCPFinTimeout specifies the length of time an orphaned connection will remain in the FIN_WAIT_2 state before it's aborted at the local end.
// Valid values are 5-120 (inclusive).
// Maps to net.ipv4.tcp_fin_timeout.
// +kubebuilder:validation:Minimum=5
// +kubebuilder:validation:Maximum=120
// +optional
NetIpv4TCPFinTimeout *int `json:"netIpv4TCPFinTimeout,omitempty"`
// NetIpv4TCPKeepaliveProbes specifies the number of keepalive probes TCP sends out, until it decides the connection is broken.
// Valid values are 1-15 (inclusive).
// Maps to net.ipv4.tcp_keepalive_probes.
// +kubebuilder:validation:Minimum=1
// +kubebuilder:validation:Maximum=15
// +optional
NetIpv4TCPKeepaliveProbes *int `json:"netIpv4TCPKeepaliveProbes,omitempty"`
// NetIpv4TCPKeepaliveTime specifies the rate at which TCP sends out a keepalive message when keepalive is enabled.
// Valid values are 30-432000 (inclusive).
// Maps to net.ipv4.tcp_keepalive_time.
// +kubebuilder:validation:Minimum=30
// +kubebuilder:validation:Maximum=432000
// +optional
NetIpv4TCPKeepaliveTime *int `json:"netIpv4TCPKeepaliveTime,omitempty"`
// NetIpv4TCPMaxSynBacklog specifies the maximum number of queued connection requests that have still not received an acknowledgment from the connecting client.
// If this number is exceeded, the kernel will begin dropping requests.
// Valid values are 128-3240000 (inclusive).
// Maps to net.ipv4.tcp_max_syn_backlog.
// +kubebuilder:validation:Minimum=128
// +kubebuilder:validation:Maximum=3240000
// +optional
NetIpv4TCPMaxSynBacklog *int `json:"netIpv4TCPMaxSynBacklog,omitempty"`
// NetIpv4TCPMaxTwBuckets specifies maximal number of timewait sockets held by system simultaneously.
// If this number is exceeded, time-wait socket is immediately destroyed and warning is printed.
// Valid values are 8000-1440000 (inclusive).
// Maps to net.ipv4.tcp_max_tw_buckets.
// +kubebuilder:validation:Minimum=8000
// +kubebuilder:validation:Maximum=1440000
// +optional
NetIpv4TCPMaxTwBuckets *int `json:"netIpv4TCPMaxTwBuckets,omitempty"`
// NetIpv4TCPTwReuse is used to allow to reuse TIME-WAIT sockets for new connections when it's safe from protocol viewpoint.
// Maps to net.ipv4.tcp_tw_reuse.
// +optional
NetIpv4TCPTwReuse *bool `json:"netIpv4TCPTwReuse,omitempty"`
// NetIpv4TCPkeepaliveIntvl specifies the frequency of the probes sent out.
// Multiplied by tcpKeepaliveprobes, it makes up the time to kill a connection that isn't responding, after probes started.
// Valid values are 1-75 (inclusive).
// Maps to net.ipv4.tcp_keepalive_intvl.
// +kubebuilder:validation:Minimum=1
// +kubebuilder:validation:Maximum=75
// +optional
NetIpv4TCPkeepaliveIntvl *int `json:"netIpv4TCPkeepaliveIntvl,omitempty"`
// NetNetfilterNfConntrackBuckets specifies the size of hash table used by nf_conntrack module to record the established connection record of the TCP protocol.
// Valid values are 65536-147456 (inclusive).
// Maps to net.netfilter.nf_conntrack_buckets.
// +kubebuilder:validation:Minimum=65536
// +kubebuilder:validation:Maximum=147456
// +optional
NetNetfilterNfConntrackBuckets *int `json:"netNetfilterNfConntrackBuckets,omitempty"`
// NetNetfilterNfConntrackMax specifies the maximum number of connections supported by the nf_conntrack module or the size of connection tracking table.
// Valid values are 131072-1048576 (inclusive).
// Maps to net.netfilter.nf_conntrack_max.
// +kubebuilder:validation:Minimum=131072
// +kubebuilder:validation:Maximum=1048576
// +optional
NetNetfilterNfConntrackMax *int `json:"netNetfilterNfConntrackMax,omitempty"`
// VMMaxMapCount specifies the maximum number of memory map areas a process may have.
// Maps to vm.max_map_count.
// Valid values are 65530-262144 (inclusive).
// +kubebuilder:validation:Minimum=65530
// +kubebuilder:validation:Maximum=262144
// +optional
VMMaxMapCount *int `json:"vmMaxMapCount,omitempty"`
// VMSwappiness specifies aggressiveness of the kernel in swapping memory pages.
// Higher values will increase aggressiveness, lower values decrease the amount of swap.
// Valid values are 0-100 (inclusive).
// Maps to vm.swappiness.
// +kubebuilder:validation:Minimum=0
// +kubebuilder:validation:Maximum=100
// +optional
VMSwappiness *int `json:"vmSwappiness,omitempty"`
// VMVfsCachePressure specifies the percentage value that controls tendency of the kernel to reclaim the memory, which is used for caching of directory and inode objects.
// Valid values are 1-500 (inclusive).
// Maps to vm.vfs_cache_pressure.
// +kubebuilder:validation:Minimum=1
// +kubebuilder:validation:Maximum=500
// +optional
VMVfsCachePressure *int `json:"vmVfsCachePressure,omitempty"`
}
SysctlConfig specifies the settings for Linux agent nodes.
func (*SysctlConfig) DeepCopy ¶
func (in *SysctlConfig) DeepCopy() *SysctlConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SysctlConfig.
func (*SysctlConfig) DeepCopyInto ¶
func (in *SysctlConfig) DeepCopyInto(out *SysctlConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SystemAssignedIdentityRole ¶
type SystemAssignedIdentityRole struct {
// Name is the name of the role assignment to create for a system assigned identity. It can be any valid UUID.
// If not specified, a random UUID will be generated.
// +optional
Name string `json:"name,omitempty"`
// DefinitionID is the ID of the role definition to create for a system assigned identity. It can be an Azure built-in role or a custom role.
// Refer to built-in roles: https://learn.microsoft.com/en-us/azure/role-based-access-control/built-in-roles
// +optional
DefinitionID string `json:"definitionID,omitempty"`
// Scope is the scope that the role assignment or definition applies to. The scope can be any REST resource instance.
// If not specified, the scope will be the subscription.
// +optional
Scope string `json:"scope,omitempty"`
}
SystemAssignedIdentityRole defines the role and scope to assign to the system assigned identity.
func (*SystemAssignedIdentityRole) DeepCopy ¶
func (in *SystemAssignedIdentityRole) DeepCopy() *SystemAssignedIdentityRole
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemAssignedIdentityRole.
func (*SystemAssignedIdentityRole) DeepCopyInto ¶
func (in *SystemAssignedIdentityRole) DeepCopyInto(out *SystemAssignedIdentityRole)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Tags ¶
Tags defines a map of tags.
func Build ¶
func Build(params BuildParams) Tags
Build builds tags including the cluster tag and returns them in map form.
func (Tags) AddSpecVersionHashTag ¶
AddSpecVersionHashTag adds a spec version hash to the Azure resource tags to determine quickly if state has changed.
func (Tags) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tags.
func (Tags) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (Tags) Difference ¶
Difference returns the difference between this map of tags and the other map of tags. Items are considered equals if key and value are equals.
func (Tags) HasAzureCloudProviderOwned ¶
HasAzureCloudProviderOwned returns true if the tags contains a tag that marks the resource as owned by the cluster from the perspective of the in-tree cloud provider.
func (Tags) HasMatchingSpecVersionHash ¶
HasMatchingSpecVersionHash returns true if the resource has been tagged with a matching resource spec hash value.
type Taint ¶
type Taint struct {
// Effect specifies the effect for the taint
// +kubebuilder:validation:Enum=NoSchedule;NoExecute;PreferNoSchedule
Effect TaintEffect `json:"effect"`
// Key is the key of the taint
Key string `json:"key"`
// Value is the value of the taint
Value string `json:"value"`
}
Taint represents a Kubernetes taint.
func (*Taint) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Taint.
func (*Taint) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Taints ¶
type Taints []Taint
Taints is an array of Taints.
func (Taints) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Taints.
func (Taints) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TopologyManagerPolicy ¶
type TopologyManagerPolicy string
TopologyManagerPolicy enumerates the values for KubeletConfig.TopologyManagerPolicy.
const ( // TopologyManagerPolicyNone ... TopologyManagerPolicyNone TopologyManagerPolicy = "none" // TopologyManagerPolicyBestEffort ... TopologyManagerPolicyBestEffort TopologyManagerPolicy = "best-effort" // TopologyManagerPolicyRestricted ... TopologyManagerPolicyRestricted TopologyManagerPolicy = "restricted" // TopologyManagerPolicySingleNumaNode ... TopologyManagerPolicySingleNumaNode TopologyManagerPolicy = "single-numa-node" )
type TransparentHugePageOption ¶
type TransparentHugePageOption string
TransparentHugePageOption enumerates the values for various modes of Transparent Hugepages.
const ( // TransparentHugePageOptionAlways ... TransparentHugePageOptionAlways TransparentHugePageOption = "always" // TransparentHugePageOptionMadvise ... TransparentHugePageOptionMadvise TransparentHugePageOption = "madvise" // TransparentHugePageOptionNever ... TransparentHugePageOptionNever TransparentHugePageOption = "never" // TransparentHugePageOptionDefer ... TransparentHugePageOptionDefer TransparentHugePageOption = "defer" // TransparentHugePageOptionDeferMadvise ... TransparentHugePageOptionDeferMadvise TransparentHugePageOption = "defer+madvise" )
type UefiSettings ¶
type UefiSettings struct {
// SecureBootEnabled specifies whether secure boot should be enabled on the virtual machine.
// Secure Boot verifies the digital signature of all boot components and halts the boot process if signature verification fails.
// If omitted, the platform chooses a default, which is subject to change over time, currently that default is false.
//+optional
SecureBootEnabled *bool `json:"secureBootEnabled,omitempty"`
// VTpmEnabled specifies whether vTPM should be enabled on the virtual machine.
// When true it enables the virtualized trusted platform module measurements to create a known good boot integrity policy baseline.
// The integrity policy baseline is used for comparison with measurements from subsequent VM boots to determine if anything has changed.
// This is required to be set to Enabled if SecurityEncryptionType is defined.
// If omitted, the platform chooses a default, which is subject to change over time, currently that default is false.
// +optional
VTpmEnabled *bool `json:"vTpmEnabled,omitempty"`
}
UefiSettings specifies the security settings like secure boot and vTPM used while creating the virtual machine. +optional
func (*UefiSettings) DeepCopy ¶
func (in *UefiSettings) DeepCopy() *UefiSettings
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UefiSettings.
func (*UefiSettings) DeepCopyInto ¶
func (in *UefiSettings) DeepCopyInto(out *UefiSettings)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UpgradeChannel ¶
type UpgradeChannel string
UpgradeChannel determines the type of upgrade channel for automatically upgrading the cluster. See also AKS doc.
const ( // UpgradeChannelNodeImage automatically upgrades the node image to the latest version available. // Consider using nodeOSUpgradeChannel instead as that allows you to configure node OS patching separate from Kubernetes version patching. UpgradeChannelNodeImage UpgradeChannel = "node-image" // UpgradeChannelNone disables auto-upgrades and keeps the cluster at its current version of Kubernetes. UpgradeChannelNone UpgradeChannel = "none" // UpgradeChannelPatch automatically upgrades the cluster to the latest supported patch version when it becomes available // while keeping the minor version the same. For example, if a cluster is running version 1.17.7 while versions 1.17.9, 1.18.4, // 1.18.6, and 1.19.1 are available, the cluster will be upgraded to 1.17.9. UpgradeChannelPatch UpgradeChannel = "patch" // UpgradeChannelRapid automatically upgrades the cluster to the latest supported patch release on the latest supported minor // version. In cases where the cluster is at a version of Kubernetes that is at an N-2 minor version where N is the latest // supported minor version, the cluster first upgrades to the latest supported patch version on N-1 minor version. For example, // if a cluster is running version 1.17.7 while versions 1.17.9, 1.18.4, 1.18.6, and 1.19.1 are available, the cluster // will first be upgraded to 1.18.6 and then to 1.19.1. UpgradeChannelRapid UpgradeChannel = "rapid" // UpgradeChannelStable automatically upgrade the cluster to the latest supported patch release on minor version N-1, where // N is the latest supported minor version. For example, if a cluster is running version 1.17.7 while versions 1.17.9, 1.18.4, // 1.18.6, and 1.19.1 are available, the cluster will be upgraded to 1.18.6. UpgradeChannelStable UpgradeChannel = "stable" )
type UserAssignedIdentity ¶
type UserAssignedIdentity struct {
// ProviderID is the identification ID of the user-assigned Identity, the format of an identity is:
// 'azure:///subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'
ProviderID string `json:"providerID"`
}
UserAssignedIdentity defines the user-assigned identities provided by the user to be assigned to Azure resources.
func (*UserAssignedIdentity) DeepCopy ¶
func (in *UserAssignedIdentity) DeepCopy() *UserAssignedIdentity
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserAssignedIdentity.
func (*UserAssignedIdentity) DeepCopyInto ¶
func (in *UserAssignedIdentity) DeepCopyInto(out *UserAssignedIdentity)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UserManagedBootDiagnostics ¶
type UserManagedBootDiagnostics struct {
// StorageAccountURI is the URI of the user-managed storage account.
// The URI typically will be `https://<mystorageaccountname>.blob.core.windows.net/`
// but may differ if you are using Azure DNS zone endpoints.
// You can find the correct endpoint by looking for the Blob Primary Endpoint in the
// endpoints tab in the Azure console or with the CLI by issuing
// `az storage account list --query='[].{name: name, "resource group": resourceGroup, "blob endpoint": primaryEndpoints.blob}'`.
// +kubebuilder:validation:Required
// +kubebuilder:validation:Pattern=`^https://`
// +kubebuilder:validation:MaxLength=1024
StorageAccountURI string `json:"storageAccountURI"`
}
UserManagedBootDiagnostics provides a reference to a user-managed storage account.
func (*UserManagedBootDiagnostics) DeepCopy ¶
func (in *UserManagedBootDiagnostics) DeepCopy() *UserManagedBootDiagnostics
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserManagedBootDiagnostics.
func (*UserManagedBootDiagnostics) DeepCopyInto ¶
func (in *UserManagedBootDiagnostics) DeepCopyInto(out *UserManagedBootDiagnostics)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VMDiskSecurityProfile ¶
type VMDiskSecurityProfile struct {
// DiskEncryptionSet specifies the customer-managed disk encryption set resource id for the
// managed disk that is used for Customer Managed Key encrypted ConfidentialVM OS Disk and
// VMGuest blob.
// +optional
DiskEncryptionSet *DiskEncryptionSetParameters `json:"diskEncryptionSet,omitempty"`
// SecurityEncryptionType specifies the encryption type of the managed disk.
// It is set to DiskWithVMGuestState to encrypt the managed disk along with the VMGuestState
// blob, and to VMGuestStateOnly to encrypt the VMGuestState blob only.
// When set to VMGuestStateOnly, VirtualizedTrustedPlatformModule should be set to Enabled.
// When set to DiskWithVMGuestState, EncryptionAtHost should be disabled, SecureBoot and
// VirtualizedTrustedPlatformModule should be set to Enabled.
// It can be set only for Confidential VMs.
// +kubebuilder:validation:Enum=VMGuestStateOnly;DiskWithVMGuestState
// +optional
SecurityEncryptionType SecurityEncryptionType `json:"securityEncryptionType,omitempty"`
}
VMDiskSecurityProfile specifies the security profile settings for the managed disk. It can be set only for Confidential VMs.
func (*VMDiskSecurityProfile) DeepCopy ¶
func (in *VMDiskSecurityProfile) DeepCopy() *VMDiskSecurityProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VMDiskSecurityProfile.
func (*VMDiskSecurityProfile) DeepCopyInto ¶
func (in *VMDiskSecurityProfile) DeepCopyInto(out *VMDiskSecurityProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VMExtension ¶
type VMExtension struct {
// Name is the name of the extension.
Name string `json:"name"`
// Publisher is the name of the extension handler publisher.
Publisher string `json:"publisher"`
// Version specifies the version of the script handler.
Version string `json:"version"`
// Settings is a JSON formatted public settings for the extension.
// +optional
Settings Tags `json:"settings,omitempty"`
// ProtectedSettings is a JSON formatted protected settings for the extension.
// +optional
ProtectedSettings Tags `json:"protectedSettings,omitempty"`
}
VMExtension specifies the parameters for a custom VM extension.
func (*VMExtension) DeepCopy ¶
func (in *VMExtension) DeepCopy() *VMExtension
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VMExtension.
func (*VMExtension) DeepCopyInto ¶
func (in *VMExtension) DeepCopyInto(out *VMExtension)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VMIdentity ¶
type VMIdentity string
VMIdentity defines the identity of the virtual machine, if configured. +kubebuilder:validation:Enum=None;SystemAssigned;UserAssigned
const ( // VMIdentityNone ... VMIdentityNone VMIdentity = "None" // VMIdentitySystemAssigned ... VMIdentitySystemAssigned VMIdentity = "SystemAssigned" // VMIdentityUserAssigned ... VMIdentityUserAssigned VMIdentity = "UserAssigned" )
type VMState ¶
type VMState string
VMState describes the state of an Azure virtual machine. Deprecated: use ProvisioningState.
type VnetClassSpec ¶
type VnetClassSpec struct {
// CIDRBlocks defines the virtual network's address space, specified as one or more address prefixes in CIDR notation.
// +optional
CIDRBlocks []string `json:"cidrBlocks,omitempty"`
// Tags is a collection of tags describing the resource.
// +optional
Tags Tags `json:"tags,omitempty"`
}
VnetClassSpec defines the VnetSpec properties that may be shared across several Azure clusters.
func (*VnetClassSpec) DeepCopy ¶
func (in *VnetClassSpec) DeepCopy() *VnetClassSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VnetClassSpec.
func (*VnetClassSpec) DeepCopyInto ¶
func (in *VnetClassSpec) DeepCopyInto(out *VnetClassSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VnetPeeringClassSpec ¶
type VnetPeeringClassSpec struct {
// ResourceGroup is the resource group name of the remote virtual network.
// +optional
ResourceGroup string `json:"resourceGroup,omitempty"`
// RemoteVnetName defines name of the remote virtual network.
RemoteVnetName string `json:"remoteVnetName"`
// ForwardPeeringProperties specifies VnetPeeringProperties for peering from the cluster's virtual network to the
// remote virtual network.
// +optional
ForwardPeeringProperties VnetPeeringProperties `json:"forwardPeeringProperties,omitempty"`
// ReversePeeringProperties specifies VnetPeeringProperties for peering from the remote virtual network to the
// cluster's virtual network.
// +optional
ReversePeeringProperties VnetPeeringProperties `json:"reversePeeringProperties,omitempty"`
}
VnetPeeringClassSpec specifies a virtual network peering class.
func (*VnetPeeringClassSpec) DeepCopy ¶
func (in *VnetPeeringClassSpec) DeepCopy() *VnetPeeringClassSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VnetPeeringClassSpec.
func (*VnetPeeringClassSpec) DeepCopyInto ¶
func (in *VnetPeeringClassSpec) DeepCopyInto(out *VnetPeeringClassSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VnetPeeringProperties ¶
type VnetPeeringProperties struct {
// AllowForwardedTraffic specifies whether the forwarded traffic from the VMs in the local virtual network will be
// allowed/disallowed in remote virtual network.
// +optional
AllowForwardedTraffic *bool `json:"allowForwardedTraffic,omitempty"`
// AllowGatewayTransit specifies if gateway links can be used in remote virtual networking to link to this virtual
// network.
// +optional
AllowGatewayTransit *bool `json:"allowGatewayTransit,omitempty"`
// AllowVirtualNetworkAccess specifies whether the VMs in the local virtual network space would be able to access
// the VMs in remote virtual network space.
// +optional
AllowVirtualNetworkAccess *bool `json:"allowVirtualNetworkAccess,omitempty"`
// UseRemoteGateways specifies if remote gateways can be used on this virtual network.
// If the flag is set to true, and allowGatewayTransit on remote peering is also set to true, the virtual network
// will use the gateways of the remote virtual network for transit. Only one peering can have this flag set to true.
// This flag cannot be set if virtual network already has a gateway.
// +optional
UseRemoteGateways *bool `json:"useRemoteGateways,omitempty"`
}
VnetPeeringProperties specifies virtual network peering properties.
func (*VnetPeeringProperties) DeepCopy ¶
func (in *VnetPeeringProperties) DeepCopy() *VnetPeeringProperties
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VnetPeeringProperties.
func (*VnetPeeringProperties) DeepCopyInto ¶
func (in *VnetPeeringProperties) DeepCopyInto(out *VnetPeeringProperties)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VnetPeeringSpec ¶
type VnetPeeringSpec struct {
VnetPeeringClassSpec `json:",inline"`
}
VnetPeeringSpec specifies an existing remote virtual network to peer with the AzureCluster's virtual network.
func (*VnetPeeringSpec) DeepCopy ¶
func (in *VnetPeeringSpec) DeepCopy() *VnetPeeringSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VnetPeeringSpec.
func (*VnetPeeringSpec) DeepCopyInto ¶
func (in *VnetPeeringSpec) DeepCopyInto(out *VnetPeeringSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VnetPeerings ¶
type VnetPeerings []VnetPeeringSpec
VnetPeerings is a slice of VnetPeering.
func (VnetPeerings) DeepCopy ¶
func (in VnetPeerings) DeepCopy() VnetPeerings
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VnetPeerings.
func (VnetPeerings) DeepCopyInto ¶
func (in VnetPeerings) DeepCopyInto(out *VnetPeerings)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VnetPeeringsTemplateSpec ¶
type VnetPeeringsTemplateSpec []VnetPeeringClassSpec
VnetPeeringsTemplateSpec defines a list of peerings of the newly created virtual network with existing virtual networks.
func (VnetPeeringsTemplateSpec) DeepCopy ¶
func (in VnetPeeringsTemplateSpec) DeepCopy() VnetPeeringsTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VnetPeeringsTemplateSpec.
func (VnetPeeringsTemplateSpec) DeepCopyInto ¶
func (in VnetPeeringsTemplateSpec) DeepCopyInto(out *VnetPeeringsTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VnetSpec ¶
type VnetSpec struct {
// ResourceGroup is the name of the resource group of the existing virtual network
// or the resource group where a managed virtual network should be created.
// +optional
ResourceGroup string `json:"resourceGroup,omitempty"`
// ID is the Azure resource ID of the virtual network.
// READ-ONLY
// +optional
ID string `json:"id,omitempty"`
// Name defines a name for the virtual network resource.
Name string `json:"name"`
// Peerings defines a list of peerings of the newly created virtual network with existing virtual networks.
// +optional
Peerings VnetPeerings `json:"peerings,omitempty"`
VnetClassSpec `json:",inline"`
}
VnetSpec configures an Azure virtual network.
func (*VnetSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VnetSpec.
func (*VnetSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VnetTemplateSpec ¶
type VnetTemplateSpec struct {
VnetClassSpec `json:",inline"`
// Peerings defines a list of peerings of the newly created virtual network with existing virtual networks.
// +optional
Peerings VnetPeeringsTemplateSpec `json:"peerings,omitempty"`
}
VnetTemplateSpec defines the desired state of a virtual network.
func (*VnetTemplateSpec) DeepCopy ¶
func (in *VnetTemplateSpec) DeepCopy() *VnetTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VnetTemplateSpec.
func (*VnetTemplateSpec) DeepCopyInto ¶
func (in *VnetTemplateSpec) DeepCopyInto(out *VnetTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files
¶
- azurecluster_conversion.go
- azurecluster_default.go
- azurecluster_types.go
- azurecluster_validation.go
- azurecluster_webhook.go
- azureclusteridentity_conversion.go
- azureclusteridentity_types.go
- azureclusteridentity_validation.go
- azureclusteridentity_webhook.go
- azureclustertemplate_conversion.go
- azureclustertemplate_default.go
- azureclustertemplate_types.go
- azureclustertemplate_validation.go
- azureclustertemplate_webhook.go
- azureimage_validation.go
- azuremachine_conversion.go
- azuremachine_default.go
- azuremachine_types.go
- azuremachine_validation.go
- azuremachine_webhook.go
- azuremachinetemplate_conversion.go
- azuremachinetemplate_types.go
- azuremachinetemplate_webhook.go
- azuremanagedcluster_conversion.go
- azuremanagedcluster_types.go
- azuremanagedcluster_webhook.go
- azuremanagedclustertemplate_types.go
- azuremanagedclustertemplate_webhook.go
- azuremanagedcontrolplane_conversion.go
- azuremanagedcontrolplane_default.go
- azuremanagedcontrolplane_types.go
- azuremanagedcontrolplane_webhook.go
- azuremanagedcontrolplanetemplate_default.go
- azuremanagedcontrolplanetemplate_types.go
- azuremanagedcontrolplanetemplate_webhook.go
- azuremanagedmachinepool_conversion.go
- azuremanagedmachinepool_types.go
- azuremanagedmachinepool_webhook.go
- azuremanagedmachinepooltemplate_types.go
- azuremanagedmachinepooltemplate_webhook.go
- consts.go
- doc.go
- register.go
- tags.go
- types.go
- types_class.go
- types_template.go
- warning.go
- zz_generated.deepcopy.go