Documentation
¶
Overview ¶
Code generated by azure-service-operator-codegen. DO NOT EDIT. Copyright (c) Microsoft Corporation. Licensed under the MIT license.
Code generated by azure-service-operator-codegen. DO NOT EDIT. Copyright (c) Microsoft Corporation. Licensed under the MIT license.
Code generated by azure-service-operator-codegen. DO NOT EDIT. Copyright (c) Microsoft Corporation. Licensed under the MIT license.
Code generated by azure-service-operator-codegen. DO NOT EDIT. Copyright (c) Microsoft Corporation. Licensed under the MIT license.
Code generated by azure-service-operator-codegen. DO NOT EDIT. Copyright (c) Microsoft Corporation. Licensed under the MIT license.
Code generated by azure-service-operator-codegen. DO NOT EDIT. Copyright (c) Microsoft Corporation. Licensed under the MIT license.
Index ¶
- Constants
- type AdvancedNetworking
- type AdvancedNetworkingObservability
- type AdvancedNetworkingObservability_STATUS
- type AdvancedNetworking_STATUS
- type AgentPoolArtifactStreamingProfile
- type AgentPoolArtifactStreamingProfile_STATUS
- type AgentPoolGPUProfile
- type AgentPoolGPUProfile_STATUS
- type AgentPoolGatewayProfile
- type AgentPoolGatewayProfile_STATUS
- type AgentPoolMode
- type AgentPoolMode_STATUS
- type AgentPoolNetworkProfile
- type AgentPoolNetworkProfile_STATUS
- type AgentPoolSSHAccess
- type AgentPoolSSHAccess_STATUS
- type AgentPoolSecurityProfile
- type AgentPoolSecurityProfile_STATUS
- type AgentPoolType
- type AgentPoolType_STATUS
- type AgentPoolUpgradeSettings
- type AgentPoolUpgradeSettings_STATUS
- type AgentPoolUpgradeSettings_UndrainableNodeBehavior
- type AgentPoolUpgradeSettings_UndrainableNodeBehavior_STATUS
- type AgentPoolWindowsProfile
- type AgentPoolWindowsProfile_STATUS
- type AutoScaleProfile
- type AutoScaleProfile_STATUS
- type AzureKeyVaultKms
- type AzureKeyVaultKms_KeyVaultNetworkAccess
- type AzureKeyVaultKms_KeyVaultNetworkAccess_STATUS
- type AzureKeyVaultKms_STATUS
- type ClusterUpgradeSettings
- type ClusterUpgradeSettings_STATUS
- type ContainerServiceLinuxProfile
- type ContainerServiceLinuxProfile_STATUS
- type ContainerServiceNetworkProfile
- type ContainerServiceNetworkProfile_KubeProxyConfig
- type ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig
- type ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_STATUS
- type ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler
- type ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler_STATUS
- type ContainerServiceNetworkProfile_KubeProxyConfig_Mode
- type ContainerServiceNetworkProfile_KubeProxyConfig_Mode_STATUS
- type ContainerServiceNetworkProfile_KubeProxyConfig_STATUS
- type ContainerServiceNetworkProfile_OutboundType
- type ContainerServiceNetworkProfile_OutboundType_STATUS
- type ContainerServiceNetworkProfile_STATUS
- type ContainerServiceSshConfiguration
- type ContainerServiceSshConfiguration_STATUS
- type ContainerServiceSshPublicKey
- type ContainerServiceSshPublicKey_STATUS
- type CreationData
- type CreationData_STATUS
- type DelegatedResource
- type DelegatedResource_STATUS
- type Expander
- type Expander_STATUS
- type ExtendedLocation
- type ExtendedLocationType
- type ExtendedLocationType_STATUS
- type ExtendedLocation_STATUS
- type GPUInstanceProfile
- type GPUInstanceProfile_STATUS
- type IPTag
- type IPTag_STATUS
- type IpFamily
- type IpFamily_STATUS
- type IstioCertificateAuthority
- type IstioCertificateAuthority_STATUS
- type IstioComponents
- type IstioComponents_STATUS
- type IstioEgressGateway
- type IstioEgressGateway_STATUS
- type IstioIngressGateway
- type IstioIngressGateway_Mode
- type IstioIngressGateway_Mode_STATUS
- type IstioIngressGateway_STATUS
- type IstioPluginCertificateAuthority
- type IstioPluginCertificateAuthority_STATUS
- type IstioServiceMesh
- type IstioServiceMesh_STATUS
- type KubeletConfig
- type KubeletConfig_STATUS
- type KubeletDiskType
- type KubeletDiskType_STATUS
- type KubernetesSupportPlan
- type KubernetesSupportPlan_STATUS
- type LinuxOSConfig
- type LinuxOSConfig_STATUS
- type LoadBalancerSku
- type LoadBalancerSku_STATUS
- type ManagedClusterAADProfile
- type ManagedClusterAADProfile_STATUS
- type ManagedClusterAIToolchainOperatorProfile
- type ManagedClusterAIToolchainOperatorProfile_STATUS
- type ManagedClusterAPIServerAccessProfile
- type ManagedClusterAPIServerAccessProfile_STATUS
- type ManagedClusterAddonProfile
- type ManagedClusterAddonProfile_STATUS
- type ManagedClusterAgentPoolProfile
- type ManagedClusterAgentPoolProfileProperties
- type ManagedClusterAgentPoolProfileProperties_STATUS
- type ManagedClusterAgentPoolProfile_STATUS
- type ManagedClusterAutoUpgradeProfile
- type ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel
- type ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_STATUS
- type ManagedClusterAutoUpgradeProfile_STATUS
- type ManagedClusterAutoUpgradeProfile_UpgradeChannel
- type ManagedClusterAutoUpgradeProfile_UpgradeChannel_STATUS
- type ManagedClusterAzureMonitorProfile
- type ManagedClusterAzureMonitorProfileAppMonitoring
- type ManagedClusterAzureMonitorProfileAppMonitoringAutoInstrumentation
- type ManagedClusterAzureMonitorProfileAppMonitoringAutoInstrumentation_STATUS
- type ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryLogs
- type ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryLogs_STATUS
- type ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryMetrics
- type ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryMetrics_STATUS
- type ManagedClusterAzureMonitorProfileAppMonitoring_STATUS
- type ManagedClusterAzureMonitorProfileContainerInsights
- type ManagedClusterAzureMonitorProfileContainerInsights_STATUS
- type ManagedClusterAzureMonitorProfileKubeStateMetrics
- type ManagedClusterAzureMonitorProfileKubeStateMetrics_STATUS
- type ManagedClusterAzureMonitorProfileMetrics
- type ManagedClusterAzureMonitorProfileMetrics_STATUS
- type ManagedClusterAzureMonitorProfile_STATUS
- type ManagedClusterBootstrapProfile
- type ManagedClusterBootstrapProfile_ArtifactSource
- type ManagedClusterBootstrapProfile_ArtifactSource_STATUS
- type ManagedClusterBootstrapProfile_STATUS
- type ManagedClusterCostAnalysis
- type ManagedClusterCostAnalysis_STATUS
- type ManagedClusterHTTPProxyConfig
- type ManagedClusterHTTPProxyConfig_STATUS
- type ManagedClusterIdentity
- type ManagedClusterIdentity_STATUS
- type ManagedClusterIdentity_Type
- type ManagedClusterIdentity_Type_STATUS
- type ManagedClusterIdentity_UserAssignedIdentities_STATUS
- type ManagedClusterIngressProfile
- type ManagedClusterIngressProfileWebAppRouting
- type ManagedClusterIngressProfileWebAppRouting_STATUS
- type ManagedClusterIngressProfile_STATUS
- type ManagedClusterLoadBalancerProfile
- type ManagedClusterLoadBalancerProfile_BackendPoolType
- type ManagedClusterLoadBalancerProfile_BackendPoolType_STATUS
- type ManagedClusterLoadBalancerProfile_ClusterServiceLoadBalancerHealthProbeMode
- type ManagedClusterLoadBalancerProfile_ClusterServiceLoadBalancerHealthProbeMode_STATUS
- type ManagedClusterLoadBalancerProfile_ManagedOutboundIPs
- type ManagedClusterLoadBalancerProfile_ManagedOutboundIPs_STATUS
- type ManagedClusterLoadBalancerProfile_OutboundIPPrefixes
- type ManagedClusterLoadBalancerProfile_OutboundIPPrefixes_STATUS
- type ManagedClusterLoadBalancerProfile_OutboundIPs
- type ManagedClusterLoadBalancerProfile_OutboundIPs_STATUS
- type ManagedClusterLoadBalancerProfile_STATUS
- type ManagedClusterManagedOutboundIPProfile
- type ManagedClusterManagedOutboundIPProfile_STATUS
- type ManagedClusterMetricsProfile
- type ManagedClusterMetricsProfile_STATUS
- type ManagedClusterNATGatewayProfile
- type ManagedClusterNATGatewayProfile_STATUS
- type ManagedClusterNodeProvisioningProfile
- type ManagedClusterNodeProvisioningProfile_Mode
- type ManagedClusterNodeProvisioningProfile_Mode_STATUS
- type ManagedClusterNodeProvisioningProfile_STATUS
- type ManagedClusterNodeResourceGroupProfile
- type ManagedClusterNodeResourceGroupProfile_RestrictionLevel
- type ManagedClusterNodeResourceGroupProfile_RestrictionLevel_STATUS
- type ManagedClusterNodeResourceGroupProfile_STATUS
- type ManagedClusterOIDCIssuerProfile
- type ManagedClusterOIDCIssuerProfile_STATUS
- type ManagedClusterPodIdentity
- type ManagedClusterPodIdentityException
- type ManagedClusterPodIdentityException_STATUS
- type ManagedClusterPodIdentityProfile
- type ManagedClusterPodIdentityProfile_STATUS
- type ManagedClusterPodIdentityProvisioningErrorBody_STATUS
- type ManagedClusterPodIdentityProvisioningErrorBody_STATUS_Unrolled
- type ManagedClusterPodIdentityProvisioningError_STATUS
- type ManagedClusterPodIdentity_ProvisioningInfo_STATUS
- type ManagedClusterPodIdentity_ProvisioningState_STATUS
- type ManagedClusterPodIdentity_STATUS
- type ManagedClusterProperties
- type ManagedClusterProperties_AutoScalerProfile
- type ManagedClusterProperties_AutoScalerProfile_STATUS
- type ManagedClusterProperties_PublicNetworkAccess
- type ManagedClusterProperties_PublicNetworkAccess_STATUS
- type ManagedClusterProperties_STATUS
- type ManagedClusterSKU
- type ManagedClusterSKU_Name
- type ManagedClusterSKU_Name_STATUS
- type ManagedClusterSKU_STATUS
- type ManagedClusterSKU_Tier
- type ManagedClusterSKU_Tier_STATUS
- type ManagedClusterSecurityProfile
- type ManagedClusterSecurityProfileDefender
- type ManagedClusterSecurityProfileDefenderSecurityMonitoring
- type ManagedClusterSecurityProfileDefenderSecurityMonitoring_STATUS
- type ManagedClusterSecurityProfileDefender_STATUS
- type ManagedClusterSecurityProfileImageCleaner
- type ManagedClusterSecurityProfileImageCleaner_STATUS
- type ManagedClusterSecurityProfileImageIntegrity
- type ManagedClusterSecurityProfileImageIntegrity_STATUS
- type ManagedClusterSecurityProfileNodeRestriction
- type ManagedClusterSecurityProfileNodeRestriction_STATUS
- type ManagedClusterSecurityProfileWorkloadIdentity
- type ManagedClusterSecurityProfileWorkloadIdentity_STATUS
- type ManagedClusterSecurityProfile_STATUS
- type ManagedClusterServicePrincipalProfile
- type ManagedClusterServicePrincipalProfile_STATUS
- type ManagedClusterStaticEgressGatewayProfile
- type ManagedClusterStaticEgressGatewayProfile_STATUS
- type ManagedClusterStorageProfile
- type ManagedClusterStorageProfileBlobCSIDriver
- type ManagedClusterStorageProfileBlobCSIDriver_STATUS
- type ManagedClusterStorageProfileDiskCSIDriver
- type ManagedClusterStorageProfileDiskCSIDriver_STATUS
- type ManagedClusterStorageProfileFileCSIDriver
- type ManagedClusterStorageProfileFileCSIDriver_STATUS
- type ManagedClusterStorageProfileSnapshotController
- type ManagedClusterStorageProfileSnapshotController_STATUS
- type ManagedClusterStorageProfile_STATUS
- type ManagedClusterWindowsProfile
- type ManagedClusterWindowsProfile_LicenseType
- type ManagedClusterWindowsProfile_LicenseType_STATUS
- type ManagedClusterWindowsProfile_STATUS
- type ManagedClusterWorkloadAutoScalerProfile
- type ManagedClusterWorkloadAutoScalerProfileKeda
- type ManagedClusterWorkloadAutoScalerProfileKeda_STATUS
- type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler
- type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling
- type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling_STATUS
- type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_STATUS
- type ManagedClusterWorkloadAutoScalerProfile_STATUS
- type ManagedCluster_STATUS
- type ManagedCluster_Spec
- type ManagedClustersAgentPool_STATUS
- type ManagedClustersAgentPool_Spec
- type ManualScaleProfile
- type ManualScaleProfile_STATUS
- type NetworkDataplane
- type NetworkDataplane_STATUS
- type NetworkMode
- type NetworkMode_STATUS
- type NetworkPlugin
- type NetworkPluginMode
- type NetworkPluginMode_STATUS
- type NetworkPlugin_STATUS
- type NetworkPolicy
- type NetworkPolicy_STATUS
- type OSDiskType
- type OSDiskType_STATUS
- type OSSKU
- type OSSKU_STATUS
- type OSType
- type OSType_STATUS
- type PodIPAllocationMode
- type PodIPAllocationMode_STATUS
- type PodLinkLocalAccess
- type PodLinkLocalAccess_STATUS
- type PortRange
- type PortRange_Protocol
- type PortRange_Protocol_STATUS
- type PortRange_STATUS
- type PowerState
- type PowerState_Code
- type PowerState_Code_STATUS
- type PowerState_STATUS
- type PrivateLinkResource
- type PrivateLinkResource_STATUS
- type ResourceReference
- type ResourceReference_STATUS
- type SafeguardsProfile
- type SafeguardsProfile_Level
- type SafeguardsProfile_Level_STATUS
- type SafeguardsProfile_STATUS
- type ScaleDownMode
- type ScaleDownMode_STATUS
- type ScaleProfile
- type ScaleProfile_STATUS
- type ScaleSetEvictionPolicy
- type ScaleSetEvictionPolicy_STATUS
- type ScaleSetPriority
- type ScaleSetPriority_STATUS
- type ServiceMeshProfile
- type ServiceMeshProfile_Mode
- type ServiceMeshProfile_Mode_STATUS
- type ServiceMeshProfile_STATUS
- type SysctlConfig
- type SysctlConfig_STATUS
- type SystemData_CreatedByType_STATUS
- type SystemData_LastModifiedByType_STATUS
- type SystemData_STATUS
- type TrustedAccessRoleBindingProperties
- type TrustedAccessRoleBindingProperties_ProvisioningState_STATUS
- type TrustedAccessRoleBindingProperties_STATUS
- type TrustedAccessRoleBinding_STATUS
- type TrustedAccessRoleBinding_Spec
- type UpgradeOverrideSettings
- type UpgradeOverrideSettings_STATUS
- type UserAssignedIdentity
- type UserAssignedIdentityDetails
- type UserAssignedIdentity_STATUS
- type VirtualMachineNodes
- type VirtualMachineNodes_STATUS
- type VirtualMachinesProfile
- type VirtualMachinesProfile_STATUS
- type WindowsGmsaProfile
- type WindowsGmsaProfile_STATUS
- type WorkloadRuntime
- type WorkloadRuntime_STATUS
Constants ¶
const ( KubernetesSupportPlan_AKSLongTermSupport = KubernetesSupportPlan("AKSLongTermSupport") KubernetesSupportPlan_KubernetesOfficial = KubernetesSupportPlan("KubernetesOfficial") )
const ( ManagedClusterIdentity_Type_None = ManagedClusterIdentity_Type("None") ManagedClusterIdentity_Type_SystemAssigned = ManagedClusterIdentity_Type("SystemAssigned") ManagedClusterIdentity_Type_UserAssigned = ManagedClusterIdentity_Type("UserAssigned") )
const ( ManagedClusterProperties_PublicNetworkAccess_Disabled = ManagedClusterProperties_PublicNetworkAccess("Disabled") ManagedClusterProperties_PublicNetworkAccess_Enabled = ManagedClusterProperties_PublicNetworkAccess("Enabled") ManagedClusterProperties_PublicNetworkAccess_SecuredByPerimeter = ManagedClusterProperties_PublicNetworkAccess("SecuredByPerimeter") )
const ( ManagedClusterSKU_Name_Automatic = ManagedClusterSKU_Name("Automatic") ManagedClusterSKU_Name_Base = ManagedClusterSKU_Name("Base") )
const ( ManagedClusterSKU_Tier_Free = ManagedClusterSKU_Tier("Free") ManagedClusterSKU_Tier_Premium = ManagedClusterSKU_Tier("Premium") ManagedClusterSKU_Tier_Standard = ManagedClusterSKU_Tier("Standard") )
const ( ContainerServiceNetworkProfile_OutboundType_LoadBalancer = ContainerServiceNetworkProfile_OutboundType("loadBalancer") ContainerServiceNetworkProfile_OutboundType_ManagedNATGateway = ContainerServiceNetworkProfile_OutboundType("managedNATGateway") ContainerServiceNetworkProfile_OutboundType_None = ContainerServiceNetworkProfile_OutboundType("none") ContainerServiceNetworkProfile_OutboundType_UserAssignedNATGateway = ContainerServiceNetworkProfile_OutboundType("userAssignedNATGateway") ContainerServiceNetworkProfile_OutboundType_UserDefinedRouting = ContainerServiceNetworkProfile_OutboundType("userDefinedRouting") )
const ( Expander_LeastWaste = Expander("least-waste") Expander_MostPods = Expander("most-pods") Expander_Priority = Expander("priority") Expander_Random = Expander("random") )
const ( IpFamily_IPv4 = IpFamily("IPv4") IpFamily_IPv6 = IpFamily("IPv6") )
const ( LoadBalancerSku_Basic = LoadBalancerSku("basic") LoadBalancerSku_Standard = LoadBalancerSku("standard") )
const ( ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_NodeImage = ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel("NodeImage") ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_None = ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel("None") ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_SecurityPatch = ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel("SecurityPatch") ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_Unmanaged = ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel("Unmanaged") )
const ( ManagedClusterAutoUpgradeProfile_UpgradeChannel_NodeImage = ManagedClusterAutoUpgradeProfile_UpgradeChannel("node-image") ManagedClusterAutoUpgradeProfile_UpgradeChannel_None = ManagedClusterAutoUpgradeProfile_UpgradeChannel("none") ManagedClusterAutoUpgradeProfile_UpgradeChannel_Patch = ManagedClusterAutoUpgradeProfile_UpgradeChannel("patch") ManagedClusterAutoUpgradeProfile_UpgradeChannel_Rapid = ManagedClusterAutoUpgradeProfile_UpgradeChannel("rapid") ManagedClusterAutoUpgradeProfile_UpgradeChannel_Stable = ManagedClusterAutoUpgradeProfile_UpgradeChannel("stable") )
const ( ManagedClusterBootstrapProfile_ArtifactSource_Cache = ManagedClusterBootstrapProfile_ArtifactSource("Cache") ManagedClusterBootstrapProfile_ArtifactSource_Direct = ManagedClusterBootstrapProfile_ArtifactSource("Direct") )
const ( ManagedClusterNodeProvisioningProfile_Mode_Auto = ManagedClusterNodeProvisioningProfile_Mode("Auto") ManagedClusterNodeProvisioningProfile_Mode_Manual = ManagedClusterNodeProvisioningProfile_Mode("Manual") )
const ( ManagedClusterNodeResourceGroupProfile_RestrictionLevel_ReadOnly = ManagedClusterNodeResourceGroupProfile_RestrictionLevel("ReadOnly") ManagedClusterNodeResourceGroupProfile_RestrictionLevel_Unrestricted = ManagedClusterNodeResourceGroupProfile_RestrictionLevel("Unrestricted") )
const ( ManagedClusterWindowsProfile_LicenseType_None = ManagedClusterWindowsProfile_LicenseType("None") ManagedClusterWindowsProfile_LicenseType_Windows_Server = ManagedClusterWindowsProfile_LicenseType("Windows_Server") )
const ( NetworkDataplane_Azure = NetworkDataplane("azure") NetworkDataplane_Cilium = NetworkDataplane("cilium") )
const ( NetworkMode_Bridge = NetworkMode("bridge") NetworkMode_Transparent = NetworkMode("transparent") )
const ( NetworkPlugin_Azure = NetworkPlugin("azure") NetworkPlugin_Kubenet = NetworkPlugin("kubenet") NetworkPlugin_None = NetworkPlugin("none") )
const ( NetworkPolicy_Azure = NetworkPolicy("azure") NetworkPolicy_Calico = NetworkPolicy("calico") NetworkPolicy_Cilium = NetworkPolicy("cilium") NetworkPolicy_None = NetworkPolicy("none") )
const ( PodLinkLocalAccess_IMDS = PodLinkLocalAccess("IMDS") PodLinkLocalAccess_None = PodLinkLocalAccess("None") )
const ( SafeguardsProfile_Level_Enforcement = SafeguardsProfile_Level("Enforcement") SafeguardsProfile_Level_Off = SafeguardsProfile_Level("Off") SafeguardsProfile_Level_Warning = SafeguardsProfile_Level("Warning") )
const ( ServiceMeshProfile_Mode_Disabled = ServiceMeshProfile_Mode("Disabled") ServiceMeshProfile_Mode_Istio = ServiceMeshProfile_Mode("Istio") )
const ( AzureKeyVaultKms_KeyVaultNetworkAccess_Private = AzureKeyVaultKms_KeyVaultNetworkAccess("Private") AzureKeyVaultKms_KeyVaultNetworkAccess_Public = AzureKeyVaultKms_KeyVaultNetworkAccess("Public") )
const ( ContainerServiceNetworkProfile_KubeProxyConfig_Mode_IPTABLES = ContainerServiceNetworkProfile_KubeProxyConfig_Mode("IPTABLES") ContainerServiceNetworkProfile_KubeProxyConfig_Mode_IPVS = ContainerServiceNetworkProfile_KubeProxyConfig_Mode("IPVS") )
const ( ManagedClusterLoadBalancerProfile_BackendPoolType_NodeIP = ManagedClusterLoadBalancerProfile_BackendPoolType("NodeIP") ManagedClusterLoadBalancerProfile_BackendPoolType_NodeIPConfiguration = ManagedClusterLoadBalancerProfile_BackendPoolType("NodeIPConfiguration") )
const ( ManagedClusterLoadBalancerProfile_ClusterServiceLoadBalancerHealthProbeMode_ServiceNodePort = ManagedClusterLoadBalancerProfile_ClusterServiceLoadBalancerHealthProbeMode("ServiceNodePort") )
const ( ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling_Disabled = ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling("Disabled") ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling_Enabled = ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling("Enabled") )
const ( ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler_LeastConnection = ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler("LeastConnection") ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler_RoundRobin = ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler("RoundRobin") )
const ( IstioIngressGateway_Mode_External = IstioIngressGateway_Mode("External") IstioIngressGateway_Mode_Internal = IstioIngressGateway_Mode("Internal") )
const ( KubernetesSupportPlan_STATUS_AKSLongTermSupport = KubernetesSupportPlan_STATUS("AKSLongTermSupport") KubernetesSupportPlan_STATUS_KubernetesOfficial = KubernetesSupportPlan_STATUS("KubernetesOfficial") )
const ( ManagedClusterIdentity_Type_STATUS_None = ManagedClusterIdentity_Type_STATUS("None") ManagedClusterIdentity_Type_STATUS_SystemAssigned = ManagedClusterIdentity_Type_STATUS("SystemAssigned") ManagedClusterIdentity_Type_STATUS_UserAssigned = ManagedClusterIdentity_Type_STATUS("UserAssigned") )
const ( ManagedClusterProperties_PublicNetworkAccess_STATUS_Disabled = ManagedClusterProperties_PublicNetworkAccess_STATUS("Disabled") ManagedClusterProperties_PublicNetworkAccess_STATUS_Enabled = ManagedClusterProperties_PublicNetworkAccess_STATUS("Enabled") ManagedClusterProperties_PublicNetworkAccess_STATUS_SecuredByPerimeter = ManagedClusterProperties_PublicNetworkAccess_STATUS("SecuredByPerimeter") )
const ( ManagedClusterSKU_Name_STATUS_Automatic = ManagedClusterSKU_Name_STATUS("Automatic") ManagedClusterSKU_Name_STATUS_Base = ManagedClusterSKU_Name_STATUS("Base") )
const ( ManagedClusterSKU_Tier_STATUS_Free = ManagedClusterSKU_Tier_STATUS("Free") ManagedClusterSKU_Tier_STATUS_Premium = ManagedClusterSKU_Tier_STATUS("Premium") ManagedClusterSKU_Tier_STATUS_Standard = ManagedClusterSKU_Tier_STATUS("Standard") )
const ( SystemData_CreatedByType_STATUS_Application = SystemData_CreatedByType_STATUS("Application") SystemData_CreatedByType_STATUS_Key = SystemData_CreatedByType_STATUS("Key") SystemData_CreatedByType_STATUS_ManagedIdentity = SystemData_CreatedByType_STATUS("ManagedIdentity") SystemData_CreatedByType_STATUS_User = SystemData_CreatedByType_STATUS("User") )
const ( SystemData_LastModifiedByType_STATUS_Application = SystemData_LastModifiedByType_STATUS("Application") SystemData_LastModifiedByType_STATUS_Key = SystemData_LastModifiedByType_STATUS("Key") SystemData_LastModifiedByType_STATUS_ManagedIdentity = SystemData_LastModifiedByType_STATUS("ManagedIdentity") SystemData_LastModifiedByType_STATUS_User = SystemData_LastModifiedByType_STATUS("User") )
const ( ContainerServiceNetworkProfile_OutboundType_STATUS_LoadBalancer = ContainerServiceNetworkProfile_OutboundType_STATUS("loadBalancer") ContainerServiceNetworkProfile_OutboundType_STATUS_ManagedNATGateway = ContainerServiceNetworkProfile_OutboundType_STATUS("managedNATGateway") ContainerServiceNetworkProfile_OutboundType_STATUS_None = ContainerServiceNetworkProfile_OutboundType_STATUS("none") ContainerServiceNetworkProfile_OutboundType_STATUS_UserAssignedNATGateway = ContainerServiceNetworkProfile_OutboundType_STATUS("userAssignedNATGateway") ContainerServiceNetworkProfile_OutboundType_STATUS_UserDefinedRouting = ContainerServiceNetworkProfile_OutboundType_STATUS("userDefinedRouting") )
const ( Expander_STATUS_LeastWaste = Expander_STATUS("least-waste") Expander_STATUS_MostPods = Expander_STATUS("most-pods") Expander_STATUS_Priority = Expander_STATUS("priority") Expander_STATUS_Random = Expander_STATUS("random") )
const ( IpFamily_STATUS_IPv4 = IpFamily_STATUS("IPv4") IpFamily_STATUS_IPv6 = IpFamily_STATUS("IPv6") )
const ( LoadBalancerSku_STATUS_Basic = LoadBalancerSku_STATUS("basic") LoadBalancerSku_STATUS_Standard = LoadBalancerSku_STATUS("standard") )
const ( ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_STATUS_NodeImage = ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_STATUS("NodeImage") ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_STATUS_None = ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_STATUS("None") ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_STATUS_SecurityPatch = ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_STATUS("SecurityPatch") ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_STATUS_Unmanaged = ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_STATUS("Unmanaged") )
const ( ManagedClusterAutoUpgradeProfile_UpgradeChannel_STATUS_NodeImage = ManagedClusterAutoUpgradeProfile_UpgradeChannel_STATUS("node-image") ManagedClusterAutoUpgradeProfile_UpgradeChannel_STATUS_None = ManagedClusterAutoUpgradeProfile_UpgradeChannel_STATUS("none") ManagedClusterAutoUpgradeProfile_UpgradeChannel_STATUS_Patch = ManagedClusterAutoUpgradeProfile_UpgradeChannel_STATUS("patch") ManagedClusterAutoUpgradeProfile_UpgradeChannel_STATUS_Rapid = ManagedClusterAutoUpgradeProfile_UpgradeChannel_STATUS("rapid") ManagedClusterAutoUpgradeProfile_UpgradeChannel_STATUS_Stable = ManagedClusterAutoUpgradeProfile_UpgradeChannel_STATUS("stable") )
const ( ManagedClusterBootstrapProfile_ArtifactSource_STATUS_Cache = ManagedClusterBootstrapProfile_ArtifactSource_STATUS("Cache") ManagedClusterBootstrapProfile_ArtifactSource_STATUS_Direct = ManagedClusterBootstrapProfile_ArtifactSource_STATUS("Direct") )
const ( ManagedClusterNodeProvisioningProfile_Mode_STATUS_Auto = ManagedClusterNodeProvisioningProfile_Mode_STATUS("Auto") ManagedClusterNodeProvisioningProfile_Mode_STATUS_Manual = ManagedClusterNodeProvisioningProfile_Mode_STATUS("Manual") )
const ( ManagedClusterNodeResourceGroupProfile_RestrictionLevel_STATUS_ReadOnly = ManagedClusterNodeResourceGroupProfile_RestrictionLevel_STATUS("ReadOnly") ManagedClusterNodeResourceGroupProfile_RestrictionLevel_STATUS_Unrestricted = ManagedClusterNodeResourceGroupProfile_RestrictionLevel_STATUS("Unrestricted") )
const ( ManagedClusterWindowsProfile_LicenseType_STATUS_None = ManagedClusterWindowsProfile_LicenseType_STATUS("None") ManagedClusterWindowsProfile_LicenseType_STATUS_Windows_Server = ManagedClusterWindowsProfile_LicenseType_STATUS("Windows_Server") )
const ( NetworkDataplane_STATUS_Azure = NetworkDataplane_STATUS("azure") NetworkDataplane_STATUS_Cilium = NetworkDataplane_STATUS("cilium") )
const ( NetworkMode_STATUS_Bridge = NetworkMode_STATUS("bridge") NetworkMode_STATUS_Transparent = NetworkMode_STATUS("transparent") )
const ( NetworkPlugin_STATUS_Azure = NetworkPlugin_STATUS("azure") NetworkPlugin_STATUS_Kubenet = NetworkPlugin_STATUS("kubenet") NetworkPlugin_STATUS_None = NetworkPlugin_STATUS("none") )
const ( NetworkPolicy_STATUS_Azure = NetworkPolicy_STATUS("azure") NetworkPolicy_STATUS_Calico = NetworkPolicy_STATUS("calico") NetworkPolicy_STATUS_Cilium = NetworkPolicy_STATUS("cilium") NetworkPolicy_STATUS_None = NetworkPolicy_STATUS("none") )
const ( PodLinkLocalAccess_STATUS_IMDS = PodLinkLocalAccess_STATUS("IMDS") PodLinkLocalAccess_STATUS_None = PodLinkLocalAccess_STATUS("None") )
const ( PowerState_Code_STATUS_Running = PowerState_Code_STATUS("Running") PowerState_Code_STATUS_Stopped = PowerState_Code_STATUS("Stopped") )
const ( SafeguardsProfile_Level_STATUS_Enforcement = SafeguardsProfile_Level_STATUS("Enforcement") SafeguardsProfile_Level_STATUS_Off = SafeguardsProfile_Level_STATUS("Off") SafeguardsProfile_Level_STATUS_Warning = SafeguardsProfile_Level_STATUS("Warning") )
const ( ServiceMeshProfile_Mode_STATUS_Disabled = ServiceMeshProfile_Mode_STATUS("Disabled") ServiceMeshProfile_Mode_STATUS_Istio = ServiceMeshProfile_Mode_STATUS("Istio") )
const ( AzureKeyVaultKms_KeyVaultNetworkAccess_STATUS_Private = AzureKeyVaultKms_KeyVaultNetworkAccess_STATUS("Private") AzureKeyVaultKms_KeyVaultNetworkAccess_STATUS_Public = AzureKeyVaultKms_KeyVaultNetworkAccess_STATUS("Public") )
const ( ContainerServiceNetworkProfile_KubeProxyConfig_Mode_STATUS_IPTABLES = ContainerServiceNetworkProfile_KubeProxyConfig_Mode_STATUS("IPTABLES") ContainerServiceNetworkProfile_KubeProxyConfig_Mode_STATUS_IPVS = ContainerServiceNetworkProfile_KubeProxyConfig_Mode_STATUS("IPVS") )
const ( ManagedClusterLoadBalancerProfile_BackendPoolType_STATUS_NodeIP = ManagedClusterLoadBalancerProfile_BackendPoolType_STATUS("NodeIP") ManagedClusterLoadBalancerProfile_BackendPoolType_STATUS_NodeIPConfiguration = ManagedClusterLoadBalancerProfile_BackendPoolType_STATUS("NodeIPConfiguration") )
const ( ManagedClusterLoadBalancerProfile_ClusterServiceLoadBalancerHealthProbeMode_STATUS_ServiceNodePort = ManagedClusterLoadBalancerProfile_ClusterServiceLoadBalancerHealthProbeMode_STATUS("ServiceNodePort") )
const ( ManagedClusterPodIdentity_ProvisioningState_STATUS_Assigned = ManagedClusterPodIdentity_ProvisioningState_STATUS("Assigned") ManagedClusterPodIdentity_ProvisioningState_STATUS_Canceled = ManagedClusterPodIdentity_ProvisioningState_STATUS("Canceled") ManagedClusterPodIdentity_ProvisioningState_STATUS_Deleting = ManagedClusterPodIdentity_ProvisioningState_STATUS("Deleting") ManagedClusterPodIdentity_ProvisioningState_STATUS_Failed = ManagedClusterPodIdentity_ProvisioningState_STATUS("Failed") ManagedClusterPodIdentity_ProvisioningState_STATUS_Succeeded = ManagedClusterPodIdentity_ProvisioningState_STATUS("Succeeded") ManagedClusterPodIdentity_ProvisioningState_STATUS_Updating = ManagedClusterPodIdentity_ProvisioningState_STATUS("Updating") )
const ( ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling_STATUS_Disabled = ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling_STATUS("Disabled") ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling_STATUS_Enabled = ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling_STATUS("Enabled") )
const ( ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler_STATUS_LeastConnection = ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler_STATUS("LeastConnection") ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler_STATUS_RoundRobin = ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler_STATUS("RoundRobin") )
const ( IstioIngressGateway_Mode_STATUS_External = IstioIngressGateway_Mode_STATUS("External") IstioIngressGateway_Mode_STATUS_Internal = IstioIngressGateway_Mode_STATUS("Internal") )
const ( AgentPoolMode_Gateway = AgentPoolMode("Gateway") AgentPoolMode_System = AgentPoolMode("System") AgentPoolMode_User = AgentPoolMode("User") )
const ( AgentPoolType_AvailabilitySet = AgentPoolType("AvailabilitySet") AgentPoolType_VirtualMachineScaleSets = AgentPoolType("VirtualMachineScaleSets") AgentPoolType_VirtualMachines = AgentPoolType("VirtualMachines") )
const ( GPUInstanceProfile_MIG1G = GPUInstanceProfile("MIG1g") GPUInstanceProfile_MIG2G = GPUInstanceProfile("MIG2g") GPUInstanceProfile_MIG3G = GPUInstanceProfile("MIG3g") GPUInstanceProfile_MIG4G = GPUInstanceProfile("MIG4g") GPUInstanceProfile_MIG7G = GPUInstanceProfile("MIG7g") )
const ( KubeletDiskType_OS = KubeletDiskType("OS") KubeletDiskType_Temporary = KubeletDiskType("Temporary") )
const ( OSDiskType_Ephemeral = OSDiskType("Ephemeral") OSDiskType_Managed = OSDiskType("Managed") )
const ( OSSKU_AzureLinux = OSSKU("AzureLinux") OSSKU_CBLMariner = OSSKU("CBLMariner") OSSKU_Mariner = OSSKU("Mariner") OSSKU_Ubuntu = OSSKU("Ubuntu") OSSKU_Windows2019 = OSSKU("Windows2019") OSSKU_Windows2022 = OSSKU("Windows2022") OSSKU_WindowsAnnual = OSSKU("WindowsAnnual") )
const ( OSType_Linux = OSType("Linux") OSType_Windows = OSType("Windows") )
const ( PodIPAllocationMode_DynamicIndividual = PodIPAllocationMode("DynamicIndividual") PodIPAllocationMode_StaticBlock = PodIPAllocationMode("StaticBlock") )
const ( ScaleDownMode_Deallocate = ScaleDownMode("Deallocate") ScaleDownMode_Delete = ScaleDownMode("Delete") )
const ( ScaleSetEvictionPolicy_Deallocate = ScaleSetEvictionPolicy("Deallocate") ScaleSetEvictionPolicy_Delete = ScaleSetEvictionPolicy("Delete") )
const ( ScaleSetPriority_Regular = ScaleSetPriority("Regular") ScaleSetPriority_Spot = ScaleSetPriority("Spot") )
const ( WorkloadRuntime_KataMshvVmIsolation = WorkloadRuntime("KataMshvVmIsolation") WorkloadRuntime_OCIContainer = WorkloadRuntime("OCIContainer") WorkloadRuntime_WasmWasi = WorkloadRuntime("WasmWasi") )
const ( AgentPoolSSHAccess_Disabled = AgentPoolSSHAccess("Disabled") AgentPoolSSHAccess_LocalUser = AgentPoolSSHAccess("LocalUser") )
const ( AgentPoolUpgradeSettings_UndrainableNodeBehavior_Cordon = AgentPoolUpgradeSettings_UndrainableNodeBehavior("Cordon") AgentPoolUpgradeSettings_UndrainableNodeBehavior_Schedule = AgentPoolUpgradeSettings_UndrainableNodeBehavior("Schedule") )
const ( PowerState_Code_Running = PowerState_Code("Running") PowerState_Code_Stopped = PowerState_Code("Stopped") )
const ( PortRange_Protocol_TCP = PortRange_Protocol("TCP") PortRange_Protocol_UDP = PortRange_Protocol("UDP") )
const ( AgentPoolMode_STATUS_Gateway = AgentPoolMode_STATUS("Gateway") AgentPoolMode_STATUS_System = AgentPoolMode_STATUS("System") AgentPoolMode_STATUS_User = AgentPoolMode_STATUS("User") )
const ( AgentPoolType_STATUS_AvailabilitySet = AgentPoolType_STATUS("AvailabilitySet") AgentPoolType_STATUS_VirtualMachineScaleSets = AgentPoolType_STATUS("VirtualMachineScaleSets") AgentPoolType_STATUS_VirtualMachines = AgentPoolType_STATUS("VirtualMachines") )
const ( GPUInstanceProfile_STATUS_MIG1G = GPUInstanceProfile_STATUS("MIG1g") GPUInstanceProfile_STATUS_MIG2G = GPUInstanceProfile_STATUS("MIG2g") GPUInstanceProfile_STATUS_MIG3G = GPUInstanceProfile_STATUS("MIG3g") GPUInstanceProfile_STATUS_MIG4G = GPUInstanceProfile_STATUS("MIG4g") GPUInstanceProfile_STATUS_MIG7G = GPUInstanceProfile_STATUS("MIG7g") )
const ( KubeletDiskType_STATUS_OS = KubeletDiskType_STATUS("OS") KubeletDiskType_STATUS_Temporary = KubeletDiskType_STATUS("Temporary") )
const ( OSDiskType_STATUS_Ephemeral = OSDiskType_STATUS("Ephemeral") OSDiskType_STATUS_Managed = OSDiskType_STATUS("Managed") )
const ( OSSKU_STATUS_AzureLinux = OSSKU_STATUS("AzureLinux") OSSKU_STATUS_CBLMariner = OSSKU_STATUS("CBLMariner") OSSKU_STATUS_Mariner = OSSKU_STATUS("Mariner") OSSKU_STATUS_Ubuntu = OSSKU_STATUS("Ubuntu") OSSKU_STATUS_Windows2019 = OSSKU_STATUS("Windows2019") OSSKU_STATUS_Windows2022 = OSSKU_STATUS("Windows2022") OSSKU_STATUS_WindowsAnnual = OSSKU_STATUS("WindowsAnnual") )
const ( OSType_STATUS_Linux = OSType_STATUS("Linux") OSType_STATUS_Windows = OSType_STATUS("Windows") )
const ( PodIPAllocationMode_STATUS_DynamicIndividual = PodIPAllocationMode_STATUS("DynamicIndividual") PodIPAllocationMode_STATUS_StaticBlock = PodIPAllocationMode_STATUS("StaticBlock") )
const ( ScaleDownMode_STATUS_Deallocate = ScaleDownMode_STATUS("Deallocate") ScaleDownMode_STATUS_Delete = ScaleDownMode_STATUS("Delete") )
const ( ScaleSetEvictionPolicy_STATUS_Deallocate = ScaleSetEvictionPolicy_STATUS("Deallocate") ScaleSetEvictionPolicy_STATUS_Delete = ScaleSetEvictionPolicy_STATUS("Delete") )
const ( ScaleSetPriority_STATUS_Regular = ScaleSetPriority_STATUS("Regular") ScaleSetPriority_STATUS_Spot = ScaleSetPriority_STATUS("Spot") )
const ( WorkloadRuntime_STATUS_KataMshvVmIsolation = WorkloadRuntime_STATUS("KataMshvVmIsolation") WorkloadRuntime_STATUS_OCIContainer = WorkloadRuntime_STATUS("OCIContainer") WorkloadRuntime_STATUS_WasmWasi = WorkloadRuntime_STATUS("WasmWasi") )
const ( AgentPoolSSHAccess_STATUS_Disabled = AgentPoolSSHAccess_STATUS("Disabled") AgentPoolSSHAccess_STATUS_LocalUser = AgentPoolSSHAccess_STATUS("LocalUser") )
const ( AgentPoolUpgradeSettings_UndrainableNodeBehavior_STATUS_Cordon = AgentPoolUpgradeSettings_UndrainableNodeBehavior_STATUS("Cordon") AgentPoolUpgradeSettings_UndrainableNodeBehavior_STATUS_Schedule = AgentPoolUpgradeSettings_UndrainableNodeBehavior_STATUS("Schedule") )
const ( PortRange_Protocol_STATUS_TCP = PortRange_Protocol_STATUS("TCP") PortRange_Protocol_STATUS_UDP = PortRange_Protocol_STATUS("UDP") )
const ( TrustedAccessRoleBindingProperties_ProvisioningState_STATUS_Canceled = TrustedAccessRoleBindingProperties_ProvisioningState_STATUS("Canceled") TrustedAccessRoleBindingProperties_ProvisioningState_STATUS_Deleting = TrustedAccessRoleBindingProperties_ProvisioningState_STATUS("Deleting") TrustedAccessRoleBindingProperties_ProvisioningState_STATUS_Failed = TrustedAccessRoleBindingProperties_ProvisioningState_STATUS("Failed") TrustedAccessRoleBindingProperties_ProvisioningState_STATUS_Succeeded = TrustedAccessRoleBindingProperties_ProvisioningState_STATUS("Succeeded") TrustedAccessRoleBindingProperties_ProvisioningState_STATUS_Updating = TrustedAccessRoleBindingProperties_ProvisioningState_STATUS("Updating") )
const ExtendedLocationType_EdgeZone = ExtendedLocationType("EdgeZone")
const ExtendedLocationType_STATUS_EdgeZone = ExtendedLocationType_STATUS("EdgeZone")
const NetworkPluginMode_Overlay = NetworkPluginMode("overlay")
const NetworkPluginMode_STATUS_Overlay = NetworkPluginMode_STATUS("overlay")
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AdvancedNetworking ¶
type AdvancedNetworking struct {
// Observability: Observability profile to enable advanced network metrics and flow logs with historical contexts.
Observability *AdvancedNetworkingObservability `json:"observability,omitempty"`
}
Advanced Networking profile for enabling observability on a cluster. Note that enabling advanced networking features may incur additional costs. For more information see aka.ms/aksadvancednetworking.
type AdvancedNetworkingObservability ¶
type AdvancedNetworkingObservability struct {
// Enabled: Indicates the enablement of Advanced Networking observability functionalities on clusters.
Enabled *bool `json:"enabled,omitempty"`
}
Observability profile to enable advanced network metrics and flow logs with historical contexts.
type AdvancedNetworkingObservability_STATUS ¶
type AdvancedNetworkingObservability_STATUS struct {
// Enabled: Indicates the enablement of Advanced Networking observability functionalities on clusters.
Enabled *bool `json:"enabled,omitempty"`
}
Observability profile to enable advanced network metrics and flow logs with historical contexts.
type AdvancedNetworking_STATUS ¶
type AdvancedNetworking_STATUS struct {
// Observability: Observability profile to enable advanced network metrics and flow logs with historical contexts.
Observability *AdvancedNetworkingObservability_STATUS `json:"observability,omitempty"`
}
Advanced Networking profile for enabling observability on a cluster. Note that enabling advanced networking features may incur additional costs. For more information see aka.ms/aksadvancednetworking.
type AgentPoolArtifactStreamingProfile ¶
type AgentPoolArtifactStreamingProfile struct {
// Enabled: Artifact streaming speeds up the cold-start of containers on a node through on-demand image loading. To use
// this feature, container images must also enable artifact streaming on ACR. If not specified, the default is false.
Enabled *bool `json:"enabled,omitempty"`
}
type AgentPoolArtifactStreamingProfile_STATUS ¶
type AgentPoolArtifactStreamingProfile_STATUS struct {
// Enabled: Artifact streaming speeds up the cold-start of containers on a node through on-demand image loading. To use
// this feature, container images must also enable artifact streaming on ACR. If not specified, the default is false.
Enabled *bool `json:"enabled,omitempty"`
}
type AgentPoolGPUProfile ¶
type AgentPoolGPUProfile struct {
// InstallGPUDriver: The default value is true when the vmSize of the agent pool contains a GPU, false otherwise. GPU
// Driver Installation can only be set true when VM has an associated GPU resource. Setting this field to false prevents
// automatic GPU driver installation. In that case, in order for the GPU to be usable, the user must perform GPU driver
// installation themselves.
InstallGPUDriver *bool `json:"installGPUDriver,omitempty"`
}
type AgentPoolGPUProfile_STATUS ¶
type AgentPoolGPUProfile_STATUS struct {
// InstallGPUDriver: The default value is true when the vmSize of the agent pool contains a GPU, false otherwise. GPU
// Driver Installation can only be set true when VM has an associated GPU resource. Setting this field to false prevents
// automatic GPU driver installation. In that case, in order for the GPU to be usable, the user must perform GPU driver
// installation themselves.
InstallGPUDriver *bool `json:"installGPUDriver,omitempty"`
}
type AgentPoolGatewayProfile ¶
type AgentPoolGatewayProfile struct {
// PublicIPPrefixSize: The Gateway agent pool associates one public IPPrefix for each static egress gateway to provide
// public egress. The size of Public IPPrefix should be selected by the user. Each node in the agent pool is assigned with
// one IP from the IPPrefix. The IPPrefix size thus serves as a cap on the size of the Gateway agent pool. Due to Azure
// public IPPrefix size limitation, the valid value range is [28, 31] (/31 = 2 nodes/IPs, /30 = 4 nodes/IPs, /29 = 8
// nodes/IPs, /28 = 16 nodes/IPs). The default value is 31.
PublicIPPrefixSize *int `json:"publicIPPrefixSize,omitempty"`
}
Profile of the managed cluster gateway agent pool.
type AgentPoolGatewayProfile_STATUS ¶
type AgentPoolGatewayProfile_STATUS struct {
// PublicIPPrefixSize: The Gateway agent pool associates one public IPPrefix for each static egress gateway to provide
// public egress. The size of Public IPPrefix should be selected by the user. Each node in the agent pool is assigned with
// one IP from the IPPrefix. The IPPrefix size thus serves as a cap on the size of the Gateway agent pool. Due to Azure
// public IPPrefix size limitation, the valid value range is [28, 31] (/31 = 2 nodes/IPs, /30 = 4 nodes/IPs, /29 = 8
// nodes/IPs, /28 = 16 nodes/IPs). The default value is 31.
PublicIPPrefixSize *int `json:"publicIPPrefixSize,omitempty"`
}
Profile of the managed cluster gateway agent pool.
type AgentPoolMode ¶
type AgentPoolMode string
A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools +kubebuilder:validation:Enum={"Gateway","System","User"}
type AgentPoolMode_STATUS ¶
type AgentPoolMode_STATUS string
A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools
type AgentPoolNetworkProfile ¶
type AgentPoolNetworkProfile struct {
// AllowedHostPorts: The port ranges that are allowed to access. The specified ranges are allowed to overlap.
AllowedHostPorts []PortRange `json:"allowedHostPorts"`
ApplicationSecurityGroups []string `json:"applicationSecurityGroups,omitempty"`
// NodePublicIPTags: IPTags of instance-level public IPs.
NodePublicIPTags []IPTag `json:"nodePublicIPTags"`
}
Network settings of an agent pool.
type AgentPoolNetworkProfile_STATUS ¶
type AgentPoolNetworkProfile_STATUS struct {
// AllowedHostPorts: The port ranges that are allowed to access. The specified ranges are allowed to overlap.
AllowedHostPorts []PortRange_STATUS `json:"allowedHostPorts"`
// ApplicationSecurityGroups: The IDs of the application security groups which agent pool will associate when created.
ApplicationSecurityGroups []string `json:"applicationSecurityGroups"`
// NodePublicIPTags: IPTags of instance-level public IPs.
NodePublicIPTags []IPTag_STATUS `json:"nodePublicIPTags"`
}
Network settings of an agent pool.
type AgentPoolSSHAccess ¶
type AgentPoolSSHAccess string
SSH access method of an agent pool. +kubebuilder:validation:Enum={"Disabled","LocalUser"}
type AgentPoolSSHAccess_STATUS ¶
type AgentPoolSSHAccess_STATUS string
SSH access method of an agent pool.
type AgentPoolSecurityProfile ¶
type AgentPoolSecurityProfile struct {
// EnableSecureBoot: Secure Boot is a feature of Trusted Launch which ensures that only signed operating systems and
// drivers can boot. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false.
EnableSecureBoot *bool `json:"enableSecureBoot,omitempty"`
// EnableVTPM: vTPM is a Trusted Launch feature for configuring a dedicated secure vault for keys and measurements held
// locally on the node. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false.
EnableVTPM *bool `json:"enableVTPM,omitempty"`
// SshAccess: SSH access method of an agent pool.
SshAccess *AgentPoolSSHAccess `json:"sshAccess,omitempty"`
}
The security settings of an agent pool.
type AgentPoolSecurityProfile_STATUS ¶
type AgentPoolSecurityProfile_STATUS struct {
// EnableSecureBoot: Secure Boot is a feature of Trusted Launch which ensures that only signed operating systems and
// drivers can boot. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false.
EnableSecureBoot *bool `json:"enableSecureBoot,omitempty"`
// EnableVTPM: vTPM is a Trusted Launch feature for configuring a dedicated secure vault for keys and measurements held
// locally on the node. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false.
EnableVTPM *bool `json:"enableVTPM,omitempty"`
// SshAccess: SSH access method of an agent pool.
SshAccess *AgentPoolSSHAccess_STATUS `json:"sshAccess,omitempty"`
}
The security settings of an agent pool.
type AgentPoolType ¶
type AgentPoolType string
The type of Agent Pool. +kubebuilder:validation:Enum={"AvailabilitySet","VirtualMachineScaleSets","VirtualMachines"}
type AgentPoolUpgradeSettings ¶
type AgentPoolUpgradeSettings struct {
// DrainTimeoutInMinutes: The amount of time (in minutes) to wait on eviction of pods and graceful termination per node.
// This eviction wait time honors waiting on pod disruption budgets. If this time is exceeded, the upgrade fails. If not
// specified, the default is 30 minutes.
DrainTimeoutInMinutes *int `json:"drainTimeoutInMinutes,omitempty"`
// MaxSurge: This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it
// is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded
// up. If not specified, the default is 1. For more information, including best practices, see:
// https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade
MaxSurge *string `json:"maxSurge,omitempty"`
// NodeSoakDurationInMinutes: The amount of time (in minutes) to wait after draining a node and before reimaging it and
// moving on to next node. If not specified, the default is 0 minutes.
NodeSoakDurationInMinutes *int `json:"nodeSoakDurationInMinutes,omitempty"`
// UndrainableNodeBehavior: Defines the behavior for undrainable nodes during upgrade. The most common cause of undrainable
// nodes is Pod Disruption Budgets (PDBs), but other issues, such as pod termination grace period is exceeding the
// remaining per-node drain timeout or pod is still being in a running state, can also cause undrainable nodes.
UndrainableNodeBehavior *AgentPoolUpgradeSettings_UndrainableNodeBehavior `json:"undrainableNodeBehavior,omitempty"`
}
Settings for upgrading an agentpool
type AgentPoolUpgradeSettings_STATUS ¶
type AgentPoolUpgradeSettings_STATUS struct {
// DrainTimeoutInMinutes: The amount of time (in minutes) to wait on eviction of pods and graceful termination per node.
// This eviction wait time honors waiting on pod disruption budgets. If this time is exceeded, the upgrade fails. If not
// specified, the default is 30 minutes.
DrainTimeoutInMinutes *int `json:"drainTimeoutInMinutes,omitempty"`
// MaxSurge: This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it
// is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded
// up. If not specified, the default is 1. For more information, including best practices, see:
// https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade
MaxSurge *string `json:"maxSurge,omitempty"`
// NodeSoakDurationInMinutes: The amount of time (in minutes) to wait after draining a node and before reimaging it and
// moving on to next node. If not specified, the default is 0 minutes.
NodeSoakDurationInMinutes *int `json:"nodeSoakDurationInMinutes,omitempty"`
// UndrainableNodeBehavior: Defines the behavior for undrainable nodes during upgrade. The most common cause of undrainable
// nodes is Pod Disruption Budgets (PDBs), but other issues, such as pod termination grace period is exceeding the
// remaining per-node drain timeout or pod is still being in a running state, can also cause undrainable nodes.
UndrainableNodeBehavior *AgentPoolUpgradeSettings_UndrainableNodeBehavior_STATUS `json:"undrainableNodeBehavior,omitempty"`
}
Settings for upgrading an agentpool
type AgentPoolUpgradeSettings_UndrainableNodeBehavior ¶
type AgentPoolUpgradeSettings_UndrainableNodeBehavior string
+kubebuilder:validation:Enum={"Cordon","Schedule"}
type AgentPoolUpgradeSettings_UndrainableNodeBehavior_STATUS ¶
type AgentPoolUpgradeSettings_UndrainableNodeBehavior_STATUS string
type AgentPoolWindowsProfile ¶
type AgentPoolWindowsProfile struct {
// DisableOutboundNat: The default value is false. Outbound NAT can only be disabled if the cluster outboundType is NAT
// Gateway and the Windows agent pool does not have node public IP enabled.
DisableOutboundNat *bool `json:"disableOutboundNat,omitempty"`
}
The Windows agent pool's specific profile.
type AgentPoolWindowsProfile_STATUS ¶
type AgentPoolWindowsProfile_STATUS struct {
// DisableOutboundNat: The default value is false. Outbound NAT can only be disabled if the cluster outboundType is NAT
// Gateway and the Windows agent pool does not have node public IP enabled.
DisableOutboundNat *bool `json:"disableOutboundNat,omitempty"`
}
The Windows agent pool's specific profile.
type AutoScaleProfile ¶
type AutoScaleProfile struct {
// MaxCount: The maximum number of nodes of the specified sizes.
MaxCount *int `json:"maxCount,omitempty"`
// MinCount: The minimum number of nodes of the specified sizes.
MinCount *int `json:"minCount,omitempty"`
// Sizes: The list of allowed vm sizes e.g. ['Standard_E4s_v3', 'Standard_E16s_v3', 'Standard_D16s_v5']. AKS will use the
// first available one when auto scaling. If a VM size is unavailable (e.g. due to quota or regional capacity reasons), AKS
// will use the next size.
Sizes []string `json:"sizes"`
}
Specifications on auto-scaling.
type AutoScaleProfile_STATUS ¶
type AutoScaleProfile_STATUS struct {
// MaxCount: The maximum number of nodes of the specified sizes.
MaxCount *int `json:"maxCount,omitempty"`
// MinCount: The minimum number of nodes of the specified sizes.
MinCount *int `json:"minCount,omitempty"`
// Sizes: The list of allowed vm sizes e.g. ['Standard_E4s_v3', 'Standard_E16s_v3', 'Standard_D16s_v5']. AKS will use the
// first available one when auto scaling. If a VM size is unavailable (e.g. due to quota or regional capacity reasons), AKS
// will use the next size.
Sizes []string `json:"sizes"`
}
Specifications on auto-scaling.
type AzureKeyVaultKms ¶
type AzureKeyVaultKms struct {
// Enabled: Whether to enable Azure Key Vault key management service. The default is false.
Enabled *bool `json:"enabled,omitempty"`
// KeyId: Identifier of Azure Key Vault key. See [key identifier
// format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name)
// for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key
// identifier. When Azure Key Vault key management service is disabled, leave the field empty.
KeyId *string `json:"keyId,omitempty"`
// KeyVaultNetworkAccess: 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`.
KeyVaultNetworkAccess *AzureKeyVaultKms_KeyVaultNetworkAccess `json:"keyVaultNetworkAccess,omitempty"`
KeyVaultResourceId *string `json:"keyVaultResourceId,omitempty"`
}
Azure Key Vault key management service settings for the security profile.
type AzureKeyVaultKms_KeyVaultNetworkAccess ¶
type AzureKeyVaultKms_KeyVaultNetworkAccess string
+kubebuilder:validation:Enum={"Private","Public"}
type AzureKeyVaultKms_KeyVaultNetworkAccess_STATUS ¶
type AzureKeyVaultKms_KeyVaultNetworkAccess_STATUS string
type AzureKeyVaultKms_STATUS ¶
type AzureKeyVaultKms_STATUS struct {
// Enabled: Whether to enable Azure Key Vault key management service. The default is false.
Enabled *bool `json:"enabled,omitempty"`
// KeyId: Identifier of Azure Key Vault key. See [key identifier
// format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name)
// for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key
// identifier. When Azure Key Vault key management service is disabled, leave the field empty.
KeyId *string `json:"keyId,omitempty"`
// KeyVaultNetworkAccess: 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`.
KeyVaultNetworkAccess *AzureKeyVaultKms_KeyVaultNetworkAccess_STATUS `json:"keyVaultNetworkAccess,omitempty"`
// KeyVaultResourceId: Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must
// be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty.
KeyVaultResourceId *string `json:"keyVaultResourceId,omitempty"`
}
Azure Key Vault key management service settings for the security profile.
type ClusterUpgradeSettings ¶
type ClusterUpgradeSettings struct {
// OverrideSettings: Settings for overrides.
OverrideSettings *UpgradeOverrideSettings `json:"overrideSettings,omitempty"`
}
Settings for upgrading a cluster.
type ClusterUpgradeSettings_STATUS ¶
type ClusterUpgradeSettings_STATUS struct {
// OverrideSettings: Settings for overrides.
OverrideSettings *UpgradeOverrideSettings_STATUS `json:"overrideSettings,omitempty"`
}
Settings for upgrading a cluster.
type ContainerServiceLinuxProfile ¶
type ContainerServiceLinuxProfile struct {
// AdminUsername: The administrator username to use for Linux VMs.
AdminUsername *string `json:"adminUsername,omitempty"`
// Ssh: The SSH configuration for Linux-based VMs running on Azure.
Ssh *ContainerServiceSshConfiguration `json:"ssh,omitempty"`
}
Profile for Linux VMs in the container service cluster.
type ContainerServiceLinuxProfile_STATUS ¶
type ContainerServiceLinuxProfile_STATUS struct {
// AdminUsername: The administrator username to use for Linux VMs.
AdminUsername *string `json:"adminUsername,omitempty"`
// Ssh: The SSH configuration for Linux-based VMs running on Azure.
Ssh *ContainerServiceSshConfiguration_STATUS `json:"ssh,omitempty"`
}
Profile for Linux VMs in the container service cluster.
type ContainerServiceNetworkProfile ¶
type ContainerServiceNetworkProfile struct {
// AdvancedNetworking: Advanced Networking profile for enabling observability on a cluster. Note that enabling advanced
// networking features may incur additional costs. For more information see aka.ms/aksadvancednetworking.
AdvancedNetworking *AdvancedNetworking `json:"advancedNetworking,omitempty"`
// DnsServiceIP: An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address
// range specified in serviceCidr.
DnsServiceIP *string `json:"dnsServiceIP,omitempty"`
// IpFamilies: IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value
// is IPv4. For dual-stack, the expected values are IPv4 and IPv6.
IpFamilies []IpFamily `json:"ipFamilies"`
// KubeProxyConfig: Holds configuration customizations for kube-proxy. Any values not defined will use the kube-proxy
// defaulting behavior. See https://v<version>.docs.kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/
// where <version> is represented by a <major version>-<minor version> string. Kubernetes version 1.23 would be '1-23'.
KubeProxyConfig *ContainerServiceNetworkProfile_KubeProxyConfig `json:"kubeProxyConfig,omitempty"`
// LoadBalancerProfile: Profile of the cluster load balancer.
LoadBalancerProfile *ManagedClusterLoadBalancerProfile `json:"loadBalancerProfile,omitempty"`
// LoadBalancerSku: The default is 'standard'. See [Azure Load Balancer
// SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load
// balancer SKUs.
LoadBalancerSku *LoadBalancerSku `json:"loadBalancerSku,omitempty"`
// NatGatewayProfile: Profile of the cluster NAT gateway.
NatGatewayProfile *ManagedClusterNATGatewayProfile `json:"natGatewayProfile,omitempty"`
// NetworkDataplane: Network dataplane used in the Kubernetes cluster.
NetworkDataplane *NetworkDataplane `json:"networkDataplane,omitempty"`
// NetworkMode: This cannot be specified if networkPlugin is anything other than 'azure'.
NetworkMode *NetworkMode `json:"networkMode,omitempty"`
// NetworkPlugin: Network plugin used for building the Kubernetes network.
NetworkPlugin *NetworkPlugin `json:"networkPlugin,omitempty"`
// NetworkPluginMode: Network plugin mode used for building the Kubernetes network.
NetworkPluginMode *NetworkPluginMode `json:"networkPluginMode,omitempty"`
// NetworkPolicy: Network policy used for building the Kubernetes network.
NetworkPolicy *NetworkPolicy `json:"networkPolicy,omitempty"`
// OutboundType: This can only be set at cluster creation time and cannot be changed later. For more information see
// [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype).
OutboundType *ContainerServiceNetworkProfile_OutboundType `json:"outboundType,omitempty"`
// PodCidr: A CIDR notation IP range from which to assign pod IPs when kubenet is used.
PodCidr *string `json:"podCidr,omitempty"`
// PodCidrs: One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is
// expected for dual-stack networking.
PodCidrs []string `json:"podCidrs"`
// PodLinkLocalAccess: Defines access to special link local addresses (Azure Instance Metadata Service, aka IMDS) for pods
// with hostNetwork=false. if not specified, the default is 'IMDS'.
PodLinkLocalAccess *PodLinkLocalAccess `json:"podLinkLocalAccess,omitempty"`
// ServiceCidr: A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP
// ranges.
ServiceCidr *string `json:"serviceCidr,omitempty"`
// ServiceCidrs: One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is
// expected for dual-stack networking. They must not overlap with any Subnet IP ranges.
ServiceCidrs []string `json:"serviceCidrs"`
// StaticEgressGatewayProfile: The profile for Static Egress Gateway addon. For more details about Static Egress Gateway,
// see https://aka.ms/aks/static-egress-gateway.
StaticEgressGatewayProfile *ManagedClusterStaticEgressGatewayProfile `json:"staticEgressGatewayProfile,omitempty"`
}
Profile of network configuration.
type ContainerServiceNetworkProfile_KubeProxyConfig ¶
type ContainerServiceNetworkProfile_KubeProxyConfig struct {
// Enabled: Whether to enable on kube-proxy on the cluster (if no 'kubeProxyConfig' exists, kube-proxy is enabled in AKS by
// default without these customizations).
Enabled *bool `json:"enabled,omitempty"`
// IpvsConfig: Holds configuration customizations for IPVS. May only be specified if 'mode' is set to 'IPVS'.
IpvsConfig *ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig `json:"ipvsConfig,omitempty"`
// Mode: Specify which proxy mode to use ('IPTABLES' or 'IPVS')
Mode *ContainerServiceNetworkProfile_KubeProxyConfig_Mode `json:"mode,omitempty"`
}
type ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig ¶
type ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig struct {
// Scheduler: IPVS scheduler, for more information please see http://www.linuxvirtualserver.org/docs/scheduling.html.
Scheduler *ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler `json:"scheduler,omitempty"`
// TcpFinTimeoutSeconds: The timeout value used for IPVS TCP sessions after receiving a FIN in seconds. Must be a positive
// integer value.
TcpFinTimeoutSeconds *int `json:"tcpFinTimeoutSeconds,omitempty"`
// TcpTimeoutSeconds: The timeout value used for idle IPVS TCP sessions in seconds. Must be a positive integer value.
TcpTimeoutSeconds *int `json:"tcpTimeoutSeconds,omitempty"`
// UdpTimeoutSeconds: The timeout value used for IPVS UDP packets in seconds. Must be a positive integer value.
UdpTimeoutSeconds *int `json:"udpTimeoutSeconds,omitempty"`
}
type ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_STATUS ¶
type ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_STATUS struct {
// Scheduler: IPVS scheduler, for more information please see http://www.linuxvirtualserver.org/docs/scheduling.html.
Scheduler *ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler_STATUS `json:"scheduler,omitempty"`
// TcpFinTimeoutSeconds: The timeout value used for IPVS TCP sessions after receiving a FIN in seconds. Must be a positive
// integer value.
TcpFinTimeoutSeconds *int `json:"tcpFinTimeoutSeconds,omitempty"`
// TcpTimeoutSeconds: The timeout value used for idle IPVS TCP sessions in seconds. Must be a positive integer value.
TcpTimeoutSeconds *int `json:"tcpTimeoutSeconds,omitempty"`
// UdpTimeoutSeconds: The timeout value used for IPVS UDP packets in seconds. Must be a positive integer value.
UdpTimeoutSeconds *int `json:"udpTimeoutSeconds,omitempty"`
}
type ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler ¶
type ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler string
+kubebuilder:validation:Enum={"LeastConnection","RoundRobin"}
type ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler_STATUS ¶
type ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_Scheduler_STATUS string
type ContainerServiceNetworkProfile_KubeProxyConfig_Mode ¶
type ContainerServiceNetworkProfile_KubeProxyConfig_Mode string
+kubebuilder:validation:Enum={"IPTABLES","IPVS"}
type ContainerServiceNetworkProfile_KubeProxyConfig_Mode_STATUS ¶
type ContainerServiceNetworkProfile_KubeProxyConfig_Mode_STATUS string
type ContainerServiceNetworkProfile_KubeProxyConfig_STATUS ¶
type ContainerServiceNetworkProfile_KubeProxyConfig_STATUS struct {
// Enabled: Whether to enable on kube-proxy on the cluster (if no 'kubeProxyConfig' exists, kube-proxy is enabled in AKS by
// default without these customizations).
Enabled *bool `json:"enabled,omitempty"`
// IpvsConfig: Holds configuration customizations for IPVS. May only be specified if 'mode' is set to 'IPVS'.
IpvsConfig *ContainerServiceNetworkProfile_KubeProxyConfig_IpvsConfig_STATUS `json:"ipvsConfig,omitempty"`
// Mode: Specify which proxy mode to use ('IPTABLES' or 'IPVS')
Mode *ContainerServiceNetworkProfile_KubeProxyConfig_Mode_STATUS `json:"mode,omitempty"`
}
type ContainerServiceNetworkProfile_OutboundType ¶
type ContainerServiceNetworkProfile_OutboundType string
+kubebuilder:validation:Enum={"loadBalancer","managedNATGateway","none","userAssignedNATGateway","userDefinedRouting"}
type ContainerServiceNetworkProfile_OutboundType_STATUS ¶
type ContainerServiceNetworkProfile_OutboundType_STATUS string
type ContainerServiceNetworkProfile_STATUS ¶
type ContainerServiceNetworkProfile_STATUS struct {
// AdvancedNetworking: Advanced Networking profile for enabling observability on a cluster. Note that enabling advanced
// networking features may incur additional costs. For more information see aka.ms/aksadvancednetworking.
AdvancedNetworking *AdvancedNetworking_STATUS `json:"advancedNetworking,omitempty"`
// DnsServiceIP: An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address
// range specified in serviceCidr.
DnsServiceIP *string `json:"dnsServiceIP,omitempty"`
// IpFamilies: IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value
// is IPv4. For dual-stack, the expected values are IPv4 and IPv6.
IpFamilies []IpFamily_STATUS `json:"ipFamilies"`
// KubeProxyConfig: Holds configuration customizations for kube-proxy. Any values not defined will use the kube-proxy
// defaulting behavior. See https://v<version>.docs.kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/
// where <version> is represented by a <major version>-<minor version> string. Kubernetes version 1.23 would be '1-23'.
KubeProxyConfig *ContainerServiceNetworkProfile_KubeProxyConfig_STATUS `json:"kubeProxyConfig,omitempty"`
// LoadBalancerProfile: Profile of the cluster load balancer.
LoadBalancerProfile *ManagedClusterLoadBalancerProfile_STATUS `json:"loadBalancerProfile,omitempty"`
// LoadBalancerSku: The default is 'standard'. See [Azure Load Balancer
// SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load
// balancer SKUs.
LoadBalancerSku *LoadBalancerSku_STATUS `json:"loadBalancerSku,omitempty"`
// NatGatewayProfile: Profile of the cluster NAT gateway.
NatGatewayProfile *ManagedClusterNATGatewayProfile_STATUS `json:"natGatewayProfile,omitempty"`
// NetworkDataplane: Network dataplane used in the Kubernetes cluster.
NetworkDataplane *NetworkDataplane_STATUS `json:"networkDataplane,omitempty"`
// NetworkMode: This cannot be specified if networkPlugin is anything other than 'azure'.
NetworkMode *NetworkMode_STATUS `json:"networkMode,omitempty"`
// NetworkPlugin: Network plugin used for building the Kubernetes network.
NetworkPlugin *NetworkPlugin_STATUS `json:"networkPlugin,omitempty"`
// NetworkPluginMode: Network plugin mode used for building the Kubernetes network.
NetworkPluginMode *NetworkPluginMode_STATUS `json:"networkPluginMode,omitempty"`
// NetworkPolicy: Network policy used for building the Kubernetes network.
NetworkPolicy *NetworkPolicy_STATUS `json:"networkPolicy,omitempty"`
// OutboundType: This can only be set at cluster creation time and cannot be changed later. For more information see
// [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype).
OutboundType *ContainerServiceNetworkProfile_OutboundType_STATUS `json:"outboundType,omitempty"`
// PodCidr: A CIDR notation IP range from which to assign pod IPs when kubenet is used.
PodCidr *string `json:"podCidr,omitempty"`
// PodCidrs: One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is
// expected for dual-stack networking.
PodCidrs []string `json:"podCidrs"`
// PodLinkLocalAccess: Defines access to special link local addresses (Azure Instance Metadata Service, aka IMDS) for pods
// with hostNetwork=false. if not specified, the default is 'IMDS'.
PodLinkLocalAccess *PodLinkLocalAccess_STATUS `json:"podLinkLocalAccess,omitempty"`
// ServiceCidr: A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP
// ranges.
ServiceCidr *string `json:"serviceCidr,omitempty"`
// ServiceCidrs: One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is
// expected for dual-stack networking. They must not overlap with any Subnet IP ranges.
ServiceCidrs []string `json:"serviceCidrs"`
// StaticEgressGatewayProfile: The profile for Static Egress Gateway addon. For more details about Static Egress Gateway,
// see https://aka.ms/aks/static-egress-gateway.
StaticEgressGatewayProfile *ManagedClusterStaticEgressGatewayProfile_STATUS `json:"staticEgressGatewayProfile,omitempty"`
}
Profile of network configuration.
type ContainerServiceSshConfiguration ¶
type ContainerServiceSshConfiguration struct {
// PublicKeys: The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified.
PublicKeys []ContainerServiceSshPublicKey `json:"publicKeys"`
}
SSH configuration for Linux-based VMs running on Azure.
type ContainerServiceSshConfiguration_STATUS ¶
type ContainerServiceSshConfiguration_STATUS struct {
// PublicKeys: The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified.
PublicKeys []ContainerServiceSshPublicKey_STATUS `json:"publicKeys"`
}
SSH configuration for Linux-based VMs running on Azure.
type ContainerServiceSshPublicKey ¶
type ContainerServiceSshPublicKey struct {
// KeyData: Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or
// without headers.
KeyData *string `json:"keyData,omitempty"`
}
Contains information about SSH certificate public key data.
type ContainerServiceSshPublicKey_STATUS ¶
type ContainerServiceSshPublicKey_STATUS struct {
// KeyData: Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or
// without headers.
KeyData *string `json:"keyData,omitempty"`
}
Contains information about SSH certificate public key data.
type CreationData ¶
type CreationData struct {
SourceResourceId *string `json:"sourceResourceId,omitempty"`
}
Data used when creating a target resource from a source resource.
type CreationData_STATUS ¶
type CreationData_STATUS struct {
// SourceResourceId: This is the ARM ID of the source object to be used to create the target object.
SourceResourceId *string `json:"sourceResourceId,omitempty"`
}
Data used when creating a target resource from a source resource.
type DelegatedResource ¶
type DelegatedResource struct {
// Location: The source resource location - internal use only.
Location *string `json:"location,omitempty"`
// ReferralResource: The delegation id of the referral delegation (optional) - internal use only.
ReferralResource *string `json:"referralResource,omitempty"`
ResourceId *string `json:"resourceId,omitempty"`
// TenantId: The tenant id of the delegated resource - internal use only.
TenantId *string `json:"tenantId,omitempty"`
}
Delegated resource properties - internal use only.
type DelegatedResource_STATUS ¶
type DelegatedResource_STATUS struct {
// Location: The source resource location - internal use only.
Location *string `json:"location,omitempty"`
// ReferralResource: The delegation id of the referral delegation (optional) - internal use only.
ReferralResource *string `json:"referralResource,omitempty"`
// ResourceId: The ARM resource id of the delegated resource - internal use only.
ResourceId *string `json:"resourceId,omitempty"`
// TenantId: The tenant id of the delegated resource - internal use only.
TenantId *string `json:"tenantId,omitempty"`
}
Delegated resource properties - internal use only.
type Expander ¶
type Expander string
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"}
type Expander_STATUS ¶
type Expander_STATUS string
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.
type ExtendedLocation ¶
type ExtendedLocation struct {
// Name: The name of the extended location.
Name *string `json:"name,omitempty"`
// Type: The type of the extended location.
Type *ExtendedLocationType `json:"type,omitempty"`
}
The complex type of the extended location.
type ExtendedLocationType ¶
type ExtendedLocationType string
The type of extendedLocation. +kubebuilder:validation:Enum={"EdgeZone"}
type ExtendedLocationType_STATUS ¶
type ExtendedLocationType_STATUS string
The type of extendedLocation.
type ExtendedLocation_STATUS ¶
type ExtendedLocation_STATUS struct {
// Name: The name of the extended location.
Name *string `json:"name,omitempty"`
// Type: The type of the extended location.
Type *ExtendedLocationType_STATUS `json:"type,omitempty"`
}
The complex type of the extended location.
type GPUInstanceProfile ¶
type GPUInstanceProfile string
GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. +kubebuilder:validation:Enum={"MIG1g","MIG2g","MIG3g","MIG4g","MIG7g"}
type GPUInstanceProfile_STATUS ¶
type GPUInstanceProfile_STATUS string
GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU.
type IPTag ¶
type IPTag struct {
// IpTagType: The IP tag type. Example: RoutingPreference.
IpTagType *string `json:"ipTagType,omitempty"`
// Tag: The value of the IP tag associated with the public IP. Example: Internet.
Tag *string `json:"tag,omitempty"`
}
Contains the IPTag associated with the object.
type IPTag_STATUS ¶
type IPTag_STATUS struct {
// IpTagType: The IP tag type. Example: RoutingPreference.
IpTagType *string `json:"ipTagType,omitempty"`
// Tag: The value of the IP tag associated with the public IP. Example: Internet.
Tag *string `json:"tag,omitempty"`
}
Contains the IPTag associated with the object.
type IpFamily ¶
type IpFamily string
To determine if address belongs IPv4 or IPv6 family. +kubebuilder:validation:Enum={"IPv4","IPv6"}
type IpFamily_STATUS ¶
type IpFamily_STATUS string
To determine if address belongs IPv4 or IPv6 family.
type IstioCertificateAuthority ¶
type IstioCertificateAuthority struct {
// Plugin: Plugin certificates information for Service Mesh.
Plugin *IstioPluginCertificateAuthority `json:"plugin,omitempty"`
}
Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin certificates as described here https://aka.ms/asm-plugin-ca
type IstioCertificateAuthority_STATUS ¶
type IstioCertificateAuthority_STATUS struct {
// Plugin: Plugin certificates information for Service Mesh.
Plugin *IstioPluginCertificateAuthority_STATUS `json:"plugin,omitempty"`
}
Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin certificates as described here https://aka.ms/asm-plugin-ca
type IstioComponents ¶
type IstioComponents struct {
// EgressGateways: Istio egress gateways.
EgressGateways []IstioEgressGateway `json:"egressGateways"`
// IngressGateways: Istio ingress gateways.
IngressGateways []IstioIngressGateway `json:"ingressGateways"`
}
Istio components configuration.
type IstioComponents_STATUS ¶
type IstioComponents_STATUS struct {
// EgressGateways: Istio egress gateways.
EgressGateways []IstioEgressGateway_STATUS `json:"egressGateways"`
// IngressGateways: Istio ingress gateways.
IngressGateways []IstioIngressGateway_STATUS `json:"ingressGateways"`
}
Istio components configuration.
type IstioEgressGateway ¶
type IstioEgressGateway struct {
// Enabled: Whether to enable the egress gateway.
Enabled *bool `json:"enabled,omitempty"`
}
Istio egress gateway configuration.
type IstioEgressGateway_STATUS ¶
type IstioEgressGateway_STATUS struct {
// Enabled: Whether to enable the egress gateway.
Enabled *bool `json:"enabled,omitempty"`
}
Istio egress gateway configuration.
type IstioIngressGateway ¶
type IstioIngressGateway struct {
// Enabled: Whether to enable the ingress gateway.
Enabled *bool `json:"enabled,omitempty"`
// Mode: Mode of an ingress gateway.
Mode *IstioIngressGateway_Mode `json:"mode,omitempty"`
}
Istio ingress gateway configuration. For now, we support up to one external ingress gateway named `aks-istio-ingressgateway-external` and one internal ingress gateway named `aks-istio-ingressgateway-internal`.
type IstioIngressGateway_Mode ¶
type IstioIngressGateway_Mode string
+kubebuilder:validation:Enum={"External","Internal"}
type IstioIngressGateway_Mode_STATUS ¶
type IstioIngressGateway_Mode_STATUS string
type IstioIngressGateway_STATUS ¶
type IstioIngressGateway_STATUS struct {
// Enabled: Whether to enable the ingress gateway.
Enabled *bool `json:"enabled,omitempty"`
// Mode: Mode of an ingress gateway.
Mode *IstioIngressGateway_Mode_STATUS `json:"mode,omitempty"`
}
Istio ingress gateway configuration. For now, we support up to one external ingress gateway named `aks-istio-ingressgateway-external` and one internal ingress gateway named `aks-istio-ingressgateway-internal`.
type IstioPluginCertificateAuthority ¶
type IstioPluginCertificateAuthority struct {
// CertChainObjectName: Certificate chain object name in Azure Key Vault.
CertChainObjectName *string `json:"certChainObjectName,omitempty"`
// CertObjectName: Intermediate certificate object name in Azure Key Vault.
CertObjectName *string `json:"certObjectName,omitempty"`
// KeyObjectName: Intermediate certificate private key object name in Azure Key Vault.
KeyObjectName *string `json:"keyObjectName,omitempty"`
KeyVaultId *string `json:"keyVaultId,omitempty"`
// RootCertObjectName: Root certificate object name in Azure Key Vault.
RootCertObjectName *string `json:"rootCertObjectName,omitempty"`
}
Plugin certificates information for Service Mesh.
type IstioPluginCertificateAuthority_STATUS ¶
type IstioPluginCertificateAuthority_STATUS struct {
// CertChainObjectName: Certificate chain object name in Azure Key Vault.
CertChainObjectName *string `json:"certChainObjectName,omitempty"`
// CertObjectName: Intermediate certificate object name in Azure Key Vault.
CertObjectName *string `json:"certObjectName,omitempty"`
// KeyObjectName: Intermediate certificate private key object name in Azure Key Vault.
KeyObjectName *string `json:"keyObjectName,omitempty"`
// KeyVaultId: The resource ID of the Key Vault.
KeyVaultId *string `json:"keyVaultId,omitempty"`
// RootCertObjectName: Root certificate object name in Azure Key Vault.
RootCertObjectName *string `json:"rootCertObjectName,omitempty"`
}
Plugin certificates information for Service Mesh.
type IstioServiceMesh ¶
type IstioServiceMesh struct {
// CertificateAuthority: Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin
// certificates as described here https://aka.ms/asm-plugin-ca
CertificateAuthority *IstioCertificateAuthority `json:"certificateAuthority,omitempty"`
// Components: Istio components configuration.
Components *IstioComponents `json:"components,omitempty"`
// Revisions: The list of revisions of the Istio control plane. When an upgrade is not in progress, this holds one value.
// When canary upgrade is in progress, this can only hold two consecutive values. For more information, see:
// https://learn.microsoft.com/en-us/azure/aks/istio-upgrade
Revisions []string `json:"revisions"`
}
Istio service mesh configuration.
type IstioServiceMesh_STATUS ¶
type IstioServiceMesh_STATUS struct {
// CertificateAuthority: Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin
// certificates as described here https://aka.ms/asm-plugin-ca
CertificateAuthority *IstioCertificateAuthority_STATUS `json:"certificateAuthority,omitempty"`
// Components: Istio components configuration.
Components *IstioComponents_STATUS `json:"components,omitempty"`
// Revisions: The list of revisions of the Istio control plane. When an upgrade is not in progress, this holds one value.
// When canary upgrade is in progress, this can only hold two consecutive values. For more information, see:
// https://learn.microsoft.com/en-us/azure/aks/istio-upgrade
Revisions []string `json:"revisions"`
}
Istio service mesh configuration.
type KubeletConfig ¶
type KubeletConfig struct {
// AllowedUnsafeSysctls: Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`).
AllowedUnsafeSysctls []string `json:"allowedUnsafeSysctls"`
// ContainerLogMaxFiles: The maximum number of container log files that can be present for a container. The number must be
// ≥ 2.
ContainerLogMaxFiles *int `json:"containerLogMaxFiles,omitempty"`
// ContainerLogMaxSizeMB: The maximum size (e.g. 10Mi) of container log file before it is rotated.
ContainerLogMaxSizeMB *int `json:"containerLogMaxSizeMB,omitempty"`
// CpuCfsQuota: The default is true.
CpuCfsQuota *bool `json:"cpuCfsQuota,omitempty"`
// CpuCfsQuotaPeriod: The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and
// a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'.
CpuCfsQuotaPeriod *string `json:"cpuCfsQuotaPeriod,omitempty"`
// CpuManagerPolicy: The default is 'none'. See [Kubernetes CPU management
// policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more
// information. Allowed values are 'none' and 'static'.
CpuManagerPolicy *string `json:"cpuManagerPolicy,omitempty"`
// FailSwapOn: If set to true it will make the Kubelet fail to start if swap is enabled on the node.
FailSwapOn *bool `json:"failSwapOn,omitempty"`
// ImageGcHighThreshold: To disable image garbage collection, set to 100. The default is 85%
ImageGcHighThreshold *int `json:"imageGcHighThreshold,omitempty"`
// ImageGcLowThreshold: This cannot be set higher than imageGcHighThreshold. The default is 80%
ImageGcLowThreshold *int `json:"imageGcLowThreshold,omitempty"`
// PodMaxPids: The maximum number of processes per pod.
PodMaxPids *int `json:"podMaxPids,omitempty"`
// TopologyManagerPolicy: For more information see [Kubernetes Topology
// Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values
// are 'none', 'best-effort', 'restricted', and 'single-numa-node'.
TopologyManagerPolicy *string `json:"topologyManagerPolicy,omitempty"`
}
See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details.
type KubeletConfig_STATUS ¶
type KubeletConfig_STATUS struct {
// AllowedUnsafeSysctls: Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`).
AllowedUnsafeSysctls []string `json:"allowedUnsafeSysctls"`
// ContainerLogMaxFiles: The maximum number of container log files that can be present for a container. The number must be
// ≥ 2.
ContainerLogMaxFiles *int `json:"containerLogMaxFiles,omitempty"`
// ContainerLogMaxSizeMB: The maximum size (e.g. 10Mi) of container log file before it is rotated.
ContainerLogMaxSizeMB *int `json:"containerLogMaxSizeMB,omitempty"`
// CpuCfsQuota: The default is true.
CpuCfsQuota *bool `json:"cpuCfsQuota,omitempty"`
// CpuCfsQuotaPeriod: The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and
// a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'.
CpuCfsQuotaPeriod *string `json:"cpuCfsQuotaPeriod,omitempty"`
// CpuManagerPolicy: The default is 'none'. See [Kubernetes CPU management
// policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more
// information. Allowed values are 'none' and 'static'.
CpuManagerPolicy *string `json:"cpuManagerPolicy,omitempty"`
// FailSwapOn: If set to true it will make the Kubelet fail to start if swap is enabled on the node.
FailSwapOn *bool `json:"failSwapOn,omitempty"`
// ImageGcHighThreshold: To disable image garbage collection, set to 100. The default is 85%
ImageGcHighThreshold *int `json:"imageGcHighThreshold,omitempty"`
// ImageGcLowThreshold: This cannot be set higher than imageGcHighThreshold. The default is 80%
ImageGcLowThreshold *int `json:"imageGcLowThreshold,omitempty"`
// PodMaxPids: The maximum number of processes per pod.
PodMaxPids *int `json:"podMaxPids,omitempty"`
// TopologyManagerPolicy: For more information see [Kubernetes Topology
// Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values
// are 'none', 'best-effort', 'restricted', and 'single-numa-node'.
TopologyManagerPolicy *string `json:"topologyManagerPolicy,omitempty"`
}
See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details.
type KubeletDiskType ¶
type KubeletDiskType string
Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. +kubebuilder:validation:Enum={"OS","Temporary"}
type KubeletDiskType_STATUS ¶
type KubeletDiskType_STATUS string
Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage.
type KubernetesSupportPlan ¶
type KubernetesSupportPlan string
Different support tiers for AKS managed clusters +kubebuilder:validation:Enum={"AKSLongTermSupport","KubernetesOfficial"}
type KubernetesSupportPlan_STATUS ¶
type KubernetesSupportPlan_STATUS string
Different support tiers for AKS managed clusters
type LinuxOSConfig ¶
type LinuxOSConfig struct {
// SwapFileSizeMB: The size in MB of a swap file that will be created on each node.
SwapFileSizeMB *int `json:"swapFileSizeMB,omitempty"`
// Sysctls: Sysctl settings for Linux agent nodes.
Sysctls *SysctlConfig `json:"sysctls,omitempty"`
// TransparentHugePageDefrag: Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is
// 'madvise'. For more information see [Transparent
// Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge).
TransparentHugePageDefrag *string `json:"transparentHugePageDefrag,omitempty"`
// TransparentHugePageEnabled: Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more
// information see [Transparent
// Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge).
TransparentHugePageEnabled *string `json:"transparentHugePageEnabled,omitempty"`
}
See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details.
type LinuxOSConfig_STATUS ¶
type LinuxOSConfig_STATUS struct {
// SwapFileSizeMB: The size in MB of a swap file that will be created on each node.
SwapFileSizeMB *int `json:"swapFileSizeMB,omitempty"`
// Sysctls: Sysctl settings for Linux agent nodes.
Sysctls *SysctlConfig_STATUS `json:"sysctls,omitempty"`
// TransparentHugePageDefrag: Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is
// 'madvise'. For more information see [Transparent
// Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge).
TransparentHugePageDefrag *string `json:"transparentHugePageDefrag,omitempty"`
// TransparentHugePageEnabled: Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more
// information see [Transparent
// Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge).
TransparentHugePageEnabled *string `json:"transparentHugePageEnabled,omitempty"`
}
See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details.
type LoadBalancerSku ¶
type LoadBalancerSku string
The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. +kubebuilder:validation:Enum={"basic","standard"}
type LoadBalancerSku_STATUS ¶
type LoadBalancerSku_STATUS string
The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs.
type ManagedClusterAADProfile ¶
type ManagedClusterAADProfile struct {
// AdminGroupObjectIDs: The list of AAD group object IDs that will have admin role of the cluster.
AdminGroupObjectIDs []string `json:"adminGroupObjectIDs"`
// ClientAppID: (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy.
ClientAppID *string `json:"clientAppID,omitempty"`
// EnableAzureRBAC: Whether to enable Azure RBAC for Kubernetes authorization.
EnableAzureRBAC *bool `json:"enableAzureRBAC,omitempty"`
// Managed: Whether to enable managed AAD.
Managed *bool `json:"managed,omitempty"`
// ServerAppID: (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy.
ServerAppID *string `json:"serverAppID,omitempty"`
// ServerAppSecret: (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy.
ServerAppSecret *string `json:"serverAppSecret,omitempty"`
// TenantID: The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment
// subscription.
TenantID *string `json:"tenantID,omitempty"`
}
For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad).
type ManagedClusterAADProfile_STATUS ¶
type ManagedClusterAADProfile_STATUS struct {
// AdminGroupObjectIDs: The list of AAD group object IDs that will have admin role of the cluster.
AdminGroupObjectIDs []string `json:"adminGroupObjectIDs"`
// ClientAppID: (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy.
ClientAppID *string `json:"clientAppID,omitempty"`
// EnableAzureRBAC: Whether to enable Azure RBAC for Kubernetes authorization.
EnableAzureRBAC *bool `json:"enableAzureRBAC,omitempty"`
// Managed: Whether to enable managed AAD.
Managed *bool `json:"managed,omitempty"`
// ServerAppID: (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy.
ServerAppID *string `json:"serverAppID,omitempty"`
// ServerAppSecret: (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy.
ServerAppSecret *string `json:"serverAppSecret,omitempty"`
// TenantID: The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment
// subscription.
TenantID *string `json:"tenantID,omitempty"`
}
For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad).
type ManagedClusterAIToolchainOperatorProfile ¶
type ManagedClusterAIToolchainOperatorProfile struct {
// Enabled: Indicates if AI toolchain operator enabled or not.
Enabled *bool `json:"enabled,omitempty"`
}
When enabling the operator, a set of AKS managed CRDs and controllers will be installed in the cluster. The operator automates the deployment of OSS models for inference and/or training purposes. It provides a set of preset models and enables distributed inference against them.
type ManagedClusterAIToolchainOperatorProfile_STATUS ¶
type ManagedClusterAIToolchainOperatorProfile_STATUS struct {
// Enabled: Indicates if AI toolchain operator enabled or not.
Enabled *bool `json:"enabled,omitempty"`
}
When enabling the operator, a set of AKS managed CRDs and controllers will be installed in the cluster. The operator automates the deployment of OSS models for inference and/or training purposes. It provides a set of preset models and enables distributed inference against them.
type ManagedClusterAPIServerAccessProfile ¶
type ManagedClusterAPIServerAccessProfile struct {
// AuthorizedIPRanges: IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with
// clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API
// server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges).
AuthorizedIPRanges []string `json:"authorizedIPRanges"`
// DisableRunCommand: Whether to disable run command for the cluster or not.
DisableRunCommand *bool `json:"disableRunCommand,omitempty"`
// EnablePrivateCluster: For more details, see [Creating a private AKS
// cluster](https://docs.microsoft.com/azure/aks/private-clusters).
EnablePrivateCluster *bool `json:"enablePrivateCluster,omitempty"`
// EnablePrivateClusterPublicFQDN: Whether to create additional public FQDN for private cluster or not.
EnablePrivateClusterPublicFQDN *bool `json:"enablePrivateClusterPublicFQDN,omitempty"`
// EnableVnetIntegration: Whether to enable apiserver vnet integration for the cluster or not.
EnableVnetIntegration *bool `json:"enableVnetIntegration,omitempty"`
// PrivateDNSZone: The default is System. For more details see [configure private DNS
// zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and
// 'none'.
PrivateDNSZone *string `json:"privateDNSZone,omitempty"`
// SubnetId: It is required when: 1. creating a new cluster with BYO Vnet; 2. updating an existing cluster to enable
// apiserver vnet integration.
SubnetId *string `json:"subnetId,omitempty"`
}
Access profile for managed cluster API server.
type ManagedClusterAPIServerAccessProfile_STATUS ¶
type ManagedClusterAPIServerAccessProfile_STATUS struct {
// AuthorizedIPRanges: IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with
// clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API
// server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges).
AuthorizedIPRanges []string `json:"authorizedIPRanges"`
// DisableRunCommand: Whether to disable run command for the cluster or not.
DisableRunCommand *bool `json:"disableRunCommand,omitempty"`
// EnablePrivateCluster: For more details, see [Creating a private AKS
// cluster](https://docs.microsoft.com/azure/aks/private-clusters).
EnablePrivateCluster *bool `json:"enablePrivateCluster,omitempty"`
// EnablePrivateClusterPublicFQDN: Whether to create additional public FQDN for private cluster or not.
EnablePrivateClusterPublicFQDN *bool `json:"enablePrivateClusterPublicFQDN,omitempty"`
// EnableVnetIntegration: Whether to enable apiserver vnet integration for the cluster or not.
EnableVnetIntegration *bool `json:"enableVnetIntegration,omitempty"`
// PrivateDNSZone: The default is System. For more details see [configure private DNS
// zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and
// 'none'.
PrivateDNSZone *string `json:"privateDNSZone,omitempty"`
// SubnetId: It is required when: 1. creating a new cluster with BYO Vnet; 2. updating an existing cluster to enable
// apiserver vnet integration.
SubnetId *string `json:"subnetId,omitempty"`
}
Access profile for managed cluster API server.
type ManagedClusterAddonProfile ¶
type ManagedClusterAddonProfile struct {
// Config: Key-value pairs for configuring an add-on.
Config map[string]string `json:"config"`
// Enabled: Whether the add-on is enabled or not.
Enabled *bool `json:"enabled,omitempty"`
}
A Kubernetes add-on profile for a managed cluster.
type ManagedClusterAddonProfile_STATUS ¶
type ManagedClusterAddonProfile_STATUS struct {
// Config: Key-value pairs for configuring an add-on.
Config map[string]string `json:"config"`
// Enabled: Whether the add-on is enabled or not.
Enabled *bool `json:"enabled,omitempty"`
// Identity: Information of user assigned identity used by this add-on.
Identity *UserAssignedIdentity_STATUS `json:"identity,omitempty"`
}
A Kubernetes add-on profile for a managed cluster.
type ManagedClusterAgentPoolProfile ¶
type ManagedClusterAgentPoolProfile struct {
// ArtifactStreamingProfile: Configuration for using artifact streaming on AKS.
ArtifactStreamingProfile *AgentPoolArtifactStreamingProfile `json:"artifactStreamingProfile,omitempty"`
// AvailabilityZones: The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType
// property is 'VirtualMachineScaleSets'.
AvailabilityZones []string `json:"availabilityZones"`
CapacityReservationGroupID *string `json:"capacityReservationGroupID,omitempty"`
// Count: Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive)
// for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1.
Count *int `json:"count,omitempty"`
// CreationData: CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using
// a snapshot.
CreationData *CreationData `json:"creationData,omitempty"`
// EnableAutoScaling: Whether to enable auto-scaler
EnableAutoScaling *bool `json:"enableAutoScaling,omitempty"`
// EnableCustomCATrust: When set to true, AKS adds a label to the node indicating that the feature is enabled and deploys a
// daemonset along with host services to sync custom certificate authorities from user-provided list of base64 encoded
// certificates into node trust stores. Defaults to false.
EnableCustomCATrust *bool `json:"enableCustomCATrust,omitempty"`
// EnableEncryptionAtHost: This is only supported on certain VM sizes and in certain Azure regions. For more information,
// see: https://docs.microsoft.com/azure/aks/enable-host-encryption
EnableEncryptionAtHost *bool `json:"enableEncryptionAtHost,omitempty"`
// EnableFIPS: See [Add a FIPS-enabled node
// pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more
// details.
EnableFIPS *bool `json:"enableFIPS,omitempty"`
// EnableNodePublicIP: Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses.
// A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine
// to minimize hops. For more information see [assigning a public IP per
// node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The
// default is false.
EnableNodePublicIP *bool `json:"enableNodePublicIP,omitempty"`
// EnableUltraSSD: Whether to enable UltraSSD
EnableUltraSSD *bool `json:"enableUltraSSD,omitempty"`
// GatewayProfile: Profile specific to a managed agent pool in Gateway mode. This field cannot be set if agent pool mode is
// not Gateway.
GatewayProfile *AgentPoolGatewayProfile `json:"gatewayProfile,omitempty"`
// GpuInstanceProfile: GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU.
GpuInstanceProfile *GPUInstanceProfile `json:"gpuInstanceProfile,omitempty"`
// GpuProfile: The GPU settings of an agent pool.
GpuProfile *AgentPoolGPUProfile `json:"gpuProfile,omitempty"`
HostGroupID *string `json:"hostGroupID,omitempty"`
// KubeletConfig: The Kubelet configuration on the agent pool nodes.
KubeletConfig *KubeletConfig `json:"kubeletConfig,omitempty"`
// KubeletDiskType: Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral
// storage.
KubeletDiskType *KubeletDiskType `json:"kubeletDiskType,omitempty"`
// LinuxOSConfig: The OS configuration of Linux agent nodes.
LinuxOSConfig *LinuxOSConfig `json:"linuxOSConfig,omitempty"`
// MaxCount: The maximum number of nodes for auto-scaling
MaxCount *int `json:"maxCount,omitempty"`
// MaxPods: The maximum number of pods that can run on a node.
MaxPods *int `json:"maxPods,omitempty"`
// MessageOfTheDay: A base64-encoded string which will be written to /etc/motd after decoding. This allows customization of
// the message of the day for Linux nodes. It must not be specified for Windows nodes. It must be a static string (i.e.,
// will be printed raw and not be executed as a script).
MessageOfTheDay *string `json:"messageOfTheDay,omitempty"`
// MinCount: The minimum number of nodes for auto-scaling
MinCount *int `json:"minCount,omitempty"`
// Mode: A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool
// restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools
Mode *AgentPoolMode `json:"mode,omitempty"`
// Name: Windows agent pool names must be 6 characters or less.
Name *string `json:"name,omitempty"`
// NetworkProfile: Network-related settings of an agent pool.
NetworkProfile *AgentPoolNetworkProfile `json:"networkProfile,omitempty"`
// NodeInitializationTaints: These taints will not be reconciled by AKS and can be removed with a kubectl call. This field
// can be modified after node pool is created, but nodes will not be recreated with new taints until another operation that
// requires recreation (e.g. node image upgrade) happens. These taints allow for required configuration to run before the
// node is ready to accept workloads, for example 'key1=value1:NoSchedule' that then can be removed with `kubectl taint
// nodes node1 key1=value1:NoSchedule-`
NodeInitializationTaints []string `json:"nodeInitializationTaints"`
// NodeLabels: The node labels to be persisted across all nodes in agent pool.
NodeLabels map[string]string `json:"nodeLabels" serializationType:"explicitEmptyCollection"`
NodePublicIPPrefixID *string `json:"nodePublicIPPrefixID,omitempty"`
// NodeTaints: The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule.
NodeTaints []string `json:"nodeTaints" serializationType:"explicitEmptyCollection"`
// OrchestratorVersion: Both patch version <major.minor.patch> and <major.minor> are supported. When <major.minor> is
// specified, the latest supported patch version is chosen automatically. Updating the agent pool with the same
// <major.minor> once it has been created will not trigger an upgrade, even if a newer patch version is available. As a
// best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version
// must have the same major version as the control plane. The node pool minor version must be within two minor versions of
// the control plane version. The node pool version cannot be greater than the control plane version. For more information
// see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool).
OrchestratorVersion *string `json:"orchestratorVersion,omitempty"`
OsDiskSizeGB *int `json:"osDiskSizeGB,omitempty"`
// OsDiskType: The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested
// OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral
// OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os).
OsDiskType *OSDiskType `json:"osDiskType,omitempty"`
// OsSKU: Specifies the OS SKU used by the agent pool. If not specified, the default is Ubuntu if OSType=Linux or
// Windows2019 if OSType=Windows. And the default Windows OSSKU will be changed to Windows2022 after Windows2019 is
// deprecated.
OsSKU *OSSKU `json:"osSKU,omitempty"`
// OsType: The operating system type. The default is Linux.
OsType *OSType `json:"osType,omitempty"`
// PodIPAllocationMode: The IP allocation mode for pods in the agent pool. Must be used with podSubnetId. The default is
// 'DynamicIndividual'.
PodIPAllocationMode *PodIPAllocationMode `json:"podIPAllocationMode,omitempty"`
PodSubnetID *string `json:"podSubnetID,omitempty"`
// PowerState: When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this
// field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only
// be stopped if it is Running and provisioning state is Succeeded
PowerState *PowerState `json:"powerState,omitempty"`
ProximityPlacementGroupID *string `json:"proximityPlacementGroupID,omitempty"`
// ScaleDownMode: This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete.
ScaleDownMode *ScaleDownMode `json:"scaleDownMode,omitempty"`
// ScaleSetEvictionPolicy: This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is
// 'Delete'.
ScaleSetEvictionPolicy *ScaleSetEvictionPolicy `json:"scaleSetEvictionPolicy,omitempty"`
// ScaleSetPriority: The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'.
ScaleSetPriority *ScaleSetPriority `json:"scaleSetPriority,omitempty"`
// SecurityProfile: The security settings of an agent pool.
SecurityProfile *AgentPoolSecurityProfile `json:"securityProfile,omitempty"`
// SpotMaxPrice: Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any
// on-demand price. For more details on spot pricing, see [spot VMs
// pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing)
SpotMaxPrice *float64 `json:"spotMaxPrice,omitempty"`
// Tags: The tags to be persisted on the agent pool virtual machine scale set.
Tags map[string]string `json:"tags" serializationType:"explicitEmptyCollection"`
// Type: The type of Agent Pool.
Type *AgentPoolType `json:"type,omitempty"`
// UpgradeSettings: Settings for upgrading the agentpool
UpgradeSettings *AgentPoolUpgradeSettings `json:"upgradeSettings,omitempty"`
VirtualMachineNodesStatus []VirtualMachineNodes `json:"virtualMachineNodesStatus"`
// VirtualMachinesProfile: Specifications on VirtualMachines agent pool.
VirtualMachinesProfile *VirtualMachinesProfile `json:"virtualMachinesProfile,omitempty"`
// VmSize: VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods
// might fail to run correctly. For more details on restricted VM sizes, see:
// https://docs.microsoft.com/azure/aks/quotas-skus-regions
VmSize *string `json:"vmSize,omitempty"`
VnetSubnetID *string `json:"vnetSubnetID,omitempty"`
// WindowsProfile: The Windows agent pool's specific profile.
WindowsProfile *AgentPoolWindowsProfile `json:"windowsProfile,omitempty"`
// WorkloadRuntime: Determines the type of workload a node can run.
WorkloadRuntime *WorkloadRuntime `json:"workloadRuntime,omitempty"`
}
Profile for the container service agent pool.
type ManagedClusterAgentPoolProfileProperties ¶
type ManagedClusterAgentPoolProfileProperties struct {
// ArtifactStreamingProfile: Configuration for using artifact streaming on AKS.
ArtifactStreamingProfile *AgentPoolArtifactStreamingProfile `json:"artifactStreamingProfile,omitempty"`
// AvailabilityZones: The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType
// property is 'VirtualMachineScaleSets'.
AvailabilityZones []string `json:"availabilityZones"`
CapacityReservationGroupID *string `json:"capacityReservationGroupID,omitempty"`
// Count: Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive)
// for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1.
Count *int `json:"count,omitempty"`
// CreationData: CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using
// a snapshot.
CreationData *CreationData `json:"creationData,omitempty"`
// EnableAutoScaling: Whether to enable auto-scaler
EnableAutoScaling *bool `json:"enableAutoScaling,omitempty"`
// EnableCustomCATrust: When set to true, AKS adds a label to the node indicating that the feature is enabled and deploys a
// daemonset along with host services to sync custom certificate authorities from user-provided list of base64 encoded
// certificates into node trust stores. Defaults to false.
EnableCustomCATrust *bool `json:"enableCustomCATrust,omitempty"`
// EnableEncryptionAtHost: This is only supported on certain VM sizes and in certain Azure regions. For more information,
// see: https://docs.microsoft.com/azure/aks/enable-host-encryption
EnableEncryptionAtHost *bool `json:"enableEncryptionAtHost,omitempty"`
// EnableFIPS: See [Add a FIPS-enabled node
// pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more
// details.
EnableFIPS *bool `json:"enableFIPS,omitempty"`
// EnableNodePublicIP: Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses.
// A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine
// to minimize hops. For more information see [assigning a public IP per
// node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The
// default is false.
EnableNodePublicIP *bool `json:"enableNodePublicIP,omitempty"`
// EnableUltraSSD: Whether to enable UltraSSD
EnableUltraSSD *bool `json:"enableUltraSSD,omitempty"`
// GatewayProfile: Profile specific to a managed agent pool in Gateway mode. This field cannot be set if agent pool mode is
// not Gateway.
GatewayProfile *AgentPoolGatewayProfile `json:"gatewayProfile,omitempty"`
// GpuInstanceProfile: GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU.
GpuInstanceProfile *GPUInstanceProfile `json:"gpuInstanceProfile,omitempty"`
// GpuProfile: The GPU settings of an agent pool.
GpuProfile *AgentPoolGPUProfile `json:"gpuProfile,omitempty"`
HostGroupID *string `json:"hostGroupID,omitempty"`
// KubeletConfig: The Kubelet configuration on the agent pool nodes.
KubeletConfig *KubeletConfig `json:"kubeletConfig,omitempty"`
// KubeletDiskType: Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral
// storage.
KubeletDiskType *KubeletDiskType `json:"kubeletDiskType,omitempty"`
// LinuxOSConfig: The OS configuration of Linux agent nodes.
LinuxOSConfig *LinuxOSConfig `json:"linuxOSConfig,omitempty"`
// MaxCount: The maximum number of nodes for auto-scaling
MaxCount *int `json:"maxCount,omitempty"`
// MaxPods: The maximum number of pods that can run on a node.
MaxPods *int `json:"maxPods,omitempty"`
// MessageOfTheDay: A base64-encoded string which will be written to /etc/motd after decoding. This allows customization of
// the message of the day for Linux nodes. It must not be specified for Windows nodes. It must be a static string (i.e.,
// will be printed raw and not be executed as a script).
MessageOfTheDay *string `json:"messageOfTheDay,omitempty"`
// MinCount: The minimum number of nodes for auto-scaling
MinCount *int `json:"minCount,omitempty"`
// Mode: A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool
// restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools
Mode *AgentPoolMode `json:"mode,omitempty"`
// NetworkProfile: Network-related settings of an agent pool.
NetworkProfile *AgentPoolNetworkProfile `json:"networkProfile,omitempty"`
// NodeInitializationTaints: These taints will not be reconciled by AKS and can be removed with a kubectl call. This field
// can be modified after node pool is created, but nodes will not be recreated with new taints until another operation that
// requires recreation (e.g. node image upgrade) happens. These taints allow for required configuration to run before the
// node is ready to accept workloads, for example 'key1=value1:NoSchedule' that then can be removed with `kubectl taint
// nodes node1 key1=value1:NoSchedule-`
NodeInitializationTaints []string `json:"nodeInitializationTaints"`
// NodeLabels: The node labels to be persisted across all nodes in agent pool.
NodeLabels map[string]string `json:"nodeLabels" serializationType:"explicitEmptyCollection"`
NodePublicIPPrefixID *string `json:"nodePublicIPPrefixID,omitempty"`
// NodeTaints: The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule.
NodeTaints []string `json:"nodeTaints" serializationType:"explicitEmptyCollection"`
// OrchestratorVersion: Both patch version <major.minor.patch> and <major.minor> are supported. When <major.minor> is
// specified, the latest supported patch version is chosen automatically. Updating the agent pool with the same
// <major.minor> once it has been created will not trigger an upgrade, even if a newer patch version is available. As a
// best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version
// must have the same major version as the control plane. The node pool minor version must be within two minor versions of
// the control plane version. The node pool version cannot be greater than the control plane version. For more information
// see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool).
OrchestratorVersion *string `json:"orchestratorVersion,omitempty"`
OsDiskSizeGB *int `json:"osDiskSizeGB,omitempty"`
// OsDiskType: The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested
// OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral
// OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os).
OsDiskType *OSDiskType `json:"osDiskType,omitempty"`
// OsSKU: Specifies the OS SKU used by the agent pool. If not specified, the default is Ubuntu if OSType=Linux or
// Windows2019 if OSType=Windows. And the default Windows OSSKU will be changed to Windows2022 after Windows2019 is
// deprecated.
OsSKU *OSSKU `json:"osSKU,omitempty"`
// OsType: The operating system type. The default is Linux.
OsType *OSType `json:"osType,omitempty"`
// PodIPAllocationMode: The IP allocation mode for pods in the agent pool. Must be used with podSubnetId. The default is
// 'DynamicIndividual'.
PodIPAllocationMode *PodIPAllocationMode `json:"podIPAllocationMode,omitempty"`
PodSubnetID *string `json:"podSubnetID,omitempty"`
// PowerState: When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this
// field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only
// be stopped if it is Running and provisioning state is Succeeded
PowerState *PowerState `json:"powerState,omitempty"`
ProximityPlacementGroupID *string `json:"proximityPlacementGroupID,omitempty"`
// ScaleDownMode: This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete.
ScaleDownMode *ScaleDownMode `json:"scaleDownMode,omitempty"`
// ScaleSetEvictionPolicy: This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is
// 'Delete'.
ScaleSetEvictionPolicy *ScaleSetEvictionPolicy `json:"scaleSetEvictionPolicy,omitempty"`
// ScaleSetPriority: The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'.
ScaleSetPriority *ScaleSetPriority `json:"scaleSetPriority,omitempty"`
// SecurityProfile: The security settings of an agent pool.
SecurityProfile *AgentPoolSecurityProfile `json:"securityProfile,omitempty"`
// SpotMaxPrice: Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any
// on-demand price. For more details on spot pricing, see [spot VMs
// pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing)
SpotMaxPrice *float64 `json:"spotMaxPrice,omitempty"`
// Tags: The tags to be persisted on the agent pool virtual machine scale set.
Tags map[string]string `json:"tags" serializationType:"explicitEmptyCollection"`
// Type: The type of Agent Pool.
Type *AgentPoolType `json:"type,omitempty"`
// UpgradeSettings: Settings for upgrading the agentpool
UpgradeSettings *AgentPoolUpgradeSettings `json:"upgradeSettings,omitempty"`
VirtualMachineNodesStatus []VirtualMachineNodes `json:"virtualMachineNodesStatus"`
// VirtualMachinesProfile: Specifications on VirtualMachines agent pool.
VirtualMachinesProfile *VirtualMachinesProfile `json:"virtualMachinesProfile,omitempty"`
// VmSize: VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods
// might fail to run correctly. For more details on restricted VM sizes, see:
// https://docs.microsoft.com/azure/aks/quotas-skus-regions
VmSize *string `json:"vmSize,omitempty"`
VnetSubnetID *string `json:"vnetSubnetID,omitempty"`
// WindowsProfile: The Windows agent pool's specific profile.
WindowsProfile *AgentPoolWindowsProfile `json:"windowsProfile,omitempty"`
// WorkloadRuntime: Determines the type of workload a node can run.
WorkloadRuntime *WorkloadRuntime `json:"workloadRuntime,omitempty"`
}
Properties for the container service agent pool profile.
type ManagedClusterAgentPoolProfileProperties_STATUS ¶
type ManagedClusterAgentPoolProfileProperties_STATUS struct {
// ArtifactStreamingProfile: Configuration for using artifact streaming on AKS.
ArtifactStreamingProfile *AgentPoolArtifactStreamingProfile_STATUS `json:"artifactStreamingProfile,omitempty"`
// AvailabilityZones: The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType
// property is 'VirtualMachineScaleSets'.
AvailabilityZones []string `json:"availabilityZones"`
// CapacityReservationGroupID: AKS will associate the specified agent pool with the Capacity Reservation Group.
CapacityReservationGroupID *string `json:"capacityReservationGroupID,omitempty"`
// Count: Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive)
// for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1.
Count *int `json:"count,omitempty"`
// CreationData: CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using
// a snapshot.
CreationData *CreationData_STATUS `json:"creationData,omitempty"`
// CurrentOrchestratorVersion: If orchestratorVersion was a fully specified version <major.minor.patch>, this field will be
// exactly equal to it. If orchestratorVersion was <major.minor>, this field will contain the full <major.minor.patch>
// version being used.
CurrentOrchestratorVersion *string `json:"currentOrchestratorVersion,omitempty"`
// ETag: Unique read-only string used to implement optimistic concurrency. The eTag value will change when the resource is
// updated. Specify an if-match or if-none-match header with the eTag value for a subsequent request to enable optimistic
// concurrency per the normal etag convention.
ETag *string `json:"eTag,omitempty"`
// EnableAutoScaling: Whether to enable auto-scaler
EnableAutoScaling *bool `json:"enableAutoScaling,omitempty"`
// EnableCustomCATrust: When set to true, AKS adds a label to the node indicating that the feature is enabled and deploys a
// daemonset along with host services to sync custom certificate authorities from user-provided list of base64 encoded
// certificates into node trust stores. Defaults to false.
EnableCustomCATrust *bool `json:"enableCustomCATrust,omitempty"`
// EnableEncryptionAtHost: This is only supported on certain VM sizes and in certain Azure regions. For more information,
// see: https://docs.microsoft.com/azure/aks/enable-host-encryption
EnableEncryptionAtHost *bool `json:"enableEncryptionAtHost,omitempty"`
// EnableFIPS: See [Add a FIPS-enabled node
// pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more
// details.
EnableFIPS *bool `json:"enableFIPS,omitempty"`
// EnableNodePublicIP: Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses.
// A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine
// to minimize hops. For more information see [assigning a public IP per
// node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The
// default is false.
EnableNodePublicIP *bool `json:"enableNodePublicIP,omitempty"`
// EnableUltraSSD: Whether to enable UltraSSD
EnableUltraSSD *bool `json:"enableUltraSSD,omitempty"`
// GatewayProfile: Profile specific to a managed agent pool in Gateway mode. This field cannot be set if agent pool mode is
// not Gateway.
GatewayProfile *AgentPoolGatewayProfile_STATUS `json:"gatewayProfile,omitempty"`
// GpuInstanceProfile: GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU.
GpuInstanceProfile *GPUInstanceProfile_STATUS `json:"gpuInstanceProfile,omitempty"`
// GpuProfile: The GPU settings of an agent pool.
GpuProfile *AgentPoolGPUProfile_STATUS `json:"gpuProfile,omitempty"`
// HostGroupID: This is of the form:
// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}.
// For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts).
HostGroupID *string `json:"hostGroupID,omitempty"`
// KubeletConfig: The Kubelet configuration on the agent pool nodes.
KubeletConfig *KubeletConfig_STATUS `json:"kubeletConfig,omitempty"`
// KubeletDiskType: Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral
// storage.
KubeletDiskType *KubeletDiskType_STATUS `json:"kubeletDiskType,omitempty"`
// LinuxOSConfig: The OS configuration of Linux agent nodes.
LinuxOSConfig *LinuxOSConfig_STATUS `json:"linuxOSConfig,omitempty"`
// MaxCount: The maximum number of nodes for auto-scaling
MaxCount *int `json:"maxCount,omitempty"`
// MaxPods: The maximum number of pods that can run on a node.
MaxPods *int `json:"maxPods,omitempty"`
// MessageOfTheDay: A base64-encoded string which will be written to /etc/motd after decoding. This allows customization of
// the message of the day for Linux nodes. It must not be specified for Windows nodes. It must be a static string (i.e.,
// will be printed raw and not be executed as a script).
MessageOfTheDay *string `json:"messageOfTheDay,omitempty"`
// MinCount: The minimum number of nodes for auto-scaling
MinCount *int `json:"minCount,omitempty"`
// Mode: A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool
// restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools
Mode *AgentPoolMode_STATUS `json:"mode,omitempty"`
// NetworkProfile: Network-related settings of an agent pool.
NetworkProfile *AgentPoolNetworkProfile_STATUS `json:"networkProfile,omitempty"`
// NodeImageVersion: The version of node image
NodeImageVersion *string `json:"nodeImageVersion,omitempty"`
// NodeInitializationTaints: These taints will not be reconciled by AKS and can be removed with a kubectl call. This field
// can be modified after node pool is created, but nodes will not be recreated with new taints until another operation that
// requires recreation (e.g. node image upgrade) happens. These taints allow for required configuration to run before the
// node is ready to accept workloads, for example 'key1=value1:NoSchedule' that then can be removed with `kubectl taint
// nodes node1 key1=value1:NoSchedule-`
NodeInitializationTaints []string `json:"nodeInitializationTaints"`
// NodeLabels: The node labels to be persisted across all nodes in agent pool.
NodeLabels map[string]string `json:"nodeLabels"`
// NodePublicIPPrefixID: This is of the form:
// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}
NodePublicIPPrefixID *string `json:"nodePublicIPPrefixID,omitempty"`
// NodeTaints: The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule.
NodeTaints []string `json:"nodeTaints"`
// OrchestratorVersion: Both patch version <major.minor.patch> and <major.minor> are supported. When <major.minor> is
// specified, the latest supported patch version is chosen automatically. Updating the agent pool with the same
// <major.minor> once it has been created will not trigger an upgrade, even if a newer patch version is available. As a
// best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version
// must have the same major version as the control plane. The node pool minor version must be within two minor versions of
// the control plane version. The node pool version cannot be greater than the control plane version. For more information
// see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool).
OrchestratorVersion *string `json:"orchestratorVersion,omitempty"`
OsDiskSizeGB *int `json:"osDiskSizeGB,omitempty"`
// OsDiskType: The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested
// OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral
// OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os).
OsDiskType *OSDiskType_STATUS `json:"osDiskType,omitempty"`
// OsSKU: Specifies the OS SKU used by the agent pool. If not specified, the default is Ubuntu if OSType=Linux or
// Windows2019 if OSType=Windows. And the default Windows OSSKU will be changed to Windows2022 after Windows2019 is
// deprecated.
OsSKU *OSSKU_STATUS `json:"osSKU,omitempty"`
// OsType: The operating system type. The default is Linux.
OsType *OSType_STATUS `json:"osType,omitempty"`
// PodIPAllocationMode: The IP allocation mode for pods in the agent pool. Must be used with podSubnetId. The default is
// 'DynamicIndividual'.
PodIPAllocationMode *PodIPAllocationMode_STATUS `json:"podIPAllocationMode,omitempty"`
// PodSubnetID: If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is
// of the form:
// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}
PodSubnetID *string `json:"podSubnetID,omitempty"`
// PowerState: When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this
// field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only
// be stopped if it is Running and provisioning state is Succeeded
PowerState *PowerState_STATUS `json:"powerState,omitempty"`
// ProvisioningState: The current deployment or provisioning state.
ProvisioningState *string `json:"provisioningState,omitempty"`
// ProximityPlacementGroupID: The ID for Proximity Placement Group.
ProximityPlacementGroupID *string `json:"proximityPlacementGroupID,omitempty"`
// ScaleDownMode: This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete.
ScaleDownMode *ScaleDownMode_STATUS `json:"scaleDownMode,omitempty"`
// ScaleSetEvictionPolicy: This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is
// 'Delete'.
ScaleSetEvictionPolicy *ScaleSetEvictionPolicy_STATUS `json:"scaleSetEvictionPolicy,omitempty"`
// ScaleSetPriority: The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'.
ScaleSetPriority *ScaleSetPriority_STATUS `json:"scaleSetPriority,omitempty"`
// SecurityProfile: The security settings of an agent pool.
SecurityProfile *AgentPoolSecurityProfile_STATUS `json:"securityProfile,omitempty"`
// SpotMaxPrice: Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any
// on-demand price. For more details on spot pricing, see [spot VMs
// pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing)
SpotMaxPrice *float64 `json:"spotMaxPrice,omitempty"`
// Tags: The tags to be persisted on the agent pool virtual machine scale set.
Tags map[string]string `json:"tags"`
// Type: The type of Agent Pool.
Type *AgentPoolType_STATUS `json:"type,omitempty"`
// UpgradeSettings: Settings for upgrading the agentpool
UpgradeSettings *AgentPoolUpgradeSettings_STATUS `json:"upgradeSettings,omitempty"`
VirtualMachineNodesStatus []VirtualMachineNodes_STATUS `json:"virtualMachineNodesStatus"`
// VirtualMachinesProfile: Specifications on VirtualMachines agent pool.
VirtualMachinesProfile *VirtualMachinesProfile_STATUS `json:"virtualMachinesProfile,omitempty"`
// VmSize: VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods
// might fail to run correctly. For more details on restricted VM sizes, see:
// https://docs.microsoft.com/azure/aks/quotas-skus-regions
VmSize *string `json:"vmSize,omitempty"`
// VnetSubnetID: If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified,
// this applies to nodes and pods, otherwise it applies to just nodes. This is of the form:
// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}
VnetSubnetID *string `json:"vnetSubnetID,omitempty"`
// WindowsProfile: The Windows agent pool's specific profile.
WindowsProfile *AgentPoolWindowsProfile_STATUS `json:"windowsProfile,omitempty"`
// WorkloadRuntime: Determines the type of workload a node can run.
WorkloadRuntime *WorkloadRuntime_STATUS `json:"workloadRuntime,omitempty"`
}
Properties for the container service agent pool profile.
type ManagedClusterAgentPoolProfile_STATUS ¶
type ManagedClusterAgentPoolProfile_STATUS struct {
// ArtifactStreamingProfile: Configuration for using artifact streaming on AKS.
ArtifactStreamingProfile *AgentPoolArtifactStreamingProfile_STATUS `json:"artifactStreamingProfile,omitempty"`
// AvailabilityZones: The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType
// property is 'VirtualMachineScaleSets'.
AvailabilityZones []string `json:"availabilityZones"`
// CapacityReservationGroupID: AKS will associate the specified agent pool with the Capacity Reservation Group.
CapacityReservationGroupID *string `json:"capacityReservationGroupID,omitempty"`
// Count: Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive)
// for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1.
Count *int `json:"count,omitempty"`
// CreationData: CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using
// a snapshot.
CreationData *CreationData_STATUS `json:"creationData,omitempty"`
// CurrentOrchestratorVersion: If orchestratorVersion was a fully specified version <major.minor.patch>, this field will be
// exactly equal to it. If orchestratorVersion was <major.minor>, this field will contain the full <major.minor.patch>
// version being used.
CurrentOrchestratorVersion *string `json:"currentOrchestratorVersion,omitempty"`
// ETag: Unique read-only string used to implement optimistic concurrency. The eTag value will change when the resource is
// updated. Specify an if-match or if-none-match header with the eTag value for a subsequent request to enable optimistic
// concurrency per the normal etag convention.
ETag *string `json:"eTag,omitempty"`
// EnableAutoScaling: Whether to enable auto-scaler
EnableAutoScaling *bool `json:"enableAutoScaling,omitempty"`
// EnableCustomCATrust: When set to true, AKS adds a label to the node indicating that the feature is enabled and deploys a
// daemonset along with host services to sync custom certificate authorities from user-provided list of base64 encoded
// certificates into node trust stores. Defaults to false.
EnableCustomCATrust *bool `json:"enableCustomCATrust,omitempty"`
// EnableEncryptionAtHost: This is only supported on certain VM sizes and in certain Azure regions. For more information,
// see: https://docs.microsoft.com/azure/aks/enable-host-encryption
EnableEncryptionAtHost *bool `json:"enableEncryptionAtHost,omitempty"`
// EnableFIPS: See [Add a FIPS-enabled node
// pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more
// details.
EnableFIPS *bool `json:"enableFIPS,omitempty"`
// EnableNodePublicIP: Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses.
// A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine
// to minimize hops. For more information see [assigning a public IP per
// node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The
// default is false.
EnableNodePublicIP *bool `json:"enableNodePublicIP,omitempty"`
// EnableUltraSSD: Whether to enable UltraSSD
EnableUltraSSD *bool `json:"enableUltraSSD,omitempty"`
// GatewayProfile: Profile specific to a managed agent pool in Gateway mode. This field cannot be set if agent pool mode is
// not Gateway.
GatewayProfile *AgentPoolGatewayProfile_STATUS `json:"gatewayProfile,omitempty"`
// GpuInstanceProfile: GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU.
GpuInstanceProfile *GPUInstanceProfile_STATUS `json:"gpuInstanceProfile,omitempty"`
// GpuProfile: The GPU settings of an agent pool.
GpuProfile *AgentPoolGPUProfile_STATUS `json:"gpuProfile,omitempty"`
// HostGroupID: This is of the form:
// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}.
// For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts).
HostGroupID *string `json:"hostGroupID,omitempty"`
// KubeletConfig: The Kubelet configuration on the agent pool nodes.
KubeletConfig *KubeletConfig_STATUS `json:"kubeletConfig,omitempty"`
// KubeletDiskType: Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral
// storage.
KubeletDiskType *KubeletDiskType_STATUS `json:"kubeletDiskType,omitempty"`
// LinuxOSConfig: The OS configuration of Linux agent nodes.
LinuxOSConfig *LinuxOSConfig_STATUS `json:"linuxOSConfig,omitempty"`
// MaxCount: The maximum number of nodes for auto-scaling
MaxCount *int `json:"maxCount,omitempty"`
// MaxPods: The maximum number of pods that can run on a node.
MaxPods *int `json:"maxPods,omitempty"`
// MessageOfTheDay: A base64-encoded string which will be written to /etc/motd after decoding. This allows customization of
// the message of the day for Linux nodes. It must not be specified for Windows nodes. It must be a static string (i.e.,
// will be printed raw and not be executed as a script).
MessageOfTheDay *string `json:"messageOfTheDay,omitempty"`
// MinCount: The minimum number of nodes for auto-scaling
MinCount *int `json:"minCount,omitempty"`
// Mode: A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool
// restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools
Mode *AgentPoolMode_STATUS `json:"mode,omitempty"`
// Name: Windows agent pool names must be 6 characters or less.
Name *string `json:"name,omitempty"`
// NetworkProfile: Network-related settings of an agent pool.
NetworkProfile *AgentPoolNetworkProfile_STATUS `json:"networkProfile,omitempty"`
// NodeImageVersion: The version of node image
NodeImageVersion *string `json:"nodeImageVersion,omitempty"`
// NodeInitializationTaints: These taints will not be reconciled by AKS and can be removed with a kubectl call. This field
// can be modified after node pool is created, but nodes will not be recreated with new taints until another operation that
// requires recreation (e.g. node image upgrade) happens. These taints allow for required configuration to run before the
// node is ready to accept workloads, for example 'key1=value1:NoSchedule' that then can be removed with `kubectl taint
// nodes node1 key1=value1:NoSchedule-`
NodeInitializationTaints []string `json:"nodeInitializationTaints"`
// NodeLabels: The node labels to be persisted across all nodes in agent pool.
NodeLabels map[string]string `json:"nodeLabels"`
// NodePublicIPPrefixID: This is of the form:
// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}
NodePublicIPPrefixID *string `json:"nodePublicIPPrefixID,omitempty"`
// NodeTaints: The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule.
NodeTaints []string `json:"nodeTaints"`
// OrchestratorVersion: Both patch version <major.minor.patch> and <major.minor> are supported. When <major.minor> is
// specified, the latest supported patch version is chosen automatically. Updating the agent pool with the same
// <major.minor> once it has been created will not trigger an upgrade, even if a newer patch version is available. As a
// best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version
// must have the same major version as the control plane. The node pool minor version must be within two minor versions of
// the control plane version. The node pool version cannot be greater than the control plane version. For more information
// see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool).
OrchestratorVersion *string `json:"orchestratorVersion,omitempty"`
OsDiskSizeGB *int `json:"osDiskSizeGB,omitempty"`
// OsDiskType: The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested
// OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral
// OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os).
OsDiskType *OSDiskType_STATUS `json:"osDiskType,omitempty"`
// OsSKU: Specifies the OS SKU used by the agent pool. If not specified, the default is Ubuntu if OSType=Linux or
// Windows2019 if OSType=Windows. And the default Windows OSSKU will be changed to Windows2022 after Windows2019 is
// deprecated.
OsSKU *OSSKU_STATUS `json:"osSKU,omitempty"`
// OsType: The operating system type. The default is Linux.
OsType *OSType_STATUS `json:"osType,omitempty"`
// PodIPAllocationMode: The IP allocation mode for pods in the agent pool. Must be used with podSubnetId. The default is
// 'DynamicIndividual'.
PodIPAllocationMode *PodIPAllocationMode_STATUS `json:"podIPAllocationMode,omitempty"`
// PodSubnetID: If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is
// of the form:
// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}
PodSubnetID *string `json:"podSubnetID,omitempty"`
// PowerState: When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this
// field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only
// be stopped if it is Running and provisioning state is Succeeded
PowerState *PowerState_STATUS `json:"powerState,omitempty"`
// ProvisioningState: The current deployment or provisioning state.
ProvisioningState *string `json:"provisioningState,omitempty"`
// ProximityPlacementGroupID: The ID for Proximity Placement Group.
ProximityPlacementGroupID *string `json:"proximityPlacementGroupID,omitempty"`
// ScaleDownMode: This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete.
ScaleDownMode *ScaleDownMode_STATUS `json:"scaleDownMode,omitempty"`
// ScaleSetEvictionPolicy: This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is
// 'Delete'.
ScaleSetEvictionPolicy *ScaleSetEvictionPolicy_STATUS `json:"scaleSetEvictionPolicy,omitempty"`
// ScaleSetPriority: The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'.
ScaleSetPriority *ScaleSetPriority_STATUS `json:"scaleSetPriority,omitempty"`
// SecurityProfile: The security settings of an agent pool.
SecurityProfile *AgentPoolSecurityProfile_STATUS `json:"securityProfile,omitempty"`
// SpotMaxPrice: Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any
// on-demand price. For more details on spot pricing, see [spot VMs
// pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing)
SpotMaxPrice *float64 `json:"spotMaxPrice,omitempty"`
// Tags: The tags to be persisted on the agent pool virtual machine scale set.
Tags map[string]string `json:"tags"`
// Type: The type of Agent Pool.
Type *AgentPoolType_STATUS `json:"type,omitempty"`
// UpgradeSettings: Settings for upgrading the agentpool
UpgradeSettings *AgentPoolUpgradeSettings_STATUS `json:"upgradeSettings,omitempty"`
VirtualMachineNodesStatus []VirtualMachineNodes_STATUS `json:"virtualMachineNodesStatus"`
// VirtualMachinesProfile: Specifications on VirtualMachines agent pool.
VirtualMachinesProfile *VirtualMachinesProfile_STATUS `json:"virtualMachinesProfile,omitempty"`
// VmSize: VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods
// might fail to run correctly. For more details on restricted VM sizes, see:
// https://docs.microsoft.com/azure/aks/quotas-skus-regions
VmSize *string `json:"vmSize,omitempty"`
// VnetSubnetID: If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified,
// this applies to nodes and pods, otherwise it applies to just nodes. This is of the form:
// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}
VnetSubnetID *string `json:"vnetSubnetID,omitempty"`
// WindowsProfile: The Windows agent pool's specific profile.
WindowsProfile *AgentPoolWindowsProfile_STATUS `json:"windowsProfile,omitempty"`
// WorkloadRuntime: Determines the type of workload a node can run.
WorkloadRuntime *WorkloadRuntime_STATUS `json:"workloadRuntime,omitempty"`
}
Profile for the container service agent pool.
type ManagedClusterAutoUpgradeProfile ¶
type ManagedClusterAutoUpgradeProfile struct {
// NodeOSUpgradeChannel: The default is Unmanaged, but may change to either NodeImage or SecurityPatch at GA.
NodeOSUpgradeChannel *ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel `json:"nodeOSUpgradeChannel,omitempty"`
// UpgradeChannel: For more information see [setting the AKS cluster auto-upgrade
// channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel).
UpgradeChannel *ManagedClusterAutoUpgradeProfile_UpgradeChannel `json:"upgradeChannel,omitempty"`
}
Auto upgrade profile for a managed cluster.
type ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel ¶
type ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel string
+kubebuilder:validation:Enum={"NodeImage","None","SecurityPatch","Unmanaged"}
type ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_STATUS ¶
type ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_STATUS string
type ManagedClusterAutoUpgradeProfile_STATUS ¶
type ManagedClusterAutoUpgradeProfile_STATUS struct {
// NodeOSUpgradeChannel: The default is Unmanaged, but may change to either NodeImage or SecurityPatch at GA.
NodeOSUpgradeChannel *ManagedClusterAutoUpgradeProfile_NodeOSUpgradeChannel_STATUS `json:"nodeOSUpgradeChannel,omitempty"`
// UpgradeChannel: For more information see [setting the AKS cluster auto-upgrade
// channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel).
UpgradeChannel *ManagedClusterAutoUpgradeProfile_UpgradeChannel_STATUS `json:"upgradeChannel,omitempty"`
}
Auto upgrade profile for a managed cluster.
type ManagedClusterAutoUpgradeProfile_UpgradeChannel ¶
type ManagedClusterAutoUpgradeProfile_UpgradeChannel string
+kubebuilder:validation:Enum={"node-image","none","patch","rapid","stable"}
type ManagedClusterAutoUpgradeProfile_UpgradeChannel_STATUS ¶
type ManagedClusterAutoUpgradeProfile_UpgradeChannel_STATUS string
type ManagedClusterAzureMonitorProfile ¶
type ManagedClusterAzureMonitorProfile struct {
// AppMonitoring: Application Monitoring Profile for Kubernetes Application Container. Collects application logs, metrics
// and traces through auto-instrumentation of the application using Azure Monitor OpenTelemetry based SDKs. See
// aka.ms/AzureMonitorApplicationMonitoring for an overview.
AppMonitoring *ManagedClusterAzureMonitorProfileAppMonitoring `json:"appMonitoring,omitempty"`
// ContainerInsights: Azure Monitor Container Insights Profile for Kubernetes Events, Inventory and Container stdout &
// stderr logs etc. See aka.ms/AzureMonitorContainerInsights for an overview.
ContainerInsights *ManagedClusterAzureMonitorProfileContainerInsights `json:"containerInsights,omitempty"`
// Metrics: Metrics profile for the prometheus service addon
Metrics *ManagedClusterAzureMonitorProfileMetrics `json:"metrics,omitempty"`
}
Prometheus addon profile for the container service cluster
type ManagedClusterAzureMonitorProfileAppMonitoring ¶
type ManagedClusterAzureMonitorProfileAppMonitoring struct {
// AutoInstrumentation: Application Monitoring Auto Instrumentation for Kubernetes Application Container. Deploys web hook
// to auto-instrument Azure Monitor OpenTelemetry based SDKs to collect OpenTelemetry metrics, logs and traces of the
// application. See aka.ms/AzureMonitorApplicationMonitoring for an overview.
AutoInstrumentation *ManagedClusterAzureMonitorProfileAppMonitoringAutoInstrumentation `json:"autoInstrumentation,omitempty"`
// OpenTelemetryLogs: Application Monitoring Open Telemetry Metrics Profile for Kubernetes Application Container Logs and
// Traces. Collects OpenTelemetry logs and traces of the application using Azure Monitor OpenTelemetry based SDKs. See
// aka.ms/AzureMonitorApplicationMonitoring for an overview.
OpenTelemetryLogs *ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryLogs `json:"openTelemetryLogs,omitempty"`
// OpenTelemetryMetrics: Application Monitoring Open Telemetry Metrics Profile for Kubernetes Application Container
// Metrics. Collects OpenTelemetry metrics of the application using Azure Monitor OpenTelemetry based SDKs. See
// aka.ms/AzureMonitorApplicationMonitoring for an overview.
OpenTelemetryMetrics *ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryMetrics `json:"openTelemetryMetrics,omitempty"`
}
Application Monitoring Profile for Kubernetes Application Container. Collects application logs, metrics and traces through auto-instrumentation of the application using Azure Monitor OpenTelemetry based SDKs. See aka.ms/AzureMonitorApplicationMonitoring for an overview.
type ManagedClusterAzureMonitorProfileAppMonitoringAutoInstrumentation ¶
type ManagedClusterAzureMonitorProfileAppMonitoringAutoInstrumentation struct {
// Enabled: Indicates if Application Monitoring Auto Instrumentation is enabled or not.
Enabled *bool `json:"enabled,omitempty"`
}
Application Monitoring Auto Instrumentation for Kubernetes Application Container. Deploys web hook to auto-instrument Azure Monitor OpenTelemetry based SDKs to collect OpenTelemetry metrics, logs and traces of the application. See aka.ms/AzureMonitorApplicationMonitoring for an overview.
type ManagedClusterAzureMonitorProfileAppMonitoringAutoInstrumentation_STATUS ¶
type ManagedClusterAzureMonitorProfileAppMonitoringAutoInstrumentation_STATUS struct {
// Enabled: Indicates if Application Monitoring Auto Instrumentation is enabled or not.
Enabled *bool `json:"enabled,omitempty"`
}
Application Monitoring Auto Instrumentation for Kubernetes Application Container. Deploys web hook to auto-instrument Azure Monitor OpenTelemetry based SDKs to collect OpenTelemetry metrics, logs and traces of the application. See aka.ms/AzureMonitorApplicationMonitoring for an overview.
type ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryLogs ¶
type ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryLogs struct {
// Enabled: Indicates if Application Monitoring Open Telemetry Logs and traces is enabled or not.
Enabled *bool `json:"enabled,omitempty"`
// Port: The Open Telemetry host port for Open Telemetry logs and traces. If not specified, the default port is 28331.
Port *int `json:"port,omitempty"`
}
Application Monitoring Open Telemetry Metrics Profile for Kubernetes Application Container Logs and Traces. Collects OpenTelemetry logs and traces of the application using Azure Monitor OpenTelemetry based SDKs. See aka.ms/AzureMonitorApplicationMonitoring for an overview.
type ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryLogs_STATUS ¶
type ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryLogs_STATUS struct {
// Enabled: Indicates if Application Monitoring Open Telemetry Logs and traces is enabled or not.
Enabled *bool `json:"enabled,omitempty"`
// Port: The Open Telemetry host port for Open Telemetry logs and traces. If not specified, the default port is 28331.
Port *int `json:"port,omitempty"`
}
Application Monitoring Open Telemetry Metrics Profile for Kubernetes Application Container Logs and Traces. Collects OpenTelemetry logs and traces of the application using Azure Monitor OpenTelemetry based SDKs. See aka.ms/AzureMonitorApplicationMonitoring for an overview.
type ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryMetrics ¶
type ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryMetrics struct {
// Enabled: Indicates if Application Monitoring Open Telemetry Metrics is enabled or not.
Enabled *bool `json:"enabled,omitempty"`
// Port: The Open Telemetry host port for Open Telemetry metrics. If not specified, the default port is 28333.
Port *int `json:"port,omitempty"`
}
Application Monitoring Open Telemetry Metrics Profile for Kubernetes Application Container Metrics. Collects OpenTelemetry metrics of the application using Azure Monitor OpenTelemetry based SDKs. See aka.ms/AzureMonitorApplicationMonitoring for an overview.
type ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryMetrics_STATUS ¶
type ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryMetrics_STATUS struct {
// Enabled: Indicates if Application Monitoring Open Telemetry Metrics is enabled or not.
Enabled *bool `json:"enabled,omitempty"`
// Port: The Open Telemetry host port for Open Telemetry metrics. If not specified, the default port is 28333.
Port *int `json:"port,omitempty"`
}
Application Monitoring Open Telemetry Metrics Profile for Kubernetes Application Container Metrics. Collects OpenTelemetry metrics of the application using Azure Monitor OpenTelemetry based SDKs. See aka.ms/AzureMonitorApplicationMonitoring for an overview.
type ManagedClusterAzureMonitorProfileAppMonitoring_STATUS ¶
type ManagedClusterAzureMonitorProfileAppMonitoring_STATUS struct {
// AutoInstrumentation: Application Monitoring Auto Instrumentation for Kubernetes Application Container. Deploys web hook
// to auto-instrument Azure Monitor OpenTelemetry based SDKs to collect OpenTelemetry metrics, logs and traces of the
// application. See aka.ms/AzureMonitorApplicationMonitoring for an overview.
AutoInstrumentation *ManagedClusterAzureMonitorProfileAppMonitoringAutoInstrumentation_STATUS `json:"autoInstrumentation,omitempty"`
// OpenTelemetryLogs: Application Monitoring Open Telemetry Metrics Profile for Kubernetes Application Container Logs and
// Traces. Collects OpenTelemetry logs and traces of the application using Azure Monitor OpenTelemetry based SDKs. See
// aka.ms/AzureMonitorApplicationMonitoring for an overview.
OpenTelemetryLogs *ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryLogs_STATUS `json:"openTelemetryLogs,omitempty"`
// OpenTelemetryMetrics: Application Monitoring Open Telemetry Metrics Profile for Kubernetes Application Container
// Metrics. Collects OpenTelemetry metrics of the application using Azure Monitor OpenTelemetry based SDKs. See
// aka.ms/AzureMonitorApplicationMonitoring for an overview.
OpenTelemetryMetrics *ManagedClusterAzureMonitorProfileAppMonitoringOpenTelemetryMetrics_STATUS `json:"openTelemetryMetrics,omitempty"`
}
Application Monitoring Profile for Kubernetes Application Container. Collects application logs, metrics and traces through auto-instrumentation of the application using Azure Monitor OpenTelemetry based SDKs. See aka.ms/AzureMonitorApplicationMonitoring for an overview.
type ManagedClusterAzureMonitorProfileContainerInsights ¶
type ManagedClusterAzureMonitorProfileContainerInsights struct {
// DisableCustomMetrics: Indicates whether custom metrics collection has to be disabled or not. If not specified the
// default is false. No custom metrics will be emitted if this field is false but the container insights enabled field is
// false
DisableCustomMetrics *bool `json:"disableCustomMetrics,omitempty"`
// DisablePrometheusMetricsScraping: Indicates whether prometheus metrics scraping is disabled or not. If not specified the
// default is false. No prometheus metrics will be emitted if this field is false but the container insights enabled field
// is false
DisablePrometheusMetricsScraping *bool `json:"disablePrometheusMetricsScraping,omitempty"`
// Enabled: Indicates if Azure Monitor Container Insights Logs Addon is enabled or not.
Enabled *bool `json:"enabled,omitempty"`
LogAnalyticsWorkspaceResourceId *string `json:"logAnalyticsWorkspaceResourceId,omitempty"`
// SyslogPort: The syslog host port. If not specified, the default port is 28330.
SyslogPort *int `json:"syslogPort,omitempty"`
}
Azure Monitor Container Insights Profile for Kubernetes Events, Inventory and Container stdout & stderr logs etc. See aka.ms/AzureMonitorContainerInsights for an overview.
type ManagedClusterAzureMonitorProfileContainerInsights_STATUS ¶
type ManagedClusterAzureMonitorProfileContainerInsights_STATUS struct {
// DisableCustomMetrics: Indicates whether custom metrics collection has to be disabled or not. If not specified the
// default is false. No custom metrics will be emitted if this field is false but the container insights enabled field is
// false
DisableCustomMetrics *bool `json:"disableCustomMetrics,omitempty"`
// DisablePrometheusMetricsScraping: Indicates whether prometheus metrics scraping is disabled or not. If not specified the
// default is false. No prometheus metrics will be emitted if this field is false but the container insights enabled field
// is false
DisablePrometheusMetricsScraping *bool `json:"disablePrometheusMetricsScraping,omitempty"`
// Enabled: Indicates if Azure Monitor Container Insights Logs Addon is enabled or not.
Enabled *bool `json:"enabled,omitempty"`
// LogAnalyticsWorkspaceResourceId: Fully Qualified ARM Resource Id of Azure Log Analytics Workspace for storing Azure
// Monitor Container Insights Logs.
LogAnalyticsWorkspaceResourceId *string `json:"logAnalyticsWorkspaceResourceId,omitempty"`
// SyslogPort: The syslog host port. If not specified, the default port is 28330.
SyslogPort *int `json:"syslogPort,omitempty"`
}
Azure Monitor Container Insights Profile for Kubernetes Events, Inventory and Container stdout & stderr logs etc. See aka.ms/AzureMonitorContainerInsights for an overview.
type ManagedClusterAzureMonitorProfileKubeStateMetrics ¶
type ManagedClusterAzureMonitorProfileKubeStateMetrics struct {
// MetricAnnotationsAllowList: Comma-separated list of additional Kubernetes label keys that will be used in the resource's
// labels metric.
MetricAnnotationsAllowList *string `json:"metricAnnotationsAllowList,omitempty"`
// MetricLabelsAllowlist: Comma-separated list of Kubernetes annotations keys that will be used in the resource's labels
// metric.
MetricLabelsAllowlist *string `json:"metricLabelsAllowlist,omitempty"`
}
Kube State Metrics for prometheus addon profile for the container service cluster
type ManagedClusterAzureMonitorProfileKubeStateMetrics_STATUS ¶
type ManagedClusterAzureMonitorProfileKubeStateMetrics_STATUS struct {
// MetricAnnotationsAllowList: Comma-separated list of additional Kubernetes label keys that will be used in the resource's
// labels metric.
MetricAnnotationsAllowList *string `json:"metricAnnotationsAllowList,omitempty"`
// MetricLabelsAllowlist: Comma-separated list of Kubernetes annotations keys that will be used in the resource's labels
// metric.
MetricLabelsAllowlist *string `json:"metricLabelsAllowlist,omitempty"`
}
Kube State Metrics for prometheus addon profile for the container service cluster
type ManagedClusterAzureMonitorProfileMetrics ¶
type ManagedClusterAzureMonitorProfileMetrics struct {
// Enabled: Whether to enable the Prometheus collector
Enabled *bool `json:"enabled,omitempty"`
// KubeStateMetrics: Kube State Metrics for prometheus addon profile for the container service cluster
KubeStateMetrics *ManagedClusterAzureMonitorProfileKubeStateMetrics `json:"kubeStateMetrics,omitempty"`
}
Metrics profile for the prometheus service addon
type ManagedClusterAzureMonitorProfileMetrics_STATUS ¶
type ManagedClusterAzureMonitorProfileMetrics_STATUS struct {
// Enabled: Whether to enable the Prometheus collector
Enabled *bool `json:"enabled,omitempty"`
// KubeStateMetrics: Kube State Metrics for prometheus addon profile for the container service cluster
KubeStateMetrics *ManagedClusterAzureMonitorProfileKubeStateMetrics_STATUS `json:"kubeStateMetrics,omitempty"`
}
Metrics profile for the prometheus service addon
type ManagedClusterAzureMonitorProfile_STATUS ¶
type ManagedClusterAzureMonitorProfile_STATUS struct {
// AppMonitoring: Application Monitoring Profile for Kubernetes Application Container. Collects application logs, metrics
// and traces through auto-instrumentation of the application using Azure Monitor OpenTelemetry based SDKs. See
// aka.ms/AzureMonitorApplicationMonitoring for an overview.
AppMonitoring *ManagedClusterAzureMonitorProfileAppMonitoring_STATUS `json:"appMonitoring,omitempty"`
// ContainerInsights: Azure Monitor Container Insights Profile for Kubernetes Events, Inventory and Container stdout &
// stderr logs etc. See aka.ms/AzureMonitorContainerInsights for an overview.
ContainerInsights *ManagedClusterAzureMonitorProfileContainerInsights_STATUS `json:"containerInsights,omitempty"`
// Metrics: Metrics profile for the prometheus service addon
Metrics *ManagedClusterAzureMonitorProfileMetrics_STATUS `json:"metrics,omitempty"`
}
Prometheus addon profile for the container service cluster
type ManagedClusterBootstrapProfile ¶
type ManagedClusterBootstrapProfile struct {
// ArtifactSource: The source where the artifacts are downloaded from.
ArtifactSource *ManagedClusterBootstrapProfile_ArtifactSource `json:"artifactSource,omitempty"`
ContainerRegistryId *string `json:"containerRegistryId,omitempty"`
}
The bootstrap profile.
type ManagedClusterBootstrapProfile_ArtifactSource ¶
type ManagedClusterBootstrapProfile_ArtifactSource string
+kubebuilder:validation:Enum={"Cache","Direct"}
type ManagedClusterBootstrapProfile_ArtifactSource_STATUS ¶
type ManagedClusterBootstrapProfile_ArtifactSource_STATUS string
type ManagedClusterBootstrapProfile_STATUS ¶
type ManagedClusterBootstrapProfile_STATUS struct {
// ArtifactSource: The source where the artifacts are downloaded from.
ArtifactSource *ManagedClusterBootstrapProfile_ArtifactSource_STATUS `json:"artifactSource,omitempty"`
// ContainerRegistryId: The resource Id of Azure Container Registry. The registry must have private network access, premium
// SKU and zone redundancy.
ContainerRegistryId *string `json:"containerRegistryId,omitempty"`
}
The bootstrap profile.
type ManagedClusterCostAnalysis ¶
type ManagedClusterCostAnalysis struct {
// Enabled: The Managed Cluster sku.tier must be set to 'Standard' or 'Premium' to enable this feature. Enabling this will
// add Kubernetes Namespace and Deployment details to the Cost Analysis views in the Azure portal. If not specified, the
// default is false. For more information see aka.ms/aks/docs/cost-analysis.
Enabled *bool `json:"enabled,omitempty"`
}
The cost analysis configuration for the cluster
type ManagedClusterCostAnalysis_STATUS ¶
type ManagedClusterCostAnalysis_STATUS struct {
// Enabled: The Managed Cluster sku.tier must be set to 'Standard' or 'Premium' to enable this feature. Enabling this will
// add Kubernetes Namespace and Deployment details to the Cost Analysis views in the Azure portal. If not specified, the
// default is false. For more information see aka.ms/aks/docs/cost-analysis.
Enabled *bool `json:"enabled,omitempty"`
}
The cost analysis configuration for the cluster
type ManagedClusterHTTPProxyConfig ¶
type ManagedClusterHTTPProxyConfig struct {
// HttpProxy: The HTTP proxy server endpoint to use.
HttpProxy *string `json:"httpProxy,omitempty"`
// HttpsProxy: The HTTPS proxy server endpoint to use.
HttpsProxy *string `json:"httpsProxy,omitempty"`
// NoProxy: The endpoints that should not go through proxy.
NoProxy []string `json:"noProxy"`
// TrustedCa: Alternative CA cert to use for connecting to proxy servers.
TrustedCa *string `json:"trustedCa,omitempty"`
}
Cluster HTTP proxy configuration.
type ManagedClusterHTTPProxyConfig_STATUS ¶
type ManagedClusterHTTPProxyConfig_STATUS struct {
// EffectiveNoProxy: A read-only list of all endpoints for which traffic should not be sent to the proxy. This list is a
// superset of noProxy and values injected by AKS.
EffectiveNoProxy []string `json:"effectiveNoProxy"`
// HttpProxy: The HTTP proxy server endpoint to use.
HttpProxy *string `json:"httpProxy,omitempty"`
// HttpsProxy: The HTTPS proxy server endpoint to use.
HttpsProxy *string `json:"httpsProxy,omitempty"`
// NoProxy: The endpoints that should not go through proxy.
NoProxy []string `json:"noProxy"`
// TrustedCa: Alternative CA cert to use for connecting to proxy servers.
TrustedCa *string `json:"trustedCa,omitempty"`
}
Cluster HTTP proxy configuration.
type ManagedClusterIdentity ¶
type ManagedClusterIdentity struct {
// DelegatedResources: The delegated identity resources assigned to this managed cluster. This can only be set by another
// Azure Resource Provider, and managed cluster only accept one delegated identity resource. Internal use only.
DelegatedResources map[string]DelegatedResource `json:"delegatedResources"`
// Type: For more information see [use managed identities in
// AKS](https://docs.microsoft.com/azure/aks/use-managed-identity).
Type *ManagedClusterIdentity_Type `json:"type,omitempty"`
UserAssignedIdentities map[string]UserAssignedIdentityDetails `json:"userAssignedIdentities,omitempty"`
}
Identity for the managed cluster.
type ManagedClusterIdentity_STATUS ¶
type ManagedClusterIdentity_STATUS struct {
// DelegatedResources: The delegated identity resources assigned to this managed cluster. This can only be set by another
// Azure Resource Provider, and managed cluster only accept one delegated identity resource. Internal use only.
DelegatedResources map[string]DelegatedResource_STATUS `json:"delegatedResources"`
// PrincipalId: The principal id of the system assigned identity which is used by master components.
PrincipalId *string `json:"principalId,omitempty"`
// TenantId: The tenant id of the system assigned identity which is used by master components.
TenantId *string `json:"tenantId,omitempty"`
// Type: For more information see [use managed identities in
// AKS](https://docs.microsoft.com/azure/aks/use-managed-identity).
Type *ManagedClusterIdentity_Type_STATUS `json:"type,omitempty"`
// UserAssignedIdentities: The keys must be ARM resource IDs in the form:
// '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
UserAssignedIdentities map[string]ManagedClusterIdentity_UserAssignedIdentities_STATUS `json:"userAssignedIdentities"`
}
Identity for the managed cluster.
type ManagedClusterIdentity_Type ¶
type ManagedClusterIdentity_Type string
+kubebuilder:validation:Enum={"None","SystemAssigned","UserAssigned"}
type ManagedClusterIdentity_Type_STATUS ¶
type ManagedClusterIdentity_Type_STATUS string
type ManagedClusterIngressProfile ¶
type ManagedClusterIngressProfile struct {
// WebAppRouting: Web App Routing settings for the ingress profile.
WebAppRouting *ManagedClusterIngressProfileWebAppRouting `json:"webAppRouting,omitempty"`
}
Ingress profile for the container service cluster.
type ManagedClusterIngressProfileWebAppRouting ¶
type ManagedClusterIngressProfileWebAppRouting struct {
DnsZoneResourceIds []string `json:"dnsZoneResourceIds,omitempty"`
// Enabled: Whether to enable Web App Routing.
Enabled *bool `json:"enabled,omitempty"`
}
Web App Routing settings for the ingress profile.
type ManagedClusterIngressProfileWebAppRouting_STATUS ¶
type ManagedClusterIngressProfileWebAppRouting_STATUS struct {
// DnsZoneResourceIds: Resource IDs of the DNS zones to be associated with the Web App Routing add-on. Used only when Web
// App Routing is enabled. Public and private DNS zones can be in different resource groups, but all public DNS zones must
// be in the same resource group and all private DNS zones must be in the same resource group.
DnsZoneResourceIds []string `json:"dnsZoneResourceIds"`
// Enabled: Whether to enable Web App Routing.
Enabled *bool `json:"enabled,omitempty"`
// Identity: Managed identity of the Web Application Routing add-on. This is the identity that should be granted
// permissions, for example, to manage the associated Azure DNS resource and get certificates from Azure Key Vault. See
// [this overview of the add-on](https://learn.microsoft.com/en-us/azure/aks/web-app-routing?tabs=with-osm) for more
// instructions.
Identity *UserAssignedIdentity_STATUS `json:"identity,omitempty"`
}
Web App Routing settings for the ingress profile.
type ManagedClusterIngressProfile_STATUS ¶
type ManagedClusterIngressProfile_STATUS struct {
// WebAppRouting: Web App Routing settings for the ingress profile.
WebAppRouting *ManagedClusterIngressProfileWebAppRouting_STATUS `json:"webAppRouting,omitempty"`
}
Ingress profile for the container service cluster.
type ManagedClusterLoadBalancerProfile ¶
type ManagedClusterLoadBalancerProfile struct {
// AllocatedOutboundPorts: The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000
// (inclusive). The default value is 0 which results in Azure dynamically allocating ports.
AllocatedOutboundPorts *int `json:"allocatedOutboundPorts,omitempty"`
// BackendPoolType: The type of the managed inbound Load Balancer BackendPool.
BackendPoolType *ManagedClusterLoadBalancerProfile_BackendPoolType `json:"backendPoolType,omitempty"`
// ClusterServiceLoadBalancerHealthProbeMode: The health probing behavior for External Traffic Policy Cluster services.
ClusterServiceLoadBalancerHealthProbeMode *ManagedClusterLoadBalancerProfile_ClusterServiceLoadBalancerHealthProbeMode `json:"clusterServiceLoadBalancerHealthProbeMode,omitempty"`
// EffectiveOutboundIPs: The effective outbound IP resources of the cluster load balancer.
EffectiveOutboundIPs []ResourceReference `json:"effectiveOutboundIPs"`
// EnableMultipleStandardLoadBalancers: Enable multiple standard load balancers per AKS cluster or not.
EnableMultipleStandardLoadBalancers *bool `json:"enableMultipleStandardLoadBalancers,omitempty"`
// IdleTimeoutInMinutes: Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120
// (inclusive). The default value is 30 minutes.
IdleTimeoutInMinutes *int `json:"idleTimeoutInMinutes,omitempty"`
// ManagedOutboundIPs: Desired managed outbound IPs for the cluster load balancer.
ManagedOutboundIPs *ManagedClusterLoadBalancerProfile_ManagedOutboundIPs `json:"managedOutboundIPs,omitempty"`
// OutboundIPPrefixes: Desired outbound IP Prefix resources for the cluster load balancer.
OutboundIPPrefixes *ManagedClusterLoadBalancerProfile_OutboundIPPrefixes `json:"outboundIPPrefixes,omitempty"`
// OutboundIPs: Desired outbound IP resources for the cluster load balancer.
OutboundIPs *ManagedClusterLoadBalancerProfile_OutboundIPs `json:"outboundIPs,omitempty"`
}
Profile of the managed cluster load balancer.
type ManagedClusterLoadBalancerProfile_BackendPoolType ¶
type ManagedClusterLoadBalancerProfile_BackendPoolType string
+kubebuilder:validation:Enum={"NodeIP","NodeIPConfiguration"}
type ManagedClusterLoadBalancerProfile_BackendPoolType_STATUS ¶
type ManagedClusterLoadBalancerProfile_BackendPoolType_STATUS string
type ManagedClusterLoadBalancerProfile_ClusterServiceLoadBalancerHealthProbeMode ¶
type ManagedClusterLoadBalancerProfile_ClusterServiceLoadBalancerHealthProbeMode string
+kubebuilder:validation:Enum={"ServiceNodePort","Shared"}
type ManagedClusterLoadBalancerProfile_ClusterServiceLoadBalancerHealthProbeMode_STATUS ¶
type ManagedClusterLoadBalancerProfile_ClusterServiceLoadBalancerHealthProbeMode_STATUS string
type ManagedClusterLoadBalancerProfile_ManagedOutboundIPs ¶
type ManagedClusterLoadBalancerProfile_ManagedOutboundIPs struct {
// Count: The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values
// must be in the range of 1 to 100 (inclusive). The default value is 1.
Count *int `json:"count,omitempty"`
// CountIPv6: The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed
// values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack.
CountIPv6 *int `json:"countIPv6,omitempty"`
}
type ManagedClusterLoadBalancerProfile_ManagedOutboundIPs_STATUS ¶
type ManagedClusterLoadBalancerProfile_ManagedOutboundIPs_STATUS struct {
// Count: The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values
// must be in the range of 1 to 100 (inclusive). The default value is 1.
Count *int `json:"count,omitempty"`
// CountIPv6: The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed
// values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack.
CountIPv6 *int `json:"countIPv6,omitempty"`
}
type ManagedClusterLoadBalancerProfile_OutboundIPPrefixes ¶
type ManagedClusterLoadBalancerProfile_OutboundIPPrefixes struct {
// PublicIPPrefixes: A list of public IP prefix resources.
PublicIPPrefixes []ResourceReference `json:"publicIPPrefixes"`
}
type ManagedClusterLoadBalancerProfile_OutboundIPPrefixes_STATUS ¶
type ManagedClusterLoadBalancerProfile_OutboundIPPrefixes_STATUS struct {
// PublicIPPrefixes: A list of public IP prefix resources.
PublicIPPrefixes []ResourceReference_STATUS `json:"publicIPPrefixes"`
}
type ManagedClusterLoadBalancerProfile_OutboundIPs ¶
type ManagedClusterLoadBalancerProfile_OutboundIPs struct {
// PublicIPs: A list of public IP resources.
PublicIPs []ResourceReference `json:"publicIPs"`
}
type ManagedClusterLoadBalancerProfile_OutboundIPs_STATUS ¶
type ManagedClusterLoadBalancerProfile_OutboundIPs_STATUS struct {
// PublicIPs: A list of public IP resources.
PublicIPs []ResourceReference_STATUS `json:"publicIPs"`
}
type ManagedClusterLoadBalancerProfile_STATUS ¶
type ManagedClusterLoadBalancerProfile_STATUS struct {
// AllocatedOutboundPorts: The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000
// (inclusive). The default value is 0 which results in Azure dynamically allocating ports.
AllocatedOutboundPorts *int `json:"allocatedOutboundPorts,omitempty"`
// BackendPoolType: The type of the managed inbound Load Balancer BackendPool.
BackendPoolType *ManagedClusterLoadBalancerProfile_BackendPoolType_STATUS `json:"backendPoolType,omitempty"`
// ClusterServiceLoadBalancerHealthProbeMode: The health probing behavior for External Traffic Policy Cluster services.
ClusterServiceLoadBalancerHealthProbeMode *ManagedClusterLoadBalancerProfile_ClusterServiceLoadBalancerHealthProbeMode_STATUS `json:"clusterServiceLoadBalancerHealthProbeMode,omitempty"`
// EffectiveOutboundIPs: The effective outbound IP resources of the cluster load balancer.
EffectiveOutboundIPs []ResourceReference_STATUS `json:"effectiveOutboundIPs"`
// EnableMultipleStandardLoadBalancers: Enable multiple standard load balancers per AKS cluster or not.
EnableMultipleStandardLoadBalancers *bool `json:"enableMultipleStandardLoadBalancers,omitempty"`
// IdleTimeoutInMinutes: Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120
// (inclusive). The default value is 30 minutes.
IdleTimeoutInMinutes *int `json:"idleTimeoutInMinutes,omitempty"`
// ManagedOutboundIPs: Desired managed outbound IPs for the cluster load balancer.
ManagedOutboundIPs *ManagedClusterLoadBalancerProfile_ManagedOutboundIPs_STATUS `json:"managedOutboundIPs,omitempty"`
// OutboundIPPrefixes: Desired outbound IP Prefix resources for the cluster load balancer.
OutboundIPPrefixes *ManagedClusterLoadBalancerProfile_OutboundIPPrefixes_STATUS `json:"outboundIPPrefixes,omitempty"`
// OutboundIPs: Desired outbound IP resources for the cluster load balancer.
OutboundIPs *ManagedClusterLoadBalancerProfile_OutboundIPs_STATUS `json:"outboundIPs,omitempty"`
}
Profile of the managed cluster load balancer.
type ManagedClusterManagedOutboundIPProfile ¶
type ManagedClusterManagedOutboundIPProfile struct {
// Count: The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16
// (inclusive). The default value is 1.
Count *int `json:"count,omitempty"`
}
Profile of the managed outbound IP resources of the managed cluster.
type ManagedClusterManagedOutboundIPProfile_STATUS ¶
type ManagedClusterManagedOutboundIPProfile_STATUS struct {
// Count: The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16
// (inclusive). The default value is 1.
Count *int `json:"count,omitempty"`
}
Profile of the managed outbound IP resources of the managed cluster.
type ManagedClusterMetricsProfile ¶
type ManagedClusterMetricsProfile struct {
// CostAnalysis: The cost analysis configuration for the cluster
CostAnalysis *ManagedClusterCostAnalysis `json:"costAnalysis,omitempty"`
}
The metrics profile for the ManagedCluster.
type ManagedClusterMetricsProfile_STATUS ¶
type ManagedClusterMetricsProfile_STATUS struct {
// CostAnalysis: The cost analysis configuration for the cluster
CostAnalysis *ManagedClusterCostAnalysis_STATUS `json:"costAnalysis,omitempty"`
}
The metrics profile for the ManagedCluster.
type ManagedClusterNATGatewayProfile ¶
type ManagedClusterNATGatewayProfile struct {
// EffectiveOutboundIPs: The effective outbound IP resources of the cluster NAT gateway.
EffectiveOutboundIPs []ResourceReference `json:"effectiveOutboundIPs"`
// IdleTimeoutInMinutes: Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120
// (inclusive). The default value is 4 minutes.
IdleTimeoutInMinutes *int `json:"idleTimeoutInMinutes,omitempty"`
// ManagedOutboundIPProfile: Profile of the managed outbound IP resources of the cluster NAT gateway.
ManagedOutboundIPProfile *ManagedClusterManagedOutboundIPProfile `json:"managedOutboundIPProfile,omitempty"`
}
Profile of the managed cluster NAT gateway.
type ManagedClusterNATGatewayProfile_STATUS ¶
type ManagedClusterNATGatewayProfile_STATUS struct {
// EffectiveOutboundIPs: The effective outbound IP resources of the cluster NAT gateway.
EffectiveOutboundIPs []ResourceReference_STATUS `json:"effectiveOutboundIPs"`
// IdleTimeoutInMinutes: Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120
// (inclusive). The default value is 4 minutes.
IdleTimeoutInMinutes *int `json:"idleTimeoutInMinutes,omitempty"`
// ManagedOutboundIPProfile: Profile of the managed outbound IP resources of the cluster NAT gateway.
ManagedOutboundIPProfile *ManagedClusterManagedOutboundIPProfile_STATUS `json:"managedOutboundIPProfile,omitempty"`
}
Profile of the managed cluster NAT gateway.
type ManagedClusterNodeProvisioningProfile ¶
type ManagedClusterNodeProvisioningProfile struct {
// Mode: Once the mode it set to Auto, it cannot be changed back to Manual.
Mode *ManagedClusterNodeProvisioningProfile_Mode `json:"mode,omitempty"`
}
type ManagedClusterNodeProvisioningProfile_Mode ¶
type ManagedClusterNodeProvisioningProfile_Mode string
+kubebuilder:validation:Enum={"Auto","Manual"}
type ManagedClusterNodeProvisioningProfile_Mode_STATUS ¶
type ManagedClusterNodeProvisioningProfile_Mode_STATUS string
type ManagedClusterNodeProvisioningProfile_STATUS ¶
type ManagedClusterNodeProvisioningProfile_STATUS struct {
// Mode: Once the mode it set to Auto, it cannot be changed back to Manual.
Mode *ManagedClusterNodeProvisioningProfile_Mode_STATUS `json:"mode,omitempty"`
}
type ManagedClusterNodeResourceGroupProfile ¶
type ManagedClusterNodeResourceGroupProfile struct {
// RestrictionLevel: The restriction level applied to the cluster's node resource group
RestrictionLevel *ManagedClusterNodeResourceGroupProfile_RestrictionLevel `json:"restrictionLevel,omitempty"`
}
Node resource group lockdown profile for a managed cluster.
type ManagedClusterNodeResourceGroupProfile_RestrictionLevel ¶
type ManagedClusterNodeResourceGroupProfile_RestrictionLevel string
+kubebuilder:validation:Enum={"ReadOnly","Unrestricted"}
type ManagedClusterNodeResourceGroupProfile_RestrictionLevel_STATUS ¶
type ManagedClusterNodeResourceGroupProfile_RestrictionLevel_STATUS string
type ManagedClusterNodeResourceGroupProfile_STATUS ¶
type ManagedClusterNodeResourceGroupProfile_STATUS struct {
// RestrictionLevel: The restriction level applied to the cluster's node resource group
RestrictionLevel *ManagedClusterNodeResourceGroupProfile_RestrictionLevel_STATUS `json:"restrictionLevel,omitempty"`
}
Node resource group lockdown profile for a managed cluster.
type ManagedClusterOIDCIssuerProfile ¶
type ManagedClusterOIDCIssuerProfile struct {
// Enabled: Whether the OIDC issuer is enabled.
Enabled *bool `json:"enabled,omitempty"`
}
The OIDC issuer profile of the Managed Cluster.
type ManagedClusterOIDCIssuerProfile_STATUS ¶
type ManagedClusterOIDCIssuerProfile_STATUS struct {
// Enabled: Whether the OIDC issuer is enabled.
Enabled *bool `json:"enabled,omitempty"`
// IssuerURL: The OIDC issuer url of the Managed Cluster.
IssuerURL *string `json:"issuerURL,omitempty"`
}
The OIDC issuer profile of the Managed Cluster.
type ManagedClusterPodIdentity ¶
type ManagedClusterPodIdentity struct {
// BindingSelector: The binding selector to use for the AzureIdentityBinding resource.
BindingSelector *string `json:"bindingSelector,omitempty"`
// Identity: The user assigned identity details.
Identity *UserAssignedIdentity `json:"identity,omitempty"`
// Name: The name of the pod identity.
Name *string `json:"name,omitempty"`
// Namespace: The namespace of the pod identity.
Namespace *string `json:"namespace,omitempty"`
}
Details about the pod identity assigned to the Managed Cluster.
type ManagedClusterPodIdentityException ¶
type ManagedClusterPodIdentityException struct {
// Name: The name of the pod identity exception.
Name *string `json:"name,omitempty"`
// Namespace: The namespace of the pod identity exception.
Namespace *string `json:"namespace,omitempty"`
// PodLabels: The pod labels to match.
PodLabels map[string]string `json:"podLabels"`
}
See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details.
type ManagedClusterPodIdentityException_STATUS ¶
type ManagedClusterPodIdentityException_STATUS struct {
// Name: The name of the pod identity exception.
Name *string `json:"name,omitempty"`
// Namespace: The namespace of the pod identity exception.
Namespace *string `json:"namespace,omitempty"`
// PodLabels: The pod labels to match.
PodLabels map[string]string `json:"podLabels"`
}
See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details.
type ManagedClusterPodIdentityProfile ¶
type ManagedClusterPodIdentityProfile struct {
// AllowNetworkPluginKubenet: Running in Kubenet is disabled by default due to the security related nature of AAD Pod
// Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod
// Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities)
// for more information.
AllowNetworkPluginKubenet *bool `json:"allowNetworkPluginKubenet,omitempty"`
// Enabled: Whether the pod identity addon is enabled.
Enabled *bool `json:"enabled,omitempty"`
// UserAssignedIdentities: The pod identities to use in the cluster.
UserAssignedIdentities []ManagedClusterPodIdentity `json:"userAssignedIdentities"`
// UserAssignedIdentityExceptions: The pod identity exceptions to allow.
UserAssignedIdentityExceptions []ManagedClusterPodIdentityException `json:"userAssignedIdentityExceptions"`
}
See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration.
type ManagedClusterPodIdentityProfile_STATUS ¶
type ManagedClusterPodIdentityProfile_STATUS struct {
// AllowNetworkPluginKubenet: Running in Kubenet is disabled by default due to the security related nature of AAD Pod
// Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod
// Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities)
// for more information.
AllowNetworkPluginKubenet *bool `json:"allowNetworkPluginKubenet,omitempty"`
// Enabled: Whether the pod identity addon is enabled.
Enabled *bool `json:"enabled,omitempty"`
// UserAssignedIdentities: The pod identities to use in the cluster.
UserAssignedIdentities []ManagedClusterPodIdentity_STATUS `json:"userAssignedIdentities"`
// UserAssignedIdentityExceptions: The pod identity exceptions to allow.
UserAssignedIdentityExceptions []ManagedClusterPodIdentityException_STATUS `json:"userAssignedIdentityExceptions"`
}
See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration.
type ManagedClusterPodIdentityProvisioningErrorBody_STATUS ¶
type ManagedClusterPodIdentityProvisioningErrorBody_STATUS struct {
// Code: An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
Code *string `json:"code,omitempty"`
// Details: A list of additional details about the error.
Details []ManagedClusterPodIdentityProvisioningErrorBody_STATUS_Unrolled `json:"details"`
// Message: A message describing the error, intended to be suitable for display in a user interface.
Message *string `json:"message,omitempty"`
// Target: The target of the particular error. For example, the name of the property in error.
Target *string `json:"target,omitempty"`
}
An error response from the pod identity provisioning.
type ManagedClusterPodIdentityProvisioningErrorBody_STATUS_Unrolled ¶
type ManagedClusterPodIdentityProvisioningErrorBody_STATUS_Unrolled struct {
// Code: An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
Code *string `json:"code,omitempty"`
// Message: A message describing the error, intended to be suitable for display in a user interface.
Message *string `json:"message,omitempty"`
// Target: The target of the particular error. For example, the name of the property in error.
Target *string `json:"target,omitempty"`
}
type ManagedClusterPodIdentityProvisioningError_STATUS ¶
type ManagedClusterPodIdentityProvisioningError_STATUS struct {
// Error: Details about the error.
Error *ManagedClusterPodIdentityProvisioningErrorBody_STATUS `json:"error,omitempty"`
}
An error response from the pod identity provisioning.
type ManagedClusterPodIdentity_ProvisioningInfo_STATUS ¶
type ManagedClusterPodIdentity_ProvisioningInfo_STATUS struct {
// Error: Pod identity assignment error (if any).
Error *ManagedClusterPodIdentityProvisioningError_STATUS `json:"error,omitempty"`
}
type ManagedClusterPodIdentity_ProvisioningState_STATUS ¶
type ManagedClusterPodIdentity_ProvisioningState_STATUS string
type ManagedClusterPodIdentity_STATUS ¶
type ManagedClusterPodIdentity_STATUS struct {
// BindingSelector: The binding selector to use for the AzureIdentityBinding resource.
BindingSelector *string `json:"bindingSelector,omitempty"`
// Identity: The user assigned identity details.
Identity *UserAssignedIdentity_STATUS `json:"identity,omitempty"`
// Name: The name of the pod identity.
Name *string `json:"name,omitempty"`
// Namespace: The namespace of the pod identity.
Namespace *string `json:"namespace,omitempty"`
ProvisioningInfo *ManagedClusterPodIdentity_ProvisioningInfo_STATUS `json:"provisioningInfo,omitempty"`
// ProvisioningState: The current provisioning state of the pod identity.
ProvisioningState *ManagedClusterPodIdentity_ProvisioningState_STATUS `json:"provisioningState,omitempty"`
}
Details about the pod identity assigned to the Managed Cluster.
type ManagedClusterProperties ¶
type ManagedClusterProperties struct {
// AadProfile: The Azure Active Directory configuration.
AadProfile *ManagedClusterAADProfile `json:"aadProfile,omitempty"`
// AddonProfiles: The profile of managed cluster add-on.
AddonProfiles map[string]ManagedClusterAddonProfile `json:"addonProfiles"`
// AgentPoolProfiles: The agent pool properties.
AgentPoolProfiles []ManagedClusterAgentPoolProfile `json:"agentPoolProfiles"`
// AiToolchainOperatorProfile: AI toolchain operator settings that apply to the whole cluster.
AiToolchainOperatorProfile *ManagedClusterAIToolchainOperatorProfile `json:"aiToolchainOperatorProfile,omitempty"`
// ApiServerAccessProfile: The access profile for managed cluster API server.
ApiServerAccessProfile *ManagedClusterAPIServerAccessProfile `json:"apiServerAccessProfile,omitempty"`
// AutoScalerProfile: Parameters to be applied to the cluster-autoscaler when enabled
AutoScalerProfile *ManagedClusterProperties_AutoScalerProfile `json:"autoScalerProfile,omitempty"`
// AutoUpgradeProfile: The auto upgrade configuration.
AutoUpgradeProfile *ManagedClusterAutoUpgradeProfile `json:"autoUpgradeProfile,omitempty"`
// AzureMonitorProfile: Prometheus addon profile for the container service cluster
AzureMonitorProfile *ManagedClusterAzureMonitorProfile `json:"azureMonitorProfile,omitempty"`
// BootstrapProfile: Profile of the cluster bootstrap configuration.
BootstrapProfile *ManagedClusterBootstrapProfile `json:"bootstrapProfile,omitempty"`
// CreationData: CreationData to be used to specify the source Snapshot ID if the cluster will be created/upgraded using a
// snapshot.
CreationData *CreationData `json:"creationData,omitempty"`
// DisableLocalAccounts: If set to true, getting static credentials will be disabled for this cluster. This must only be
// used on Managed Clusters that are AAD enabled. For more details see [disable local
// accounts](https://docs.microsoft.com/azure/aks/managed-aad#disable-local-accounts-preview).
DisableLocalAccounts *bool `json:"disableLocalAccounts,omitempty"`
DiskEncryptionSetID *string `json:"diskEncryptionSetID,omitempty"`
// DnsPrefix: This cannot be updated once the Managed Cluster has been created.
DnsPrefix *string `json:"dnsPrefix,omitempty"`
// EnableNamespaceResources: The default value is false. It can be enabled/disabled on creation and updating of the managed
// cluster. See [https://aka.ms/NamespaceARMResource](https://aka.ms/NamespaceARMResource) for more details on Namespace as
// a ARM Resource.
EnableNamespaceResources *bool `json:"enableNamespaceResources,omitempty"`
// EnablePodSecurityPolicy: (DEPRECATED) Whether to enable Kubernetes pod security policy (preview). PodSecurityPolicy was
// deprecated in Kubernetes v1.21, and removed from Kubernetes in v1.25. Learn more at https://aka.ms/k8s/psp and
// https://aka.ms/aks/psp.
EnablePodSecurityPolicy *bool `json:"enablePodSecurityPolicy,omitempty"`
// EnableRBAC: Whether to enable Kubernetes Role-Based Access Control.
EnableRBAC *bool `json:"enableRBAC,omitempty"`
// FqdnSubdomain: This cannot be updated once the Managed Cluster has been created.
FqdnSubdomain *string `json:"fqdnSubdomain,omitempty"`
// HttpProxyConfig: Configurations for provisioning the cluster with HTTP proxy servers.
HttpProxyConfig *ManagedClusterHTTPProxyConfig `json:"httpProxyConfig,omitempty"`
// IdentityProfile: Identities associated with the cluster.
IdentityProfile map[string]UserAssignedIdentity `json:"identityProfile"`
// IngressProfile: Ingress profile for the managed cluster.
IngressProfile *ManagedClusterIngressProfile `json:"ingressProfile,omitempty"`
// KubernetesVersion: When you upgrade a supported AKS cluster, Kubernetes minor versions cannot be skipped. All upgrades
// must be performed sequentially by major version number. For example, upgrades between 1.14.x -> 1.15.x or 1.15.x ->
// 1.16.x are allowed, however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS
// cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster) for more details.
KubernetesVersion *string `json:"kubernetesVersion,omitempty"`
// LinuxProfile: The profile for Linux VMs in the Managed Cluster.
LinuxProfile *ContainerServiceLinuxProfile `json:"linuxProfile,omitempty"`
// MetricsProfile: Optional cluster metrics configuration.
MetricsProfile *ManagedClusterMetricsProfile `json:"metricsProfile,omitempty"`
// NetworkProfile: The network configuration profile.
NetworkProfile *ContainerServiceNetworkProfile `json:"networkProfile,omitempty"`
// NodeProvisioningProfile: Node provisioning settings that apply to the whole cluster.
NodeProvisioningProfile *ManagedClusterNodeProvisioningProfile `json:"nodeProvisioningProfile,omitempty"`
// NodeResourceGroup: The name of the resource group containing agent pool nodes.
NodeResourceGroup *string `json:"nodeResourceGroup,omitempty"`
// NodeResourceGroupProfile: The node resource group configuration profile.
NodeResourceGroupProfile *ManagedClusterNodeResourceGroupProfile `json:"nodeResourceGroupProfile,omitempty"`
// OidcIssuerProfile: The OIDC issuer profile of the Managed Cluster.
OidcIssuerProfile *ManagedClusterOIDCIssuerProfile `json:"oidcIssuerProfile,omitempty"`
// PodIdentityProfile: See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more
// details on AAD pod identity integration.
PodIdentityProfile *ManagedClusterPodIdentityProfile `json:"podIdentityProfile,omitempty"`
// PrivateLinkResources: Private link resources associated with the cluster.
PrivateLinkResources []PrivateLinkResource `json:"privateLinkResources"`
// PublicNetworkAccess: Allow or deny public network access for AKS
PublicNetworkAccess *ManagedClusterProperties_PublicNetworkAccess `json:"publicNetworkAccess,omitempty"`
// SafeguardsProfile: The Safeguards profile holds all the safeguards information for a given cluster
SafeguardsProfile *SafeguardsProfile `json:"safeguardsProfile,omitempty"`
// SecurityProfile: Security profile for the managed cluster.
SecurityProfile *ManagedClusterSecurityProfile `json:"securityProfile,omitempty"`
// ServiceMeshProfile: Service mesh profile for a managed cluster.
ServiceMeshProfile *ServiceMeshProfile `json:"serviceMeshProfile,omitempty"`
// ServicePrincipalProfile: Information about a service principal identity for the cluster to use for manipulating Azure
// APIs.
ServicePrincipalProfile *ManagedClusterServicePrincipalProfile `json:"servicePrincipalProfile,omitempty"`
// StorageProfile: Storage profile for the managed cluster.
StorageProfile *ManagedClusterStorageProfile `json:"storageProfile,omitempty"`
// SupportPlan: The support plan for the Managed Cluster. If unspecified, the default is 'KubernetesOfficial'.
SupportPlan *KubernetesSupportPlan `json:"supportPlan,omitempty"`
// UpgradeSettings: Settings for upgrading a cluster.
UpgradeSettings *ClusterUpgradeSettings `json:"upgradeSettings,omitempty"`
// WindowsProfile: The profile for Windows VMs in the Managed Cluster.
WindowsProfile *ManagedClusterWindowsProfile `json:"windowsProfile,omitempty"`
// WorkloadAutoScalerProfile: Workload Auto-scaler profile for the managed cluster.
WorkloadAutoScalerProfile *ManagedClusterWorkloadAutoScalerProfile `json:"workloadAutoScalerProfile,omitempty"`
}
Properties of the managed cluster.
type ManagedClusterProperties_AutoScalerProfile ¶
type ManagedClusterProperties_AutoScalerProfile struct {
// BalanceSimilarNodeGroups: Valid values are 'true' and 'false'
BalanceSimilarNodeGroups *string `json:"balance-similar-node-groups,omitempty"`
// DaemonsetEvictionForEmptyNodes: If set to true, all daemonset pods on empty nodes will be evicted before deletion of the
// node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be
// deleted without ensuring that daemonset pods are deleted or evicted.
DaemonsetEvictionForEmptyNodes *bool `json:"daemonset-eviction-for-empty-nodes,omitempty"`
// DaemonsetEvictionForOccupiedNodes: If set to true, all daemonset pods on occupied nodes will be evicted before deletion
// of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node
// will be deleted without ensuring that daemonset pods are deleted or evicted.
DaemonsetEvictionForOccupiedNodes *bool `json:"daemonset-eviction-for-occupied-nodes,omitempty"`
// Expander: Available values are: 'least-waste', 'most-pods', 'priority', 'random'.
Expander *Expander `json:"expander,omitempty"`
// IgnoreDaemonsetsUtilization: If set to true, the resources used by daemonset will be taken into account when making
// scaling down decisions.
IgnoreDaemonsetsUtilization *bool `json:"ignore-daemonsets-utilization,omitempty"`
// MaxEmptyBulkDelete: The default is 10.
MaxEmptyBulkDelete *string `json:"max-empty-bulk-delete,omitempty"`
// MaxGracefulTerminationSec: The default is 600.
MaxGracefulTerminationSec *string `json:"max-graceful-termination-sec,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.
MaxNodeProvisionTime *string `json:"max-node-provision-time,omitempty"`
// MaxTotalUnreadyPercentage: The default is 45. The maximum is 100 and the minimum is 0.
MaxTotalUnreadyPercentage *string `json:"max-total-unready-percentage,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).
NewPodScaleUpDelay *string `json:"new-pod-scale-up-delay,omitempty"`
// OkTotalUnreadyCount: This must be an integer. The default is 3.
OkTotalUnreadyCount *string `json:"ok-total-unready-count,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.
ScaleDownDelayAfterAdd *string `json:"scale-down-delay-after-add,omitempty"`
// ScaleDownDelayAfterDelete: The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of
// time other than minutes (m) is supported.
ScaleDownDelayAfterDelete *string `json:"scale-down-delay-after-delete,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.
ScaleDownDelayAfterFailure *string `json:"scale-down-delay-after-failure,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.
ScaleDownUnneededTime *string `json:"scale-down-unneeded-time,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.
ScaleDownUnreadyTime *string `json:"scale-down-unready-time,omitempty"`
// ScaleDownUtilizationThreshold: The default is '0.5'.
ScaleDownUtilizationThreshold *string `json:"scale-down-utilization-threshold,omitempty"`
// ScanInterval: The default is '10'. Values must be an integer number of seconds.
ScanInterval *string `json:"scan-interval,omitempty"`
// SkipNodesWithLocalStorage: The default is true.
SkipNodesWithLocalStorage *string `json:"skip-nodes-with-local-storage,omitempty"`
// SkipNodesWithSystemPods: The default is true.
SkipNodesWithSystemPods *string `json:"skip-nodes-with-system-pods,omitempty"`
}
type ManagedClusterProperties_AutoScalerProfile_STATUS ¶
type ManagedClusterProperties_AutoScalerProfile_STATUS struct {
// BalanceSimilarNodeGroups: Valid values are 'true' and 'false'
BalanceSimilarNodeGroups *string `json:"balance-similar-node-groups,omitempty"`
// DaemonsetEvictionForEmptyNodes: If set to true, all daemonset pods on empty nodes will be evicted before deletion of the
// node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be
// deleted without ensuring that daemonset pods are deleted or evicted.
DaemonsetEvictionForEmptyNodes *bool `json:"daemonset-eviction-for-empty-nodes,omitempty"`
// DaemonsetEvictionForOccupiedNodes: If set to true, all daemonset pods on occupied nodes will be evicted before deletion
// of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node
// will be deleted without ensuring that daemonset pods are deleted or evicted.
DaemonsetEvictionForOccupiedNodes *bool `json:"daemonset-eviction-for-occupied-nodes,omitempty"`
// Expander: Available values are: 'least-waste', 'most-pods', 'priority', 'random'.
Expander *Expander_STATUS `json:"expander,omitempty"`
// IgnoreDaemonsetsUtilization: If set to true, the resources used by daemonset will be taken into account when making
// scaling down decisions.
IgnoreDaemonsetsUtilization *bool `json:"ignore-daemonsets-utilization,omitempty"`
// MaxEmptyBulkDelete: The default is 10.
MaxEmptyBulkDelete *string `json:"max-empty-bulk-delete,omitempty"`
// MaxGracefulTerminationSec: The default is 600.
MaxGracefulTerminationSec *string `json:"max-graceful-termination-sec,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.
MaxNodeProvisionTime *string `json:"max-node-provision-time,omitempty"`
// MaxTotalUnreadyPercentage: The default is 45. The maximum is 100 and the minimum is 0.
MaxTotalUnreadyPercentage *string `json:"max-total-unready-percentage,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).
NewPodScaleUpDelay *string `json:"new-pod-scale-up-delay,omitempty"`
// OkTotalUnreadyCount: This must be an integer. The default is 3.
OkTotalUnreadyCount *string `json:"ok-total-unready-count,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.
ScaleDownDelayAfterAdd *string `json:"scale-down-delay-after-add,omitempty"`
// ScaleDownDelayAfterDelete: The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of
// time other than minutes (m) is supported.
ScaleDownDelayAfterDelete *string `json:"scale-down-delay-after-delete,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.
ScaleDownDelayAfterFailure *string `json:"scale-down-delay-after-failure,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.
ScaleDownUnneededTime *string `json:"scale-down-unneeded-time,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.
ScaleDownUnreadyTime *string `json:"scale-down-unready-time,omitempty"`
// ScaleDownUtilizationThreshold: The default is '0.5'.
ScaleDownUtilizationThreshold *string `json:"scale-down-utilization-threshold,omitempty"`
// ScanInterval: The default is '10'. Values must be an integer number of seconds.
ScanInterval *string `json:"scan-interval,omitempty"`
// SkipNodesWithLocalStorage: The default is true.
SkipNodesWithLocalStorage *string `json:"skip-nodes-with-local-storage,omitempty"`
// SkipNodesWithSystemPods: The default is true.
SkipNodesWithSystemPods *string `json:"skip-nodes-with-system-pods,omitempty"`
}
type ManagedClusterProperties_PublicNetworkAccess ¶
type ManagedClusterProperties_PublicNetworkAccess string
+kubebuilder:validation:Enum={"Disabled","Enabled","SecuredByPerimeter"}
type ManagedClusterProperties_PublicNetworkAccess_STATUS ¶
type ManagedClusterProperties_PublicNetworkAccess_STATUS string
type ManagedClusterProperties_STATUS ¶
type ManagedClusterProperties_STATUS struct {
// AadProfile: The Azure Active Directory configuration.
AadProfile *ManagedClusterAADProfile_STATUS `json:"aadProfile,omitempty"`
// AddonProfiles: The profile of managed cluster add-on.
AddonProfiles map[string]ManagedClusterAddonProfile_STATUS `json:"addonProfiles"`
// AgentPoolProfiles: The agent pool properties.
AgentPoolProfiles []ManagedClusterAgentPoolProfile_STATUS `json:"agentPoolProfiles"`
// AiToolchainOperatorProfile: AI toolchain operator settings that apply to the whole cluster.
AiToolchainOperatorProfile *ManagedClusterAIToolchainOperatorProfile_STATUS `json:"aiToolchainOperatorProfile,omitempty"`
// ApiServerAccessProfile: The access profile for managed cluster API server.
ApiServerAccessProfile *ManagedClusterAPIServerAccessProfile_STATUS `json:"apiServerAccessProfile,omitempty"`
// AutoScalerProfile: Parameters to be applied to the cluster-autoscaler when enabled
AutoScalerProfile *ManagedClusterProperties_AutoScalerProfile_STATUS `json:"autoScalerProfile,omitempty"`
// AutoUpgradeProfile: The auto upgrade configuration.
AutoUpgradeProfile *ManagedClusterAutoUpgradeProfile_STATUS `json:"autoUpgradeProfile,omitempty"`
// AzureMonitorProfile: Prometheus addon profile for the container service cluster
AzureMonitorProfile *ManagedClusterAzureMonitorProfile_STATUS `json:"azureMonitorProfile,omitempty"`
// AzurePortalFQDN: The Azure Portal requires certain Cross-Origin Resource Sharing (CORS) headers to be sent in some
// responses, which Kubernetes APIServer doesn't handle by default. This special FQDN supports CORS, allowing the Azure
// Portal to function properly.
AzurePortalFQDN *string `json:"azurePortalFQDN,omitempty"`
// BootstrapProfile: Profile of the cluster bootstrap configuration.
BootstrapProfile *ManagedClusterBootstrapProfile_STATUS `json:"bootstrapProfile,omitempty"`
// CreationData: CreationData to be used to specify the source Snapshot ID if the cluster will be created/upgraded using a
// snapshot.
CreationData *CreationData_STATUS `json:"creationData,omitempty"`
// CurrentKubernetesVersion: The version of Kubernetes the Managed Cluster is running.
CurrentKubernetesVersion *string `json:"currentKubernetesVersion,omitempty"`
// DisableLocalAccounts: If set to true, getting static credentials will be disabled for this cluster. This must only be
// used on Managed Clusters that are AAD enabled. For more details see [disable local
// accounts](https://docs.microsoft.com/azure/aks/managed-aad#disable-local-accounts-preview).
DisableLocalAccounts *bool `json:"disableLocalAccounts,omitempty"`
// DiskEncryptionSetID: This is of the form:
// '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}'
DiskEncryptionSetID *string `json:"diskEncryptionSetID,omitempty"`
// DnsPrefix: This cannot be updated once the Managed Cluster has been created.
DnsPrefix *string `json:"dnsPrefix,omitempty"`
// EnableNamespaceResources: The default value is false. It can be enabled/disabled on creation and updating of the managed
// cluster. See [https://aka.ms/NamespaceARMResource](https://aka.ms/NamespaceARMResource) for more details on Namespace as
// a ARM Resource.
EnableNamespaceResources *bool `json:"enableNamespaceResources,omitempty"`
// EnablePodSecurityPolicy: (DEPRECATED) Whether to enable Kubernetes pod security policy (preview). PodSecurityPolicy was
// deprecated in Kubernetes v1.21, and removed from Kubernetes in v1.25. Learn more at https://aka.ms/k8s/psp and
// https://aka.ms/aks/psp.
EnablePodSecurityPolicy *bool `json:"enablePodSecurityPolicy,omitempty"`
// EnableRBAC: Whether to enable Kubernetes Role-Based Access Control.
EnableRBAC *bool `json:"enableRBAC,omitempty"`
// Fqdn: The FQDN of the master pool.
Fqdn *string `json:"fqdn,omitempty"`
// FqdnSubdomain: This cannot be updated once the Managed Cluster has been created.
FqdnSubdomain *string `json:"fqdnSubdomain,omitempty"`
// HttpProxyConfig: Configurations for provisioning the cluster with HTTP proxy servers.
HttpProxyConfig *ManagedClusterHTTPProxyConfig_STATUS `json:"httpProxyConfig,omitempty"`
// IdentityProfile: Identities associated with the cluster.
IdentityProfile map[string]UserAssignedIdentity_STATUS `json:"identityProfile"`
// IngressProfile: Ingress profile for the managed cluster.
IngressProfile *ManagedClusterIngressProfile_STATUS `json:"ingressProfile,omitempty"`
// KubernetesVersion: When you upgrade a supported AKS cluster, Kubernetes minor versions cannot be skipped. All upgrades
// must be performed sequentially by major version number. For example, upgrades between 1.14.x -> 1.15.x or 1.15.x ->
// 1.16.x are allowed, however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS
// cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster) for more details.
KubernetesVersion *string `json:"kubernetesVersion,omitempty"`
// LinuxProfile: The profile for Linux VMs in the Managed Cluster.
LinuxProfile *ContainerServiceLinuxProfile_STATUS `json:"linuxProfile,omitempty"`
// MaxAgentPools: The max number of agent pools for the managed cluster.
MaxAgentPools *int `json:"maxAgentPools,omitempty"`
// MetricsProfile: Optional cluster metrics configuration.
MetricsProfile *ManagedClusterMetricsProfile_STATUS `json:"metricsProfile,omitempty"`
// NetworkProfile: The network configuration profile.
NetworkProfile *ContainerServiceNetworkProfile_STATUS `json:"networkProfile,omitempty"`
// NodeProvisioningProfile: Node provisioning settings that apply to the whole cluster.
NodeProvisioningProfile *ManagedClusterNodeProvisioningProfile_STATUS `json:"nodeProvisioningProfile,omitempty"`
// NodeResourceGroup: The name of the resource group containing agent pool nodes.
NodeResourceGroup *string `json:"nodeResourceGroup,omitempty"`
// NodeResourceGroupProfile: The node resource group configuration profile.
NodeResourceGroupProfile *ManagedClusterNodeResourceGroupProfile_STATUS `json:"nodeResourceGroupProfile,omitempty"`
// OidcIssuerProfile: The OIDC issuer profile of the Managed Cluster.
OidcIssuerProfile *ManagedClusterOIDCIssuerProfile_STATUS `json:"oidcIssuerProfile,omitempty"`
// PodIdentityProfile: See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more
// details on AAD pod identity integration.
PodIdentityProfile *ManagedClusterPodIdentityProfile_STATUS `json:"podIdentityProfile,omitempty"`
// PowerState: The Power State of the cluster.
PowerState *PowerState_STATUS `json:"powerState,omitempty"`
// PrivateFQDN: The FQDN of private cluster.
PrivateFQDN *string `json:"privateFQDN,omitempty"`
// PrivateLinkResources: Private link resources associated with the cluster.
PrivateLinkResources []PrivateLinkResource_STATUS `json:"privateLinkResources"`
// ProvisioningState: The current provisioning state.
ProvisioningState *string `json:"provisioningState,omitempty"`
// PublicNetworkAccess: Allow or deny public network access for AKS
PublicNetworkAccess *ManagedClusterProperties_PublicNetworkAccess_STATUS `json:"publicNetworkAccess,omitempty"`
// ResourceUID: The resourceUID uniquely identifies ManagedClusters that reuse ARM ResourceIds (i.e: create, delete, create
// sequence)
ResourceUID *string `json:"resourceUID,omitempty"`
// SafeguardsProfile: The Safeguards profile holds all the safeguards information for a given cluster
SafeguardsProfile *SafeguardsProfile_STATUS `json:"safeguardsProfile,omitempty"`
// SecurityProfile: Security profile for the managed cluster.
SecurityProfile *ManagedClusterSecurityProfile_STATUS `json:"securityProfile,omitempty"`
// ServiceMeshProfile: Service mesh profile for a managed cluster.
ServiceMeshProfile *ServiceMeshProfile_STATUS `json:"serviceMeshProfile,omitempty"`
// ServicePrincipalProfile: Information about a service principal identity for the cluster to use for manipulating Azure
// APIs.
ServicePrincipalProfile *ManagedClusterServicePrincipalProfile_STATUS `json:"servicePrincipalProfile,omitempty"`
// StorageProfile: Storage profile for the managed cluster.
StorageProfile *ManagedClusterStorageProfile_STATUS `json:"storageProfile,omitempty"`
// SupportPlan: The support plan for the Managed Cluster. If unspecified, the default is 'KubernetesOfficial'.
SupportPlan *KubernetesSupportPlan_STATUS `json:"supportPlan,omitempty"`
// UpgradeSettings: Settings for upgrading a cluster.
UpgradeSettings *ClusterUpgradeSettings_STATUS `json:"upgradeSettings,omitempty"`
// WindowsProfile: The profile for Windows VMs in the Managed Cluster.
WindowsProfile *ManagedClusterWindowsProfile_STATUS `json:"windowsProfile,omitempty"`
// WorkloadAutoScalerProfile: Workload Auto-scaler profile for the managed cluster.
WorkloadAutoScalerProfile *ManagedClusterWorkloadAutoScalerProfile_STATUS `json:"workloadAutoScalerProfile,omitempty"`
}
Properties of the managed cluster.
type ManagedClusterSKU ¶
type ManagedClusterSKU struct {
// Name: The name of a managed cluster SKU.
Name *ManagedClusterSKU_Name `json:"name,omitempty"`
// Tier: If not specified, the default is 'Free'. See [AKS Pricing
// Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details.
Tier *ManagedClusterSKU_Tier `json:"tier,omitempty"`
}
The SKU of a Managed Cluster.
type ManagedClusterSKU_Name ¶
type ManagedClusterSKU_Name string
+kubebuilder:validation:Enum={"Automatic","Base"}
type ManagedClusterSKU_Name_STATUS ¶
type ManagedClusterSKU_Name_STATUS string
type ManagedClusterSKU_STATUS ¶
type ManagedClusterSKU_STATUS struct {
// Name: The name of a managed cluster SKU.
Name *ManagedClusterSKU_Name_STATUS `json:"name,omitempty"`
// Tier: If not specified, the default is 'Free'. See [AKS Pricing
// Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details.
Tier *ManagedClusterSKU_Tier_STATUS `json:"tier,omitempty"`
}
The SKU of a Managed Cluster.
type ManagedClusterSKU_Tier ¶
type ManagedClusterSKU_Tier string
+kubebuilder:validation:Enum={"Free","Premium","Standard"}
type ManagedClusterSKU_Tier_STATUS ¶
type ManagedClusterSKU_Tier_STATUS string
type ManagedClusterSecurityProfile ¶
type ManagedClusterSecurityProfile struct {
// AzureKeyVaultKms: Azure Key Vault [key management
// service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile.
AzureKeyVaultKms *AzureKeyVaultKms `json:"azureKeyVaultKms,omitempty"`
// CustomCATrustCertificates: A list of up to 10 base64 encoded CAs that will be added to the trust store on nodes with the
// Custom CA Trust feature enabled. For more information see [Custom CA Trust
// Certificates](https://learn.microsoft.com/en-us/azure/aks/custom-certificate-authority)
CustomCATrustCertificates []string `json:"customCATrustCertificates"`
// Defender: Microsoft Defender settings for the security profile.
Defender *ManagedClusterSecurityProfileDefender `json:"defender,omitempty"`
// ImageCleaner: Image Cleaner settings for the security profile.
ImageCleaner *ManagedClusterSecurityProfileImageCleaner `json:"imageCleaner,omitempty"`
// ImageIntegrity: Image integrity is a feature that works with Azure Policy to verify image integrity by signature. This
// will not have any effect unless Azure Policy is applied to enforce image signatures. See
// https://aka.ms/aks/image-integrity for how to use this feature via policy.
ImageIntegrity *ManagedClusterSecurityProfileImageIntegrity `json:"imageIntegrity,omitempty"`
// NodeRestriction: [Node
// Restriction](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#noderestriction) settings
// for the security profile.
NodeRestriction *ManagedClusterSecurityProfileNodeRestriction `json:"nodeRestriction,omitempty"`
// WorkloadIdentity: Workload identity settings for the security profile. Workload identity enables Kubernetes applications
// to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details.
WorkloadIdentity *ManagedClusterSecurityProfileWorkloadIdentity `json:"workloadIdentity,omitempty"`
}
Security profile for the container service cluster.
type ManagedClusterSecurityProfileDefender ¶
type ManagedClusterSecurityProfileDefender struct {
LogAnalyticsWorkspaceResourceId *string `json:"logAnalyticsWorkspaceResourceId,omitempty"`
// SecurityMonitoring: Microsoft Defender threat detection for Cloud settings for the security profile.
SecurityMonitoring *ManagedClusterSecurityProfileDefenderSecurityMonitoring `json:"securityMonitoring,omitempty"`
}
Microsoft Defender settings for the security profile.
type ManagedClusterSecurityProfileDefenderSecurityMonitoring ¶
type ManagedClusterSecurityProfileDefenderSecurityMonitoring struct {
// Enabled: Whether to enable Defender threat detection
Enabled *bool `json:"enabled,omitempty"`
}
Microsoft Defender settings for the security profile threat detection.
type ManagedClusterSecurityProfileDefenderSecurityMonitoring_STATUS ¶
type ManagedClusterSecurityProfileDefenderSecurityMonitoring_STATUS struct {
// Enabled: Whether to enable Defender threat detection
Enabled *bool `json:"enabled,omitempty"`
}
Microsoft Defender settings for the security profile threat detection.
type ManagedClusterSecurityProfileDefender_STATUS ¶
type ManagedClusterSecurityProfileDefender_STATUS struct {
// LogAnalyticsWorkspaceResourceId: Resource ID of the Log Analytics workspace to be associated with Microsoft Defender.
// When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft
// Defender is disabled, leave the field empty.
LogAnalyticsWorkspaceResourceId *string `json:"logAnalyticsWorkspaceResourceId,omitempty"`
// SecurityMonitoring: Microsoft Defender threat detection for Cloud settings for the security profile.
SecurityMonitoring *ManagedClusterSecurityProfileDefenderSecurityMonitoring_STATUS `json:"securityMonitoring,omitempty"`
}
Microsoft Defender settings for the security profile.
type ManagedClusterSecurityProfileImageCleaner ¶
type ManagedClusterSecurityProfileImageCleaner struct {
// Enabled: Whether to enable Image Cleaner on AKS cluster.
Enabled *bool `json:"enabled,omitempty"`
// IntervalHours: Image Cleaner scanning interval in hours.
IntervalHours *int `json:"intervalHours,omitempty"`
}
Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile.
type ManagedClusterSecurityProfileImageCleaner_STATUS ¶
type ManagedClusterSecurityProfileImageCleaner_STATUS struct {
// Enabled: Whether to enable Image Cleaner on AKS cluster.
Enabled *bool `json:"enabled,omitempty"`
// IntervalHours: Image Cleaner scanning interval in hours.
IntervalHours *int `json:"intervalHours,omitempty"`
}
Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile.
type ManagedClusterSecurityProfileImageIntegrity ¶
type ManagedClusterSecurityProfileImageIntegrity struct {
// Enabled: Whether to enable image integrity. The default value is false.
Enabled *bool `json:"enabled,omitempty"`
}
Image integrity related settings for the security profile.
type ManagedClusterSecurityProfileImageIntegrity_STATUS ¶
type ManagedClusterSecurityProfileImageIntegrity_STATUS struct {
// Enabled: Whether to enable image integrity. The default value is false.
Enabled *bool `json:"enabled,omitempty"`
}
Image integrity related settings for the security profile.
type ManagedClusterSecurityProfileNodeRestriction ¶
type ManagedClusterSecurityProfileNodeRestriction struct {
// Enabled: Whether to enable Node Restriction
Enabled *bool `json:"enabled,omitempty"`
}
Node Restriction settings for the security profile.
type ManagedClusterSecurityProfileNodeRestriction_STATUS ¶
type ManagedClusterSecurityProfileNodeRestriction_STATUS struct {
// Enabled: Whether to enable Node Restriction
Enabled *bool `json:"enabled,omitempty"`
}
Node Restriction settings for the security profile.
type ManagedClusterSecurityProfileWorkloadIdentity ¶
type ManagedClusterSecurityProfileWorkloadIdentity struct {
// Enabled: Whether to enable workload identity.
Enabled *bool `json:"enabled,omitempty"`
}
Workload identity settings for the security profile.
type ManagedClusterSecurityProfileWorkloadIdentity_STATUS ¶
type ManagedClusterSecurityProfileWorkloadIdentity_STATUS struct {
// Enabled: Whether to enable workload identity.
Enabled *bool `json:"enabled,omitempty"`
}
Workload identity settings for the security profile.
type ManagedClusterSecurityProfile_STATUS ¶
type ManagedClusterSecurityProfile_STATUS struct {
// AzureKeyVaultKms: Azure Key Vault [key management
// service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile.
AzureKeyVaultKms *AzureKeyVaultKms_STATUS `json:"azureKeyVaultKms,omitempty"`
// CustomCATrustCertificates: A list of up to 10 base64 encoded CAs that will be added to the trust store on nodes with the
// Custom CA Trust feature enabled. For more information see [Custom CA Trust
// Certificates](https://learn.microsoft.com/en-us/azure/aks/custom-certificate-authority)
CustomCATrustCertificates []string `json:"customCATrustCertificates"`
// Defender: Microsoft Defender settings for the security profile.
Defender *ManagedClusterSecurityProfileDefender_STATUS `json:"defender,omitempty"`
// ImageCleaner: Image Cleaner settings for the security profile.
ImageCleaner *ManagedClusterSecurityProfileImageCleaner_STATUS `json:"imageCleaner,omitempty"`
// ImageIntegrity: Image integrity is a feature that works with Azure Policy to verify image integrity by signature. This
// will not have any effect unless Azure Policy is applied to enforce image signatures. See
// https://aka.ms/aks/image-integrity for how to use this feature via policy.
ImageIntegrity *ManagedClusterSecurityProfileImageIntegrity_STATUS `json:"imageIntegrity,omitempty"`
// NodeRestriction: [Node
// Restriction](https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#noderestriction) settings
// for the security profile.
NodeRestriction *ManagedClusterSecurityProfileNodeRestriction_STATUS `json:"nodeRestriction,omitempty"`
// WorkloadIdentity: Workload identity settings for the security profile. Workload identity enables Kubernetes applications
// to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details.
WorkloadIdentity *ManagedClusterSecurityProfileWorkloadIdentity_STATUS `json:"workloadIdentity,omitempty"`
}
Security profile for the container service cluster.
type ManagedClusterServicePrincipalProfile ¶
type ManagedClusterServicePrincipalProfile struct {
// ClientId: The ID for the service principal.
ClientId *string `json:"clientId,omitempty"`
// Secret: The secret password associated with the service principal in plain text.
Secret *string `json:"secret,omitempty"`
}
Information about a service principal identity for the cluster to use for manipulating Azure APIs.
type ManagedClusterServicePrincipalProfile_STATUS ¶
type ManagedClusterServicePrincipalProfile_STATUS struct {
// ClientId: The ID for the service principal.
ClientId *string `json:"clientId,omitempty"`
}
Information about a service principal identity for the cluster to use for manipulating Azure APIs.
type ManagedClusterStaticEgressGatewayProfile ¶
type ManagedClusterStaticEgressGatewayProfile struct {
// Enabled: Indicates if Static Egress Gateway addon is enabled or not.
Enabled *bool `json:"enabled,omitempty"`
}
The Static Egress Gateway addon configuration for the cluster.
type ManagedClusterStaticEgressGatewayProfile_STATUS ¶
type ManagedClusterStaticEgressGatewayProfile_STATUS struct {
// Enabled: Indicates if Static Egress Gateway addon is enabled or not.
Enabled *bool `json:"enabled,omitempty"`
}
The Static Egress Gateway addon configuration for the cluster.
type ManagedClusterStorageProfile ¶
type ManagedClusterStorageProfile struct {
// BlobCSIDriver: AzureBlob CSI Driver settings for the storage profile.
BlobCSIDriver *ManagedClusterStorageProfileBlobCSIDriver `json:"blobCSIDriver,omitempty"`
// DiskCSIDriver: AzureDisk CSI Driver settings for the storage profile.
DiskCSIDriver *ManagedClusterStorageProfileDiskCSIDriver `json:"diskCSIDriver,omitempty"`
// FileCSIDriver: AzureFile CSI Driver settings for the storage profile.
FileCSIDriver *ManagedClusterStorageProfileFileCSIDriver `json:"fileCSIDriver,omitempty"`
// SnapshotController: Snapshot Controller settings for the storage profile.
SnapshotController *ManagedClusterStorageProfileSnapshotController `json:"snapshotController,omitempty"`
}
Storage profile for the container service cluster.
type ManagedClusterStorageProfileBlobCSIDriver ¶
type ManagedClusterStorageProfileBlobCSIDriver struct {
// Enabled: Whether to enable AzureBlob CSI Driver. The default value is false.
Enabled *bool `json:"enabled,omitempty"`
}
AzureBlob CSI Driver settings for the storage profile.
type ManagedClusterStorageProfileBlobCSIDriver_STATUS ¶
type ManagedClusterStorageProfileBlobCSIDriver_STATUS struct {
// Enabled: Whether to enable AzureBlob CSI Driver. The default value is false.
Enabled *bool `json:"enabled,omitempty"`
}
AzureBlob CSI Driver settings for the storage profile.
type ManagedClusterStorageProfileDiskCSIDriver ¶
type ManagedClusterStorageProfileDiskCSIDriver struct {
// Enabled: Whether to enable AzureDisk CSI Driver. The default value is true.
Enabled *bool `json:"enabled,omitempty"`
// Version: The version of AzureDisk CSI Driver. The default value is v1.
Version *string `json:"version,omitempty"`
}
AzureDisk CSI Driver settings for the storage profile.
type ManagedClusterStorageProfileDiskCSIDriver_STATUS ¶
type ManagedClusterStorageProfileDiskCSIDriver_STATUS struct {
// Enabled: Whether to enable AzureDisk CSI Driver. The default value is true.
Enabled *bool `json:"enabled,omitempty"`
// Version: The version of AzureDisk CSI Driver. The default value is v1.
Version *string `json:"version,omitempty"`
}
AzureDisk CSI Driver settings for the storage profile.
type ManagedClusterStorageProfileFileCSIDriver ¶
type ManagedClusterStorageProfileFileCSIDriver struct {
// Enabled: Whether to enable AzureFile CSI Driver. The default value is true.
Enabled *bool `json:"enabled,omitempty"`
}
AzureFile CSI Driver settings for the storage profile.
type ManagedClusterStorageProfileFileCSIDriver_STATUS ¶
type ManagedClusterStorageProfileFileCSIDriver_STATUS struct {
// Enabled: Whether to enable AzureFile CSI Driver. The default value is true.
Enabled *bool `json:"enabled,omitempty"`
}
AzureFile CSI Driver settings for the storage profile.
type ManagedClusterStorageProfileSnapshotController ¶
type ManagedClusterStorageProfileSnapshotController struct {
// Enabled: Whether to enable Snapshot Controller. The default value is true.
Enabled *bool `json:"enabled,omitempty"`
}
Snapshot Controller settings for the storage profile.
type ManagedClusterStorageProfileSnapshotController_STATUS ¶
type ManagedClusterStorageProfileSnapshotController_STATUS struct {
// Enabled: Whether to enable Snapshot Controller. The default value is true.
Enabled *bool `json:"enabled,omitempty"`
}
Snapshot Controller settings for the storage profile.
type ManagedClusterStorageProfile_STATUS ¶
type ManagedClusterStorageProfile_STATUS struct {
// BlobCSIDriver: AzureBlob CSI Driver settings for the storage profile.
BlobCSIDriver *ManagedClusterStorageProfileBlobCSIDriver_STATUS `json:"blobCSIDriver,omitempty"`
// DiskCSIDriver: AzureDisk CSI Driver settings for the storage profile.
DiskCSIDriver *ManagedClusterStorageProfileDiskCSIDriver_STATUS `json:"diskCSIDriver,omitempty"`
// FileCSIDriver: AzureFile CSI Driver settings for the storage profile.
FileCSIDriver *ManagedClusterStorageProfileFileCSIDriver_STATUS `json:"fileCSIDriver,omitempty"`
// SnapshotController: Snapshot Controller settings for the storage profile.
SnapshotController *ManagedClusterStorageProfileSnapshotController_STATUS `json:"snapshotController,omitempty"`
}
Storage profile for the container service cluster.
type ManagedClusterWindowsProfile ¶
type ManagedClusterWindowsProfile struct {
// AdminPassword: Specifies the password of the administrator account.
// Minimum-length: 8 characters
// Max-length: 123 characters
// Complexity requirements: 3 out of 4 conditions below need to be fulfilled
// Has lower characters
// Has upper characters
// Has a digit
// Has a special character (Regex match [\W_])
// Disallowed values: "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1",
// "Password22", "iloveyou!"
AdminPassword *string `json:"adminPassword,omitempty"`
// AdminUsername: Specifies the name of the administrator account.
// Restriction: Cannot end in "."
// Disallowed values: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123",
// "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server",
// "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".
// Minimum-length: 1 character
// Max-length: 20 characters
AdminUsername *string `json:"adminUsername,omitempty"`
// EnableCSIProxy: For more details on CSI proxy, see the [CSI proxy GitHub
// repo](https://github.com/kubernetes-csi/csi-proxy).
EnableCSIProxy *bool `json:"enableCSIProxy,omitempty"`
// GmsaProfile: The Windows gMSA Profile in the Managed Cluster.
GmsaProfile *WindowsGmsaProfile `json:"gmsaProfile,omitempty"`
// LicenseType: The license type to use for Windows VMs. See [Azure Hybrid User
// Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details.
LicenseType *ManagedClusterWindowsProfile_LicenseType `json:"licenseType,omitempty"`
}
Profile for Windows VMs in the managed cluster.
type ManagedClusterWindowsProfile_LicenseType ¶
type ManagedClusterWindowsProfile_LicenseType string
+kubebuilder:validation:Enum={"None","Windows_Server"}
type ManagedClusterWindowsProfile_LicenseType_STATUS ¶
type ManagedClusterWindowsProfile_LicenseType_STATUS string
type ManagedClusterWindowsProfile_STATUS ¶
type ManagedClusterWindowsProfile_STATUS struct {
// AdminUsername: Specifies the name of the administrator account.
// Restriction: Cannot end in "."
// Disallowed values: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123",
// "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server",
// "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".
// Minimum-length: 1 character
// Max-length: 20 characters
AdminUsername *string `json:"adminUsername,omitempty"`
// EnableCSIProxy: For more details on CSI proxy, see the [CSI proxy GitHub
// repo](https://github.com/kubernetes-csi/csi-proxy).
EnableCSIProxy *bool `json:"enableCSIProxy,omitempty"`
// GmsaProfile: The Windows gMSA Profile in the Managed Cluster.
GmsaProfile *WindowsGmsaProfile_STATUS `json:"gmsaProfile,omitempty"`
// LicenseType: The license type to use for Windows VMs. See [Azure Hybrid User
// Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details.
LicenseType *ManagedClusterWindowsProfile_LicenseType_STATUS `json:"licenseType,omitempty"`
}
Profile for Windows VMs in the managed cluster.
type ManagedClusterWorkloadAutoScalerProfile ¶
type ManagedClusterWorkloadAutoScalerProfile struct {
// Keda: KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile.
Keda *ManagedClusterWorkloadAutoScalerProfileKeda `json:"keda,omitempty"`
VerticalPodAutoscaler *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler `json:"verticalPodAutoscaler,omitempty"`
}
Workload Auto-scaler profile for the managed cluster.
type ManagedClusterWorkloadAutoScalerProfileKeda ¶
type ManagedClusterWorkloadAutoScalerProfileKeda struct {
// Enabled: Whether to enable KEDA.
Enabled *bool `json:"enabled,omitempty"`
}
KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile.
type ManagedClusterWorkloadAutoScalerProfileKeda_STATUS ¶
type ManagedClusterWorkloadAutoScalerProfileKeda_STATUS struct {
// Enabled: Whether to enable KEDA.
Enabled *bool `json:"enabled,omitempty"`
}
KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile.
type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler ¶
type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler struct {
// AddonAutoscaling: Whether VPA add-on is enabled and configured to scale AKS-managed add-ons.
AddonAutoscaling *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling `json:"addonAutoscaling,omitempty"`
// Enabled: Whether to enable VPA add-on in cluster. Default value is false.
Enabled *bool `json:"enabled,omitempty"`
}
type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling ¶
type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling string
+kubebuilder:validation:Enum={"Disabled","Enabled"}
type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling_STATUS ¶
type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling_STATUS string
type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_STATUS ¶
type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_STATUS struct {
// AddonAutoscaling: Whether VPA add-on is enabled and configured to scale AKS-managed add-ons.
AddonAutoscaling *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_AddonAutoscaling_STATUS `json:"addonAutoscaling,omitempty"`
// Enabled: Whether to enable VPA add-on in cluster. Default value is false.
Enabled *bool `json:"enabled,omitempty"`
}
type ManagedClusterWorkloadAutoScalerProfile_STATUS ¶
type ManagedClusterWorkloadAutoScalerProfile_STATUS struct {
// Keda: KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile.
Keda *ManagedClusterWorkloadAutoScalerProfileKeda_STATUS `json:"keda,omitempty"`
VerticalPodAutoscaler *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler_STATUS `json:"verticalPodAutoscaler,omitempty"`
}
Workload Auto-scaler profile for the managed cluster.
type ManagedCluster_STATUS ¶
type ManagedCluster_STATUS struct {
// ETag: Unique read-only string used to implement optimistic concurrency. The eTag value will change when the resource is
// updated. Specify an if-match or if-none-match header with the eTag value for a subsequent request to enable optimistic
// concurrency per the normal etag convention.
ETag *string `json:"eTag,omitempty"`
// ExtendedLocation: The extended location of the Virtual Machine.
ExtendedLocation *ExtendedLocation_STATUS `json:"extendedLocation,omitempty"`
// Id: Fully qualified resource ID for the resource. E.g.
// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
Id *string `json:"id,omitempty"`
// Identity: The identity of the managed cluster, if configured.
Identity *ManagedClusterIdentity_STATUS `json:"identity,omitempty"`
// Kind: This is primarily used to expose different UI experiences in the portal for different kinds
Kind *string `json:"kind,omitempty"`
// Location: The geo-location where the resource lives
Location *string `json:"location,omitempty"`
// Name: The name of the resource
Name *string `json:"name,omitempty"`
// Properties: Properties of a managed cluster.
Properties *ManagedClusterProperties_STATUS `json:"properties,omitempty"`
// Sku: The managed cluster SKU.
Sku *ManagedClusterSKU_STATUS `json:"sku,omitempty"`
// SystemData: Azure Resource Manager metadata containing createdBy and modifiedBy information.
SystemData *SystemData_STATUS `json:"systemData,omitempty"`
// Tags: Resource tags.
Tags map[string]string `json:"tags"`
// Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
Type *string `json:"type,omitempty"`
}
Managed cluster.
type ManagedCluster_Spec ¶
type ManagedCluster_Spec struct {
// ExtendedLocation: The extended location of the Virtual Machine.
ExtendedLocation *ExtendedLocation `json:"extendedLocation,omitempty"`
// Identity: The identity of the managed cluster, if configured.
Identity *ManagedClusterIdentity `json:"identity,omitempty"`
// Kind: This is primarily used to expose different UI experiences in the portal for different kinds
Kind *string `json:"kind,omitempty"`
// Location: The geo-location where the resource lives
Location *string `json:"location,omitempty"`
Name string `json:"name,omitempty"`
// Properties: Properties of a managed cluster.
Properties *ManagedClusterProperties `json:"properties,omitempty"`
// Sku: The managed cluster SKU.
Sku *ManagedClusterSKU `json:"sku,omitempty"`
// Tags: Resource tags.
Tags map[string]string `json:"tags" serializationType:"explicitEmptyCollection"`
}
func (ManagedCluster_Spec) GetAPIVersion ¶
func (cluster ManagedCluster_Spec) GetAPIVersion() string
GetAPIVersion returns the ARM API version of the resource. This is always "2024-04-02-preview"
func (*ManagedCluster_Spec) GetName ¶
func (cluster *ManagedCluster_Spec) GetName() string
GetName returns the Name of the resource
func (*ManagedCluster_Spec) GetType ¶
func (cluster *ManagedCluster_Spec) GetType() string
GetType returns the ARM Type of the resource. This is always "Microsoft.ContainerService/managedClusters"
type ManagedClustersAgentPool_STATUS ¶
type ManagedClustersAgentPool_STATUS struct {
// Id: Resource ID.
Id *string `json:"id,omitempty"`
// Name: The name of the resource that is unique within a resource group. This name can be used to access the resource.
Name *string `json:"name,omitempty"`
// Properties: Properties of an agent pool.
Properties *ManagedClusterAgentPoolProfileProperties_STATUS `json:"properties,omitempty"`
// Type: Resource type
Type *string `json:"type,omitempty"`
}
type ManagedClustersAgentPool_Spec ¶
type ManagedClustersAgentPool_Spec struct {
Name string `json:"name,omitempty"`
// Properties: Properties of an agent pool.
Properties *ManagedClusterAgentPoolProfileProperties `json:"properties,omitempty"`
}
func (ManagedClustersAgentPool_Spec) GetAPIVersion ¶
func (pool ManagedClustersAgentPool_Spec) GetAPIVersion() string
GetAPIVersion returns the ARM API version of the resource. This is always "2024-04-02-preview"
func (*ManagedClustersAgentPool_Spec) GetName ¶
func (pool *ManagedClustersAgentPool_Spec) GetName() string
GetName returns the Name of the resource
func (*ManagedClustersAgentPool_Spec) GetType ¶
func (pool *ManagedClustersAgentPool_Spec) GetType() string
GetType returns the ARM Type of the resource. This is always "Microsoft.ContainerService/managedClusters/agentPools"
type ManualScaleProfile ¶
type ManualScaleProfile struct {
// Count: Number of nodes.
Count *int `json:"count,omitempty"`
// Sizes: The list of allowed vm sizes e.g. ['Standard_E4s_v3', 'Standard_E16s_v3', 'Standard_D16s_v5']. AKS will use the
// first available one when scaling. If a VM size is unavailable (e.g. due to quota or regional capacity reasons), AKS will
// use the next size.
Sizes []string `json:"sizes"`
}
Specifications on number of machines.
type ManualScaleProfile_STATUS ¶
type ManualScaleProfile_STATUS struct {
// Count: Number of nodes.
Count *int `json:"count,omitempty"`
// Sizes: The list of allowed vm sizes e.g. ['Standard_E4s_v3', 'Standard_E16s_v3', 'Standard_D16s_v5']. AKS will use the
// first available one when scaling. If a VM size is unavailable (e.g. due to quota or regional capacity reasons), AKS will
// use the next size.
Sizes []string `json:"sizes"`
}
Specifications on number of machines.
type NetworkDataplane ¶
type NetworkDataplane string
Network dataplane used in the Kubernetes cluster. +kubebuilder:validation:Enum={"azure","cilium"}
type NetworkDataplane_STATUS ¶
type NetworkDataplane_STATUS string
Network dataplane used in the Kubernetes cluster.
type NetworkMode ¶
type NetworkMode string
This cannot be specified if networkPlugin is anything other than 'azure'. +kubebuilder:validation:Enum={"bridge","transparent"}
type NetworkMode_STATUS ¶
type NetworkMode_STATUS string
This cannot be specified if networkPlugin is anything other than 'azure'.
type NetworkPlugin ¶
type NetworkPlugin string
Network plugin used for building the Kubernetes network. +kubebuilder:validation:Enum={"azure","kubenet","none"}
type NetworkPluginMode ¶
type NetworkPluginMode string
The mode the network plugin should use. +kubebuilder:validation:Enum={"overlay"}
type NetworkPluginMode_STATUS ¶
type NetworkPluginMode_STATUS string
The mode the network plugin should use.
type NetworkPlugin_STATUS ¶
type NetworkPlugin_STATUS string
Network plugin used for building the Kubernetes network.
type NetworkPolicy ¶
type NetworkPolicy string
Network policy used for building the Kubernetes network. +kubebuilder:validation:Enum={"azure","calico","cilium","none"}
type NetworkPolicy_STATUS ¶
type NetworkPolicy_STATUS string
Network policy used for building the Kubernetes network.
type OSDiskType ¶
type OSDiskType string
The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os). +kubebuilder:validation:Enum={"Ephemeral","Managed"}
type OSDiskType_STATUS ¶
type OSDiskType_STATUS string
The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os).
type OSSKU ¶
type OSSKU string
Specifies the OS SKU used by the agent pool. If not specified, the default is Ubuntu if OSType=Linux or Windows2019 if OSType=Windows. And the default Windows OSSKU will be changed to Windows2022 after Windows2019 is deprecated. +kubebuilder:validation:Enum={"AzureLinux","CBLMariner","Mariner","Ubuntu","Windows2019","Windows2022","WindowsAnnual"}
type OSSKU_STATUS ¶
type OSSKU_STATUS string
Specifies the OS SKU used by the agent pool. If not specified, the default is Ubuntu if OSType=Linux or Windows2019 if OSType=Windows. And the default Windows OSSKU will be changed to Windows2022 after Windows2019 is deprecated.
type OSType ¶
type OSType string
The operating system type. The default is Linux. +kubebuilder:validation:Enum={"Linux","Windows"}
type PodIPAllocationMode ¶
type PodIPAllocationMode string
The IP allocation mode for pods in the agent pool. Must be used with podSubnetId. The default is 'DynamicIndividual'. +kubebuilder:validation:Enum={"DynamicIndividual","StaticBlock"}
type PodIPAllocationMode_STATUS ¶
type PodIPAllocationMode_STATUS string
The IP allocation mode for pods in the agent pool. Must be used with podSubnetId. The default is 'DynamicIndividual'.
type PodLinkLocalAccess ¶
type PodLinkLocalAccess string
Defines access to special link local addresses (Azure Instance Metadata Service, aka IMDS) for pods with hostNetwork=false. If not specified, the default is 'IMDS'. +kubebuilder:validation:Enum={"IMDS","None"}
type PodLinkLocalAccess_STATUS ¶
type PodLinkLocalAccess_STATUS string
Defines access to special link local addresses (Azure Instance Metadata Service, aka IMDS) for pods with hostNetwork=false. If not specified, the default is 'IMDS'.
type PortRange ¶
type PortRange struct {
// PortEnd: The maximum port that is included in the range. It should be ranged from 1 to 65535, and be greater than or
// equal to portStart.
PortEnd *int `json:"portEnd,omitempty"`
// PortStart: The minimum port that is included in the range. It should be ranged from 1 to 65535, and be less than or
// equal to portEnd.
PortStart *int `json:"portStart,omitempty"`
// Protocol: The network protocol of the port.
Protocol *PortRange_Protocol `json:"protocol,omitempty"`
}
The port range.
type PortRange_Protocol_STATUS ¶
type PortRange_Protocol_STATUS string
type PortRange_STATUS ¶
type PortRange_STATUS struct {
// PortEnd: The maximum port that is included in the range. It should be ranged from 1 to 65535, and be greater than or
// equal to portStart.
PortEnd *int `json:"portEnd,omitempty"`
// PortStart: The minimum port that is included in the range. It should be ranged from 1 to 65535, and be less than or
// equal to portEnd.
PortStart *int `json:"portStart,omitempty"`
// Protocol: The network protocol of the port.
Protocol *PortRange_Protocol_STATUS `json:"protocol,omitempty"`
}
The port range.
type PowerState ¶
type PowerState struct {
// Code: Tells whether the cluster is Running or Stopped
Code *PowerState_Code `json:"code,omitempty"`
}
Describes the Power State of the cluster
type PowerState_Code ¶
type PowerState_Code string
+kubebuilder:validation:Enum={"Running","Stopped"}
type PowerState_Code_STATUS ¶
type PowerState_Code_STATUS string
type PowerState_STATUS ¶
type PowerState_STATUS struct {
// Code: Tells whether the cluster is Running or Stopped
Code *PowerState_Code_STATUS `json:"code,omitempty"`
}
Describes the Power State of the cluster
type PrivateLinkResource ¶
type PrivateLinkResource struct {
// GroupId: The group ID of the resource.
GroupId *string `json:"groupId,omitempty"`
Id *string `json:"id,omitempty"`
// Name: The name of the private link resource.
Name *string `json:"name,omitempty"`
// RequiredMembers: The RequiredMembers of the resource
RequiredMembers []string `json:"requiredMembers"`
// Type: The resource type.
Type *string `json:"type,omitempty"`
}
A private link resource
type PrivateLinkResource_STATUS ¶
type PrivateLinkResource_STATUS struct {
// GroupId: The group ID of the resource.
GroupId *string `json:"groupId,omitempty"`
// Id: The ID of the private link resource.
Id *string `json:"id,omitempty"`
// Name: The name of the private link resource.
Name *string `json:"name,omitempty"`
// PrivateLinkServiceID: The private link service ID of the resource, this field is exposed only to NRP internally.
PrivateLinkServiceID *string `json:"privateLinkServiceID,omitempty"`
// RequiredMembers: The RequiredMembers of the resource
RequiredMembers []string `json:"requiredMembers"`
// Type: The resource type.
Type *string `json:"type,omitempty"`
}
A private link resource
type ResourceReference ¶
type ResourceReference struct {
Id *string `json:"id,omitempty"`
}
A reference to an Azure resource.
type ResourceReference_STATUS ¶
type ResourceReference_STATUS struct {
// Id: The fully qualified Azure resource id.
Id *string `json:"id,omitempty"`
}
A reference to an Azure resource.
type SafeguardsProfile ¶
type SafeguardsProfile struct {
// ExcludedNamespaces: List of namespaces excluded from Safeguards checks
ExcludedNamespaces []string `json:"excludedNamespaces"`
// Level: The Safeguards level to be used. By default, Safeguards is enabled for all namespaces except those that AKS
// excludes via systemExcludedNamespaces
Level *SafeguardsProfile_Level `json:"level,omitempty"`
// Version: The version of constraints to use
Version *string `json:"version,omitempty"`
}
The Safeguards profile.
type SafeguardsProfile_Level ¶
type SafeguardsProfile_Level string
+kubebuilder:validation:Enum={"Enforcement","Off","Warning"}
type SafeguardsProfile_Level_STATUS ¶
type SafeguardsProfile_Level_STATUS string
type SafeguardsProfile_STATUS ¶
type SafeguardsProfile_STATUS struct {
// ExcludedNamespaces: List of namespaces excluded from Safeguards checks
ExcludedNamespaces []string `json:"excludedNamespaces"`
// Level: The Safeguards level to be used. By default, Safeguards is enabled for all namespaces except those that AKS
// excludes via systemExcludedNamespaces
Level *SafeguardsProfile_Level_STATUS `json:"level,omitempty"`
// SystemExcludedNamespaces: List of namespaces specified by AKS to be excluded from Safeguards
SystemExcludedNamespaces []string `json:"systemExcludedNamespaces"`
// Version: The version of constraints to use
Version *string `json:"version,omitempty"`
}
The Safeguards profile.
type ScaleDownMode ¶
type ScaleDownMode string
Describes how VMs are added to or removed from Agent Pools. See [billing states](https://docs.microsoft.com/azure/virtual-machines/states-billing). +kubebuilder:validation:Enum={"Deallocate","Delete"}
type ScaleDownMode_STATUS ¶
type ScaleDownMode_STATUS string
Describes how VMs are added to or removed from Agent Pools. See [billing states](https://docs.microsoft.com/azure/virtual-machines/states-billing).
type ScaleProfile ¶
type ScaleProfile struct {
// Autoscale: Specifications on how to auto-scale the VirtualMachines agent pool within a predefined size range. Currently,
// at most one AutoScaleProfile is allowed.
Autoscale []AutoScaleProfile `json:"autoscale"`
// Manual: Specifications on how to scale the VirtualMachines agent pool to a fixed size.
Manual []ManualScaleProfile `json:"manual"`
}
Specifications on how to scale a VirtualMachines agent pool.
type ScaleProfile_STATUS ¶
type ScaleProfile_STATUS struct {
// Autoscale: Specifications on how to auto-scale the VirtualMachines agent pool within a predefined size range. Currently,
// at most one AutoScaleProfile is allowed.
Autoscale []AutoScaleProfile_STATUS `json:"autoscale"`
// Manual: Specifications on how to scale the VirtualMachines agent pool to a fixed size.
Manual []ManualScaleProfile_STATUS `json:"manual"`
}
Specifications on how to scale a VirtualMachines agent pool.
type ScaleSetEvictionPolicy ¶
type ScaleSetEvictionPolicy string
The eviction policy specifies what to do with the VM when it is evicted. The default is Delete. For more information about eviction see [spot VMs](https://docs.microsoft.com/azure/virtual-machines/spot-vms) +kubebuilder:validation:Enum={"Deallocate","Delete"}
type ScaleSetEvictionPolicy_STATUS ¶
type ScaleSetEvictionPolicy_STATUS string
The eviction policy specifies what to do with the VM when it is evicted. The default is Delete. For more information about eviction see [spot VMs](https://docs.microsoft.com/azure/virtual-machines/spot-vms)
type ScaleSetPriority ¶
type ScaleSetPriority string
The Virtual Machine Scale Set priority. +kubebuilder:validation:Enum={"Regular","Spot"}
type ScaleSetPriority_STATUS ¶
type ScaleSetPriority_STATUS string
The Virtual Machine Scale Set priority.
type ServiceMeshProfile ¶
type ServiceMeshProfile struct {
// Istio: Istio service mesh configuration.
Istio *IstioServiceMesh `json:"istio,omitempty"`
// Mode: Mode of the service mesh.
Mode *ServiceMeshProfile_Mode `json:"mode,omitempty"`
}
Service mesh profile for a managed cluster.
type ServiceMeshProfile_Mode ¶
type ServiceMeshProfile_Mode string
+kubebuilder:validation:Enum={"Disabled","Istio"}
type ServiceMeshProfile_Mode_STATUS ¶
type ServiceMeshProfile_Mode_STATUS string
type ServiceMeshProfile_STATUS ¶
type ServiceMeshProfile_STATUS struct {
// Istio: Istio service mesh configuration.
Istio *IstioServiceMesh_STATUS `json:"istio,omitempty"`
// Mode: Mode of the service mesh.
Mode *ServiceMeshProfile_Mode_STATUS `json:"mode,omitempty"`
}
Service mesh profile for a managed cluster.
type SysctlConfig ¶
type SysctlConfig struct {
// FsAioMaxNr: Sysctl setting fs.aio-max-nr.
FsAioMaxNr *int `json:"fsAioMaxNr,omitempty"`
// FsFileMax: Sysctl setting fs.file-max.
FsFileMax *int `json:"fsFileMax,omitempty"`
// FsInotifyMaxUserWatches: Sysctl setting fs.inotify.max_user_watches.
FsInotifyMaxUserWatches *int `json:"fsInotifyMaxUserWatches,omitempty"`
// FsNrOpen: Sysctl setting fs.nr_open.
FsNrOpen *int `json:"fsNrOpen,omitempty"`
// KernelThreadsMax: Sysctl setting kernel.threads-max.
KernelThreadsMax *int `json:"kernelThreadsMax,omitempty"`
// NetCoreNetdevMaxBacklog: Sysctl setting net.core.netdev_max_backlog.
NetCoreNetdevMaxBacklog *int `json:"netCoreNetdevMaxBacklog,omitempty"`
// NetCoreOptmemMax: Sysctl setting net.core.optmem_max.
NetCoreOptmemMax *int `json:"netCoreOptmemMax,omitempty"`
// NetCoreRmemDefault: Sysctl setting net.core.rmem_default.
NetCoreRmemDefault *int `json:"netCoreRmemDefault,omitempty"`
// NetCoreRmemMax: Sysctl setting net.core.rmem_max.
NetCoreRmemMax *int `json:"netCoreRmemMax,omitempty"`
// NetCoreSomaxconn: Sysctl setting net.core.somaxconn.
NetCoreSomaxconn *int `json:"netCoreSomaxconn,omitempty"`
// NetCoreWmemDefault: Sysctl setting net.core.wmem_default.
NetCoreWmemDefault *int `json:"netCoreWmemDefault,omitempty"`
// NetCoreWmemMax: Sysctl setting net.core.wmem_max.
NetCoreWmemMax *int `json:"netCoreWmemMax,omitempty"`
// NetIpv4IpLocalPortRange: Sysctl setting net.ipv4.ip_local_port_range.
NetIpv4IpLocalPortRange *string `json:"netIpv4IpLocalPortRange,omitempty"`
// NetIpv4NeighDefaultGcThresh1: Sysctl setting net.ipv4.neigh.default.gc_thresh1.
NetIpv4NeighDefaultGcThresh1 *int `json:"netIpv4NeighDefaultGcThresh1,omitempty"`
// NetIpv4NeighDefaultGcThresh2: Sysctl setting net.ipv4.neigh.default.gc_thresh2.
NetIpv4NeighDefaultGcThresh2 *int `json:"netIpv4NeighDefaultGcThresh2,omitempty"`
// NetIpv4NeighDefaultGcThresh3: Sysctl setting net.ipv4.neigh.default.gc_thresh3.
NetIpv4NeighDefaultGcThresh3 *int `json:"netIpv4NeighDefaultGcThresh3,omitempty"`
// NetIpv4TcpFinTimeout: Sysctl setting net.ipv4.tcp_fin_timeout.
NetIpv4TcpFinTimeout *int `json:"netIpv4TcpFinTimeout,omitempty"`
// NetIpv4TcpKeepaliveProbes: Sysctl setting net.ipv4.tcp_keepalive_probes.
NetIpv4TcpKeepaliveProbes *int `json:"netIpv4TcpKeepaliveProbes,omitempty"`
// NetIpv4TcpKeepaliveTime: Sysctl setting net.ipv4.tcp_keepalive_time.
NetIpv4TcpKeepaliveTime *int `json:"netIpv4TcpKeepaliveTime,omitempty"`
// NetIpv4TcpMaxSynBacklog: Sysctl setting net.ipv4.tcp_max_syn_backlog.
NetIpv4TcpMaxSynBacklog *int `json:"netIpv4TcpMaxSynBacklog,omitempty"`
// NetIpv4TcpMaxTwBuckets: Sysctl setting net.ipv4.tcp_max_tw_buckets.
NetIpv4TcpMaxTwBuckets *int `json:"netIpv4TcpMaxTwBuckets,omitempty"`
// NetIpv4TcpTwReuse: Sysctl setting net.ipv4.tcp_tw_reuse.
NetIpv4TcpTwReuse *bool `json:"netIpv4TcpTwReuse,omitempty"`
// NetIpv4TcpkeepaliveIntvl: Sysctl setting net.ipv4.tcp_keepalive_intvl.
NetIpv4TcpkeepaliveIntvl *int `json:"netIpv4TcpkeepaliveIntvl,omitempty"`
// NetNetfilterNfConntrackBuckets: Sysctl setting net.netfilter.nf_conntrack_buckets.
NetNetfilterNfConntrackBuckets *int `json:"netNetfilterNfConntrackBuckets,omitempty"`
// NetNetfilterNfConntrackMax: Sysctl setting net.netfilter.nf_conntrack_max.
NetNetfilterNfConntrackMax *int `json:"netNetfilterNfConntrackMax,omitempty"`
// VmMaxMapCount: Sysctl setting vm.max_map_count.
VmMaxMapCount *int `json:"vmMaxMapCount,omitempty"`
// VmSwappiness: Sysctl setting vm.swappiness.
VmSwappiness *int `json:"vmSwappiness,omitempty"`
// VmVfsCachePressure: Sysctl setting vm.vfs_cache_pressure.
VmVfsCachePressure *int `json:"vmVfsCachePressure,omitempty"`
}
Sysctl settings for Linux agent nodes.
type SysctlConfig_STATUS ¶
type SysctlConfig_STATUS struct {
// FsAioMaxNr: Sysctl setting fs.aio-max-nr.
FsAioMaxNr *int `json:"fsAioMaxNr,omitempty"`
// FsFileMax: Sysctl setting fs.file-max.
FsFileMax *int `json:"fsFileMax,omitempty"`
// FsInotifyMaxUserWatches: Sysctl setting fs.inotify.max_user_watches.
FsInotifyMaxUserWatches *int `json:"fsInotifyMaxUserWatches,omitempty"`
// FsNrOpen: Sysctl setting fs.nr_open.
FsNrOpen *int `json:"fsNrOpen,omitempty"`
// KernelThreadsMax: Sysctl setting kernel.threads-max.
KernelThreadsMax *int `json:"kernelThreadsMax,omitempty"`
// NetCoreNetdevMaxBacklog: Sysctl setting net.core.netdev_max_backlog.
NetCoreNetdevMaxBacklog *int `json:"netCoreNetdevMaxBacklog,omitempty"`
// NetCoreOptmemMax: Sysctl setting net.core.optmem_max.
NetCoreOptmemMax *int `json:"netCoreOptmemMax,omitempty"`
// NetCoreRmemDefault: Sysctl setting net.core.rmem_default.
NetCoreRmemDefault *int `json:"netCoreRmemDefault,omitempty"`
// NetCoreRmemMax: Sysctl setting net.core.rmem_max.
NetCoreRmemMax *int `json:"netCoreRmemMax,omitempty"`
// NetCoreSomaxconn: Sysctl setting net.core.somaxconn.
NetCoreSomaxconn *int `json:"netCoreSomaxconn,omitempty"`
// NetCoreWmemDefault: Sysctl setting net.core.wmem_default.
NetCoreWmemDefault *int `json:"netCoreWmemDefault,omitempty"`
// NetCoreWmemMax: Sysctl setting net.core.wmem_max.
NetCoreWmemMax *int `json:"netCoreWmemMax,omitempty"`
// NetIpv4IpLocalPortRange: Sysctl setting net.ipv4.ip_local_port_range.
NetIpv4IpLocalPortRange *string `json:"netIpv4IpLocalPortRange,omitempty"`
// NetIpv4NeighDefaultGcThresh1: Sysctl setting net.ipv4.neigh.default.gc_thresh1.
NetIpv4NeighDefaultGcThresh1 *int `json:"netIpv4NeighDefaultGcThresh1,omitempty"`
// NetIpv4NeighDefaultGcThresh2: Sysctl setting net.ipv4.neigh.default.gc_thresh2.
NetIpv4NeighDefaultGcThresh2 *int `json:"netIpv4NeighDefaultGcThresh2,omitempty"`
// NetIpv4NeighDefaultGcThresh3: Sysctl setting net.ipv4.neigh.default.gc_thresh3.
NetIpv4NeighDefaultGcThresh3 *int `json:"netIpv4NeighDefaultGcThresh3,omitempty"`
// NetIpv4TcpFinTimeout: Sysctl setting net.ipv4.tcp_fin_timeout.
NetIpv4TcpFinTimeout *int `json:"netIpv4TcpFinTimeout,omitempty"`
// NetIpv4TcpKeepaliveProbes: Sysctl setting net.ipv4.tcp_keepalive_probes.
NetIpv4TcpKeepaliveProbes *int `json:"netIpv4TcpKeepaliveProbes,omitempty"`
// NetIpv4TcpKeepaliveTime: Sysctl setting net.ipv4.tcp_keepalive_time.
NetIpv4TcpKeepaliveTime *int `json:"netIpv4TcpKeepaliveTime,omitempty"`
// NetIpv4TcpMaxSynBacklog: Sysctl setting net.ipv4.tcp_max_syn_backlog.
NetIpv4TcpMaxSynBacklog *int `json:"netIpv4TcpMaxSynBacklog,omitempty"`
// NetIpv4TcpMaxTwBuckets: Sysctl setting net.ipv4.tcp_max_tw_buckets.
NetIpv4TcpMaxTwBuckets *int `json:"netIpv4TcpMaxTwBuckets,omitempty"`
// NetIpv4TcpTwReuse: Sysctl setting net.ipv4.tcp_tw_reuse.
NetIpv4TcpTwReuse *bool `json:"netIpv4TcpTwReuse,omitempty"`
// NetIpv4TcpkeepaliveIntvl: Sysctl setting net.ipv4.tcp_keepalive_intvl.
NetIpv4TcpkeepaliveIntvl *int `json:"netIpv4TcpkeepaliveIntvl,omitempty"`
// NetNetfilterNfConntrackBuckets: Sysctl setting net.netfilter.nf_conntrack_buckets.
NetNetfilterNfConntrackBuckets *int `json:"netNetfilterNfConntrackBuckets,omitempty"`
// NetNetfilterNfConntrackMax: Sysctl setting net.netfilter.nf_conntrack_max.
NetNetfilterNfConntrackMax *int `json:"netNetfilterNfConntrackMax,omitempty"`
// VmMaxMapCount: Sysctl setting vm.max_map_count.
VmMaxMapCount *int `json:"vmMaxMapCount,omitempty"`
// VmSwappiness: Sysctl setting vm.swappiness.
VmSwappiness *int `json:"vmSwappiness,omitempty"`
// VmVfsCachePressure: Sysctl setting vm.vfs_cache_pressure.
VmVfsCachePressure *int `json:"vmVfsCachePressure,omitempty"`
}
Sysctl settings for Linux agent nodes.
type SystemData_CreatedByType_STATUS ¶
type SystemData_CreatedByType_STATUS string
type SystemData_LastModifiedByType_STATUS ¶
type SystemData_LastModifiedByType_STATUS string
type SystemData_STATUS ¶
type SystemData_STATUS struct {
// CreatedAt: The timestamp of resource creation (UTC).
CreatedAt *string `json:"createdAt,omitempty"`
// CreatedBy: The identity that created the resource.
CreatedBy *string `json:"createdBy,omitempty"`
// CreatedByType: The type of identity that created the resource.
CreatedByType *SystemData_CreatedByType_STATUS `json:"createdByType,omitempty"`
// LastModifiedAt: The timestamp of resource last modification (UTC)
LastModifiedAt *string `json:"lastModifiedAt,omitempty"`
// LastModifiedBy: The identity that last modified the resource.
LastModifiedBy *string `json:"lastModifiedBy,omitempty"`
// LastModifiedByType: The type of identity that last modified the resource.
LastModifiedByType *SystemData_LastModifiedByType_STATUS `json:"lastModifiedByType,omitempty"`
}
Metadata pertaining to creation and last modification of the resource.
type TrustedAccessRoleBindingProperties ¶
type TrustedAccessRoleBindingProperties struct {
// Roles: A list of roles to bind, each item is a resource type qualified role name. For example:
// 'Microsoft.MachineLearningServices/workspaces/reader'.
Roles []string `json:"roles"`
SourceResourceId *string `json:"sourceResourceId,omitempty"`
}
Properties for trusted access role binding
type TrustedAccessRoleBindingProperties_ProvisioningState_STATUS ¶
type TrustedAccessRoleBindingProperties_ProvisioningState_STATUS string
type TrustedAccessRoleBindingProperties_STATUS ¶
type TrustedAccessRoleBindingProperties_STATUS struct {
// ProvisioningState: The current provisioning state of trusted access role binding.
ProvisioningState *TrustedAccessRoleBindingProperties_ProvisioningState_STATUS `json:"provisioningState,omitempty"`
// Roles: A list of roles to bind, each item is a resource type qualified role name. For example:
// 'Microsoft.MachineLearningServices/workspaces/reader'.
Roles []string `json:"roles"`
// SourceResourceId: The ARM resource ID of source resource that trusted access is configured for.
SourceResourceId *string `json:"sourceResourceId,omitempty"`
}
Properties for trusted access role binding
type TrustedAccessRoleBinding_STATUS ¶
type TrustedAccessRoleBinding_STATUS struct {
// Id: Fully qualified resource ID for the resource. E.g.
// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
Id *string `json:"id,omitempty"`
// Name: The name of the resource
Name *string `json:"name,omitempty"`
// Properties: Properties for trusted access role binding
Properties *TrustedAccessRoleBindingProperties_STATUS `json:"properties,omitempty"`
// SystemData: Azure Resource Manager metadata containing createdBy and modifiedBy information.
SystemData *SystemData_STATUS `json:"systemData,omitempty"`
// Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
Type *string `json:"type,omitempty"`
}
type TrustedAccessRoleBinding_Spec ¶
type TrustedAccessRoleBinding_Spec struct {
Name string `json:"name,omitempty"`
// Properties: Properties for trusted access role binding
Properties *TrustedAccessRoleBindingProperties `json:"properties,omitempty"`
}
func (TrustedAccessRoleBinding_Spec) GetAPIVersion ¶
func (binding TrustedAccessRoleBinding_Spec) GetAPIVersion() string
GetAPIVersion returns the ARM API version of the resource. This is always "2024-04-02-preview"
func (*TrustedAccessRoleBinding_Spec) GetName ¶
func (binding *TrustedAccessRoleBinding_Spec) GetName() string
GetName returns the Name of the resource
func (*TrustedAccessRoleBinding_Spec) GetType ¶
func (binding *TrustedAccessRoleBinding_Spec) GetType() string
GetType returns the ARM Type of the resource. This is always "Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings"
type UpgradeOverrideSettings ¶
type UpgradeOverrideSettings struct {
// ForceUpgrade: Whether to force upgrade the cluster. Note that this option instructs upgrade operation to bypass upgrade
// protections such as checking for deprecated API usage. Enable this option only with caution.
ForceUpgrade *bool `json:"forceUpgrade,omitempty"`
// Until: Until when the overrides are effective. Note that this only matches the start time of an upgrade, and the
// effectiveness won't change once an upgrade starts even if the `until` expires as upgrade proceeds. This field is not set
// by default. It must be set for the overrides to take effect.
Until *string `json:"until,omitempty"`
}
Settings for overrides when upgrading a cluster.
type UpgradeOverrideSettings_STATUS ¶
type UpgradeOverrideSettings_STATUS struct {
// ForceUpgrade: Whether to force upgrade the cluster. Note that this option instructs upgrade operation to bypass upgrade
// protections such as checking for deprecated API usage. Enable this option only with caution.
ForceUpgrade *bool `json:"forceUpgrade,omitempty"`
// Until: Until when the overrides are effective. Note that this only matches the start time of an upgrade, and the
// effectiveness won't change once an upgrade starts even if the `until` expires as upgrade proceeds. This field is not set
// by default. It must be set for the overrides to take effect.
Until *string `json:"until,omitempty"`
}
Settings for overrides when upgrading a cluster.
type UserAssignedIdentity ¶
type UserAssignedIdentity struct {
// ClientId: The client ID of the user assigned identity.
ClientId *string `json:"clientId,omitempty"`
// ObjectId: The object ID of the user assigned identity.
ObjectId *string `json:"objectId,omitempty"`
ResourceId *string `json:"resourceId,omitempty"`
}
Details about a user assigned identity.
type UserAssignedIdentityDetails ¶
type UserAssignedIdentityDetails struct {
}
Information about the user assigned identity for the resource
type UserAssignedIdentity_STATUS ¶
type UserAssignedIdentity_STATUS struct {
// ClientId: The client ID of the user assigned identity.
ClientId *string `json:"clientId,omitempty"`
// ObjectId: The object ID of the user assigned identity.
ObjectId *string `json:"objectId,omitempty"`
// ResourceId: The resource ID of the user assigned identity.
ResourceId *string `json:"resourceId,omitempty"`
}
Details about a user assigned identity.
type VirtualMachineNodes ¶
type VirtualMachineNodes struct {
// Count: Number of nodes.
Count *int `json:"count,omitempty"`
// Size: The VM size of the agents used to host this group of nodes.
Size *string `json:"size,omitempty"`
}
Current status on a group of nodes of the same vm size.
type VirtualMachineNodes_STATUS ¶
type VirtualMachineNodes_STATUS struct {
// Count: Number of nodes.
Count *int `json:"count,omitempty"`
// Size: The VM size of the agents used to host this group of nodes.
Size *string `json:"size,omitempty"`
}
Current status on a group of nodes of the same vm size.
type VirtualMachinesProfile ¶
type VirtualMachinesProfile struct {
// Scale: Specifications on how to scale a VirtualMachines agent pool.
Scale *ScaleProfile `json:"scale,omitempty"`
}
Specifications on VirtualMachines agent pool.
type VirtualMachinesProfile_STATUS ¶
type VirtualMachinesProfile_STATUS struct {
// Scale: Specifications on how to scale a VirtualMachines agent pool.
Scale *ScaleProfile_STATUS `json:"scale,omitempty"`
}
Specifications on VirtualMachines agent pool.
type WindowsGmsaProfile ¶
type WindowsGmsaProfile struct {
// DnsServer: Specifies the DNS server for Windows gMSA.
// Set it to empty if you have configured the DNS server in the vnet which is used to create the managed cluster.
DnsServer *string `json:"dnsServer,omitempty"`
// Enabled: Specifies whether to enable Windows gMSA in the managed cluster.
Enabled *bool `json:"enabled,omitempty"`
// RootDomainName: Specifies the root domain name for Windows gMSA.
// Set it to empty if you have configured the DNS server in the vnet which is used to create the managed cluster.
RootDomainName *string `json:"rootDomainName,omitempty"`
}
Windows gMSA Profile in the managed cluster.
type WindowsGmsaProfile_STATUS ¶
type WindowsGmsaProfile_STATUS struct {
// DnsServer: Specifies the DNS server for Windows gMSA.
// Set it to empty if you have configured the DNS server in the vnet which is used to create the managed cluster.
DnsServer *string `json:"dnsServer,omitempty"`
// Enabled: Specifies whether to enable Windows gMSA in the managed cluster.
Enabled *bool `json:"enabled,omitempty"`
// RootDomainName: Specifies the root domain name for Windows gMSA.
// Set it to empty if you have configured the DNS server in the vnet which is used to create the managed cluster.
RootDomainName *string `json:"rootDomainName,omitempty"`
}
Windows gMSA Profile in the managed cluster.
type WorkloadRuntime ¶
type WorkloadRuntime string
Determines the type of workload a node can run. +kubebuilder:validation:Enum={"KataMshvVmIsolation","OCIContainer","WasmWasi"}
type WorkloadRuntime_STATUS ¶
type WorkloadRuntime_STATUS string
Determines the type of workload a node can run.