sigs.k8s.io/cluster-api-provider-azure@v1.14.3/config/crd/bases/infrastructure.cluster.x-k8s.io_azuremanagedcontrolplanetemplates.yaml (about)

     1  ---
     2  apiVersion: apiextensions.k8s.io/v1
     3  kind: CustomResourceDefinition
     4  metadata:
     5    annotations:
     6      controller-gen.kubebuilder.io/version: v0.13.0
     7    name: azuremanagedcontrolplanetemplates.infrastructure.cluster.x-k8s.io
     8  spec:
     9    group: infrastructure.cluster.x-k8s.io
    10    names:
    11      categories:
    12      - cluster-api
    13      kind: AzureManagedControlPlaneTemplate
    14      listKind: AzureManagedControlPlaneTemplateList
    15      plural: azuremanagedcontrolplanetemplates
    16      shortNames:
    17      - amcpt
    18      singular: azuremanagedcontrolplanetemplate
    19    scope: Namespaced
    20    versions:
    21    - name: v1beta1
    22      schema:
    23        openAPIV3Schema:
    24          description: AzureManagedControlPlaneTemplate is the Schema for the AzureManagedControlPlaneTemplates
    25            API.
    26          properties:
    27            apiVersion:
    28              description: 'APIVersion defines the versioned schema of this representation
    29                of an object. Servers should convert recognized schemas to the latest
    30                internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
    31              type: string
    32            kind:
    33              description: 'Kind is a string value representing the REST resource this
    34                object represents. Servers may infer this from the endpoint the client
    35                submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
    36              type: string
    37            metadata:
    38              type: object
    39            spec:
    40              description: AzureManagedControlPlaneTemplateSpec defines the desired
    41                state of AzureManagedControlPlaneTemplate.
    42              properties:
    43                template:
    44                  description: AzureManagedControlPlaneTemplateResource describes the
    45                    data needed to create an AzureManagedCluster from a template.
    46                  properties:
    47                    spec:
    48                      description: AzureManagedControlPlaneTemplateResourceSpec specifies
    49                        an Azure managed control plane template resource.
    50                      properties:
    51                        aadProfile:
    52                          description: AadProfile is Azure Active Directory configuration
    53                            to integrate with AKS for aad authentication.
    54                          properties:
    55                            adminGroupObjectIDs:
    56                              description: AdminGroupObjectIDs - AAD group object IDs
    57                                that will have admin role of the cluster.
    58                              items:
    59                                type: string
    60                              type: array
    61                            managed:
    62                              description: Managed - Whether to enable managed AAD.
    63                              type: boolean
    64                          required:
    65                          - adminGroupObjectIDs
    66                          - managed
    67                          type: object
    68                        additionalTags:
    69                          additionalProperties:
    70                            type: string
    71                          description: AdditionalTags is an optional set of tags to
    72                            add to Azure resources managed by the Azure provider, in
    73                            addition to the ones added by default.
    74                          type: object
    75                        addonProfiles:
    76                          description: AddonProfiles are the profiles of managed cluster
    77                            add-on.
    78                          items:
    79                            description: AddonProfile represents a managed cluster add-on.
    80                            properties:
    81                              config:
    82                                additionalProperties:
    83                                  type: string
    84                                description: Config - Key-value pairs for configuring
    85                                  the add-on.
    86                                type: object
    87                              enabled:
    88                                description: Enabled - Whether the add-on is enabled
    89                                  or not.
    90                                type: boolean
    91                              name:
    92                                description: Name - The name of the managed cluster
    93                                  add-on.
    94                                type: string
    95                            required:
    96                            - enabled
    97                            - name
    98                            type: object
    99                          type: array
   100                        apiServerAccessProfile:
   101                          description: APIServerAccessProfile is the access profile
   102                            for AKS API server. Immutable except for `authorizedIPRanges`.
   103                          properties:
   104                            authorizedIPRanges:
   105                              description: AuthorizedIPRanges - Authorized IP Ranges
   106                                to kubernetes API server.
   107                              items:
   108                                type: string
   109                              type: array
   110                            enablePrivateCluster:
   111                              description: EnablePrivateCluster indicates whether to
   112                                create the cluster as a private cluster or not.
   113                              type: boolean
   114                            enablePrivateClusterPublicFQDN:
   115                              description: EnablePrivateClusterPublicFQDN indicates
   116                                whether to create additional public FQDN for private
   117                                cluster or not.
   118                              type: boolean
   119                            privateDNSZone:
   120                              description: PrivateDNSZone enables private dns zone mode
   121                                for private cluster.
   122                              type: string
   123                          type: object
   124                        asoManagedClusterPatches:
   125                          description: 'ASOManagedClusterPatches defines JSON merge
   126                            patches to be applied to the generated ASO ManagedCluster
   127                            resource. WARNING: This is meant to be used sparingly to
   128                            enable features for development and testing that are not
   129                            otherwise represented in the CAPZ API. Misconfiguration
   130                            that conflicts with CAPZ''s normal mode of operation is
   131                            possible.'
   132                          items:
   133                            type: string
   134                          type: array
   135                        autoUpgradeProfile:
   136                          description: AutoUpgradeProfile defines the auto upgrade configuration.
   137                          properties:
   138                            upgradeChannel:
   139                              description: UpgradeChannel determines the type of upgrade
   140                                channel for automatically upgrading the cluster.
   141                              enum:
   142                              - node-image
   143                              - none
   144                              - patch
   145                              - rapid
   146                              - stable
   147                              type: string
   148                          type: object
   149                        autoscalerProfile:
   150                          description: AutoscalerProfile is the parameters to be applied
   151                            to the cluster-autoscaler when enabled
   152                          properties:
   153                            balanceSimilarNodeGroups:
   154                              description: BalanceSimilarNodeGroups - Valid values are
   155                                'true' and 'false'. The default is false.
   156                              enum:
   157                              - "true"
   158                              - "false"
   159                              type: string
   160                            expander:
   161                              description: Expander - If not specified, the default
   162                                is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders)
   163                                for more information.
   164                              enum:
   165                              - least-waste
   166                              - most-pods
   167                              - priority
   168                              - random
   169                              type: string
   170                            maxEmptyBulkDelete:
   171                              description: MaxEmptyBulkDelete - The default is 10.
   172                              type: string
   173                            maxGracefulTerminationSec:
   174                              description: MaxGracefulTerminationSec - The default is
   175                                600.
   176                              pattern: ^(\d+)$
   177                              type: string
   178                            maxNodeProvisionTime:
   179                              description: MaxNodeProvisionTime - The default is '15m'.
   180                                Values must be an integer followed by an 'm'. No unit
   181                                of time other than minutes (m) is supported.
   182                              pattern: ^(\d+)m$
   183                              type: string
   184                            maxTotalUnreadyPercentage:
   185                              description: MaxTotalUnreadyPercentage - The default is
   186                                45. The maximum is 100 and the minimum is 0.
   187                              maxLength: 3
   188                              minLength: 1
   189                              pattern: ^(\d+)$
   190                              type: string
   191                            newPodScaleUpDelay:
   192                              description: NewPodScaleUpDelay - For scenarios like burst/batch
   193                                scale where you don't want CA to act before the kubernetes
   194                                scheduler could schedule all the pods, you can tell
   195                                CA to ignore unscheduled pods before they're a certain
   196                                age. The default is '0s'. Values must be an integer
   197                                followed by a unit ('s' for seconds, 'm' for minutes,
   198                                'h' for hours, etc).
   199                              type: string
   200                            okTotalUnreadyCount:
   201                              description: OkTotalUnreadyCount - This must be an integer.
   202                                The default is 3.
   203                              pattern: ^(\d+)$
   204                              type: string
   205                            scaleDownDelayAfterAdd:
   206                              description: ScaleDownDelayAfterAdd - The default is '10m'.
   207                                Values must be an integer followed by an 'm'. No unit
   208                                of time other than minutes (m) is supported.
   209                              pattern: ^(\d+)m$
   210                              type: string
   211                            scaleDownDelayAfterDelete:
   212                              description: ScaleDownDelayAfterDelete - The default is
   213                                the scan-interval. Values must be an integer followed
   214                                by an 's'. No unit of time other than seconds (s) is
   215                                supported.
   216                              pattern: ^(\d+)s$
   217                              type: string
   218                            scaleDownDelayAfterFailure:
   219                              description: ScaleDownDelayAfterFailure - The default
   220                                is '3m'. Values must be an integer followed by an 'm'.
   221                                No unit of time other than minutes (m) is supported.
   222                              pattern: ^(\d+)m$
   223                              type: string
   224                            scaleDownUnneededTime:
   225                              description: ScaleDownUnneededTime - The default is '10m'.
   226                                Values must be an integer followed by an 'm'. No unit
   227                                of time other than minutes (m) is supported.
   228                              pattern: ^(\d+)m$
   229                              type: string
   230                            scaleDownUnreadyTime:
   231                              description: ScaleDownUnreadyTime - The default is '20m'.
   232                                Values must be an integer followed by an 'm'. No unit
   233                                of time other than minutes (m) is supported.
   234                              pattern: ^(\d+)m$
   235                              type: string
   236                            scaleDownUtilizationThreshold:
   237                              description: ScaleDownUtilizationThreshold - The default
   238                                is '0.5'.
   239                              type: string
   240                            scanInterval:
   241                              description: ScanInterval - How often cluster is reevaluated
   242                                for scale up or down. The default is '10s'.
   243                              pattern: ^(\d+)s$
   244                              type: string
   245                            skipNodesWithLocalStorage:
   246                              description: SkipNodesWithLocalStorage - The default is
   247                                false.
   248                              enum:
   249                              - "true"
   250                              - "false"
   251                              type: string
   252                            skipNodesWithSystemPods:
   253                              description: SkipNodesWithSystemPods - The default is
   254                                true.
   255                              enum:
   256                              - "true"
   257                              - "false"
   258                              type: string
   259                          type: object
   260                        azureEnvironment:
   261                          description: "AzureEnvironment is the name of the AzureCloud
   262                            to be used. The default value that would be used by most
   263                            users is \"AzurePublicCloud\", other values are: - ChinaCloud:
   264                            \"AzureChinaCloud\" - PublicCloud: \"AzurePublicCloud\"
   265                            - USGovernmentCloud: \"AzureUSGovernmentCloud\" \n Note
   266                            that values other than the default must also be accompanied
   267                            by corresponding changes to the aso-controller-settings
   268                            Secret to configure ASO to refer to the non-Public cloud.
   269                            ASO currently does not support referring to multiple different
   270                            clouds in a single installation. The following fields must
   271                            be defined in the Secret: - AZURE_AUTHORITY_HOST - AZURE_RESOURCE_MANAGER_ENDPOINT
   272                            - AZURE_RESOURCE_MANAGER_AUDIENCE \n See the [ASO docs]
   273                            for more details. \n [ASO docs]: https://azure.github.io/azure-service-operator/guide/aso-controller-settings-options/"
   274                          type: string
   275                        disableLocalAccounts:
   276                          description: DisableLocalAccounts disables getting static
   277                            credentials for this cluster when set. Expected to only
   278                            be used for AAD clusters.
   279                          type: boolean
   280                        dnsServiceIP:
   281                          description: DNSServiceIP is an IP address assigned to the
   282                            Kubernetes DNS service. It must be within the Kubernetes
   283                            service address range specified in serviceCidr. Immutable.
   284                          type: string
   285                        enablePreviewFeatures:
   286                          description: EnablePreviewFeatures enables preview features
   287                            for the cluster.
   288                          type: boolean
   289                        extensions:
   290                          description: Extensions is a list of AKS extensions to be
   291                            installed on the cluster.
   292                          items:
   293                            description: "AKSExtension represents the configuration
   294                              for an AKS cluster extension. See also [AKS doc]. \n [AKS
   295                              doc]: https://learn.microsoft.com/en-us/azure/aks/cluster-extensions"
   296                            properties:
   297                              aksAssignedIdentityType:
   298                                description: AKSAssignedIdentityType is the type of
   299                                  the AKS assigned identity.
   300                                enum:
   301                                - SystemAssigned
   302                                - UserAssigned
   303                                type: string
   304                              autoUpgradeMinorVersion:
   305                                default: true
   306                                description: AutoUpgradeMinorVersion is a flag to note
   307                                  if this extension participates in auto upgrade of
   308                                  minor version, or not.
   309                                type: boolean
   310                              configurationSettings:
   311                                additionalProperties:
   312                                  type: string
   313                                description: ConfigurationSettings are the name-value
   314                                  pairs for configuring this extension.
   315                                type: object
   316                              extensionType:
   317                                description: ExtensionType is the type of the Extension
   318                                  of which this resource is an instance. It must be
   319                                  one of the Extension Types registered with Microsoft.KubernetesConfiguration
   320                                  by the Extension publisher.
   321                                type: string
   322                              identity:
   323                                description: Identity is the identity type of the Extension
   324                                  resource in an AKS cluster.
   325                                enum:
   326                                - SystemAssigned
   327                                type: string
   328                              name:
   329                                description: Name is the name of the extension.
   330                                type: string
   331                              plan:
   332                                description: Plan is the plan of the extension.
   333                                properties:
   334                                  name:
   335                                    description: Name is the user-defined name of the
   336                                      3rd Party Artifact that is being procured.
   337                                    type: string
   338                                  product:
   339                                    description: Product is the name of the 3rd Party
   340                                      artifact that is being procured.
   341                                    type: string
   342                                  promotionCode:
   343                                    description: PromotionCode is a publisher-provided
   344                                      promotion code as provisioned in Data Market for
   345                                      the said product/artifact.
   346                                    type: string
   347                                  publisher:
   348                                    description: Publisher is the name of the publisher
   349                                      of the 3rd Party Artifact that is being bought.
   350                                    type: string
   351                                  version:
   352                                    description: Version is the version of the plan.
   353                                    type: string
   354                                type: object
   355                              releaseTrain:
   356                                description: ReleaseTrain is the release train this
   357                                  extension participates in for auto-upgrade (e.g. Stable,
   358                                  Preview, etc.) This is only used if autoUpgradeMinorVersion
   359                                  is ‘true’.
   360                                type: string
   361                              scope:
   362                                description: Scope is the scope at which this extension
   363                                  is enabled.
   364                                properties:
   365                                  releaseNamespace:
   366                                    description: ReleaseNamespace is the namespace where
   367                                      the extension Release must be placed, for a Cluster-scoped
   368                                      extension. Required for Cluster-scoped extensions.
   369                                    type: string
   370                                  scopeType:
   371                                    description: ScopeType is the scope of the extension.
   372                                      It can be either Cluster or Namespace, but not
   373                                      both.
   374                                    enum:
   375                                    - Cluster
   376                                    - Namespace
   377                                    type: string
   378                                  targetNamespace:
   379                                    description: TargetNamespace is the namespace where
   380                                      the extension will be created for a Namespace-scoped
   381                                      extension. Required for Namespace-scoped extensions.
   382                                    type: string
   383                                required:
   384                                - scopeType
   385                                type: object
   386                              version:
   387                                description: Version is the version of the extension.
   388                                type: string
   389                            required:
   390                            - extensionType
   391                            - name
   392                            type: object
   393                          type: array
   394                        fleetsMember:
   395                          description: "FleetsMember is the spec for the fleet this
   396                            cluster is a member of. See also [AKS doc]. \n [AKS doc]:
   397                            https://learn.microsoft.com/en-us/azure/templates/microsoft.containerservice/2023-03-15-preview/fleets/members"
   398                          properties:
   399                            group:
   400                              description: Group is the group this member belongs to
   401                                for multi-cluster update management.
   402                              type: string
   403                            managerName:
   404                              description: ManagerName is the name of the fleet manager.
   405                              type: string
   406                            managerResourceGroup:
   407                              description: ManagerResourceGroup is the resource group
   408                                of the fleet manager.
   409                              type: string
   410                          required:
   411                          - managerName
   412                          - managerResourceGroup
   413                          type: object
   414                        httpProxyConfig:
   415                          description: HTTPProxyConfig is the HTTP proxy configuration
   416                            for the cluster. Immutable.
   417                          properties:
   418                            httpProxy:
   419                              description: HTTPProxy is the HTTP proxy server endpoint
   420                                to use.
   421                              type: string
   422                            httpsProxy:
   423                              description: HTTPSProxy is the HTTPS proxy server endpoint
   424                                to use.
   425                              type: string
   426                            noProxy:
   427                              description: NoProxy indicates the endpoints that should
   428                                not go through proxy.
   429                              items:
   430                                type: string
   431                              type: array
   432                            trustedCa:
   433                              description: TrustedCA is the alternative CA cert to use
   434                                for connecting to proxy servers.
   435                              type: string
   436                          type: object
   437                        identity:
   438                          description: Identity configuration used by the AKS control
   439                            plane.
   440                          properties:
   441                            type:
   442                              description: Type - The Identity type to use.
   443                              enum:
   444                              - SystemAssigned
   445                              - UserAssigned
   446                              type: string
   447                            userAssignedIdentityResourceID:
   448                              description: UserAssignedIdentityResourceID - Identity
   449                                ARM resource ID when using user-assigned identity.
   450                              type: string
   451                          type: object
   452                        identityRef:
   453                          description: IdentityRef is a reference to a AzureClusterIdentity
   454                            to be used when reconciling this cluster
   455                          properties:
   456                            apiVersion:
   457                              description: API version of the referent.
   458                              type: string
   459                            fieldPath:
   460                              description: 'If referring to a piece of an object instead
   461                                of an entire object, this string should contain a valid
   462                                JSON/Go field access statement, such as desiredState.manifest.containers[2].
   463                                For example, if the object reference is to a container
   464                                within a pod, this would take on a value like: "spec.containers{name}"
   465                                (where "name" refers to the name of the container that
   466                                triggered the event) or if no container name is specified
   467                                "spec.containers[2]" (container with index 2 in this
   468                                pod). This syntax is chosen only to have some well-defined
   469                                way of referencing a part of an object. TODO: this design
   470                                is not final and this field is subject to change in
   471                                the future.'
   472                              type: string
   473                            kind:
   474                              description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
   475                              type: string
   476                            name:
   477                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
   478                              type: string
   479                            namespace:
   480                              description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
   481                              type: string
   482                            resourceVersion:
   483                              description: 'Specific resourceVersion to which this reference
   484                                is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
   485                              type: string
   486                            uid:
   487                              description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
   488                              type: string
   489                          type: object
   490                          x-kubernetes-map-type: atomic
   491                        kubeletUserAssignedIdentity:
   492                          description: KubeletUserAssignedIdentity is the user-assigned
   493                            identity for kubelet. For authentication with Azure Container
   494                            Registry.
   495                          type: string
   496                        loadBalancerProfile:
   497                          description: LoadBalancerProfile is the profile of the cluster
   498                            load balancer.
   499                          properties:
   500                            allocatedOutboundPorts:
   501                              description: AllocatedOutboundPorts - Desired number of
   502                                allocated SNAT ports per VM. Allowed values must be
   503                                in the range of 0 to 64000 (inclusive). The default
   504                                value is 0 which results in Azure dynamically allocating
   505                                ports.
   506                              type: integer
   507                            idleTimeoutInMinutes:
   508                              description: IdleTimeoutInMinutes - Desired outbound flow
   509                                idle timeout in minutes. Allowed values must be in the
   510                                range of 4 to 120 (inclusive). The default value is
   511                                30 minutes.
   512                              type: integer
   513                            managedOutboundIPs:
   514                              description: ManagedOutboundIPs - Desired managed outbound
   515                                IPs for the cluster load balancer.
   516                              type: integer
   517                            outboundIPPrefixes:
   518                              description: OutboundIPPrefixes - Desired outbound IP
   519                                Prefix resources for the cluster load balancer.
   520                              items:
   521                                type: string
   522                              type: array
   523                            outboundIPs:
   524                              description: OutboundIPs - Desired outbound IP resources
   525                                for the cluster load balancer.
   526                              items:
   527                                type: string
   528                              type: array
   529                          type: object
   530                        loadBalancerSKU:
   531                          default: Standard
   532                          description: LoadBalancerSKU is the SKU of the loadBalancer
   533                            to be provisioned. Immutable.
   534                          enum:
   535                          - Basic
   536                          - Standard
   537                          type: string
   538                        location:
   539                          description: 'Location is a string matching one of the canonical
   540                            Azure region names. Examples: "westus2", "eastus".'
   541                          type: string
   542                        machineTemplate:
   543                          description: MachineTemplate contains information about how
   544                            machines should be shaped when creating or updating a control
   545                            plane. For the AzureManagedControlPlaneTemplate, this field
   546                            is used only to fulfill the CAPI contract.
   547                          type: object
   548                        networkDataplane:
   549                          description: NetworkDataplane is the dataplane used for building
   550                            the Kubernetes network.
   551                          enum:
   552                          - azure
   553                          - cilium
   554                          type: string
   555                        networkPlugin:
   556                          description: NetworkPlugin used for building Kubernetes network.
   557                          enum:
   558                          - azure
   559                          - kubenet
   560                          - none
   561                          type: string
   562                        networkPluginMode:
   563                          description: NetworkPluginMode is the mode the network plugin
   564                            should use. Allowed value is "overlay".
   565                          enum:
   566                          - overlay
   567                          type: string
   568                        networkPolicy:
   569                          description: NetworkPolicy used for building Kubernetes network.
   570                          enum:
   571                          - azure
   572                          - calico
   573                          - cilium
   574                          type: string
   575                        oidcIssuerProfile:
   576                          description: OIDCIssuerProfile is the OIDC issuer profile
   577                            of the Managed Cluster.
   578                          properties:
   579                            enabled:
   580                              description: Enabled is whether the OIDC issuer is enabled.
   581                              type: boolean
   582                          type: object
   583                        outboundType:
   584                          description: Outbound configuration used by Nodes.
   585                          enum:
   586                          - loadBalancer
   587                          - managedNATGateway
   588                          - userAssignedNATGateway
   589                          - userDefinedRouting
   590                          type: string
   591                        securityProfile:
   592                          description: SecurityProfile defines the security profile
   593                            for cluster.
   594                          properties:
   595                            azureKeyVaultKms:
   596                              description: AzureKeyVaultKms defines Azure Key Vault
   597                                Management Services Profile for the security profile.
   598                              properties:
   599                                enabled:
   600                                  description: Enabled enables the Azure Key Vault key
   601                                    management service. The default is false.
   602                                  type: boolean
   603                                keyID:
   604                                  description: KeyID defines the Identifier of Azure
   605                                    Key Vault key. When Azure Key Vault key management
   606                                    service is enabled, this field is required and must
   607                                    be a valid key identifier.
   608                                  type: string
   609                                keyVaultNetworkAccess:
   610                                  default: Public
   611                                  description: KeyVaultNetworkAccess defines the network
   612                                    access of key vault. The possible values are Public
   613                                    and Private. Public means the key vault allows public
   614                                    access from all networks. Private means the key
   615                                    vault disables public access and enables private
   616                                    link. The default value is Public.
   617                                  type: string
   618                                keyVaultResourceID:
   619                                  description: KeyVaultResourceID is the Resource ID
   620                                    of key vault. When keyVaultNetworkAccess is Private,
   621                                    this field is required and must be a valid resource
   622                                    ID.
   623                                  type: string
   624                              required:
   625                              - enabled
   626                              - keyID
   627                              type: object
   628                            defender:
   629                              description: Defender settings for the security profile.
   630                              properties:
   631                                logAnalyticsWorkspaceResourceID:
   632                                  description: LogAnalyticsWorkspaceResourceID is the
   633                                    ID of the Log Analytics workspace that has to be
   634                                    associated with Microsoft Defender. When Microsoft
   635                                    Defender is enabled, this field is required and
   636                                    must be a valid workspace resource ID.
   637                                  type: string
   638                                securityMonitoring:
   639                                  description: SecurityMonitoring profile defines the
   640                                    Microsoft Defender threat detection for Cloud settings
   641                                    for the security profile.
   642                                  properties:
   643                                    enabled:
   644                                      description: Enabled enables Defender threat detection
   645                                      type: boolean
   646                                  required:
   647                                  - enabled
   648                                  type: object
   649                              required:
   650                              - logAnalyticsWorkspaceResourceID
   651                              - securityMonitoring
   652                              type: object
   653                            imageCleaner:
   654                              description: ImageCleaner settings for the security profile.
   655                              properties:
   656                                enabled:
   657                                  description: Enabled enables the Image Cleaner on
   658                                    AKS cluster.
   659                                  type: boolean
   660                                intervalHours:
   661                                  description: IntervalHours defines Image Cleaner scanning
   662                                    interval in hours. Default value is 24 hours.
   663                                  maximum: 2160
   664                                  minimum: 24
   665                                  type: integer
   666                              required:
   667                              - enabled
   668                              type: object
   669                            workloadIdentity:
   670                              description: Workloadidentity enables Kubernetes applications
   671                                to access Azure cloud resources securely with Azure
   672                                AD. Ensure to enable OIDC issuer while enabling Workload
   673                                Identity
   674                              properties:
   675                                enabled:
   676                                  description: Enabled enables the workload identity.
   677                                  type: boolean
   678                              required:
   679                              - enabled
   680                              type: object
   681                          type: object
   682                        sku:
   683                          description: SKU is the SKU of the AKS to be provisioned.
   684                          properties:
   685                            tier:
   686                              description: Tier - Tier of an AKS cluster.
   687                              enum:
   688                              - Free
   689                              - Paid
   690                              - Standard
   691                              type: string
   692                          required:
   693                          - tier
   694                          type: object
   695                        subscriptionID:
   696                          description: SubscriptionID is the GUID of the Azure subscription
   697                            that owns this cluster.
   698                          type: string
   699                        version:
   700                          description: Version defines the desired Kubernetes version.
   701                          minLength: 2
   702                          type: string
   703                        virtualNetwork:
   704                          description: VirtualNetwork describes the virtual network
   705                            for the AKS cluster. It will be created if it does not already
   706                            exist.
   707                          properties:
   708                            cidrBlock:
   709                              type: string
   710                            name:
   711                              type: string
   712                            resourceGroup:
   713                              description: ResourceGroup is the name of the Azure resource
   714                                group for the VNet and Subnet.
   715                              type: string
   716                            subnet:
   717                              description: ManagedControlPlaneSubnet describes a subnet
   718                                for an AKS cluster.
   719                              properties:
   720                                cidrBlock:
   721                                  type: string
   722                                name:
   723                                  type: string
   724                                privateEndpoints:
   725                                  description: PrivateEndpoints is a slice of Virtual
   726                                    Network private endpoints to create for the subnets.
   727                                  items:
   728                                    description: PrivateEndpointSpec configures an Azure
   729                                      Private Endpoint.
   730                                    properties:
   731                                      applicationSecurityGroups:
   732                                        description: ApplicationSecurityGroups specifies
   733                                          the Application security group in which the
   734                                          private endpoint IP configuration is included.
   735                                        items:
   736                                          type: string
   737                                        type: array
   738                                      customNetworkInterfaceName:
   739                                        description: CustomNetworkInterfaceName specifies
   740                                          the network interface name associated with
   741                                          the private endpoint.
   742                                        type: string
   743                                      location:
   744                                        description: Location specifies the region to
   745                                          create the private endpoint.
   746                                        type: string
   747                                      manualApproval:
   748                                        description: ManualApproval specifies if the
   749                                          connection approval needs to be done manually
   750                                          or not. Set it true when the network admin
   751                                          does not have access to approve connections
   752                                          to the remote resource. Defaults to false.
   753                                        type: boolean
   754                                      name:
   755                                        description: Name specifies the name of the
   756                                          private endpoint.
   757                                        type: string
   758                                      privateIPAddresses:
   759                                        description: PrivateIPAddresses specifies the
   760                                          IP addresses for the network interface associated
   761                                          with the private endpoint. They have to be
   762                                          part of the subnet where the private endpoint
   763                                          is linked.
   764                                        items:
   765                                          type: string
   766                                        type: array
   767                                      privateLinkServiceConnections:
   768                                        description: PrivateLinkServiceConnections specifies
   769                                          Private Link Service Connections of the private
   770                                          endpoint.
   771                                        items:
   772                                          description: PrivateLinkServiceConnection
   773                                            defines the specification for a private
   774                                            link service connection associated with
   775                                            a private endpoint.
   776                                          properties:
   777                                            groupIDs:
   778                                              description: GroupIDs specifies the ID(s)
   779                                                of the group(s) obtained from the remote
   780                                                resource that this private endpoint
   781                                                should connect to.
   782                                              items:
   783                                                type: string
   784                                              type: array
   785                                            name:
   786                                              description: Name specifies the name of
   787                                                the private link service.
   788                                              type: string
   789                                            privateLinkServiceID:
   790                                              description: PrivateLinkServiceID specifies
   791                                                the resource ID of the private link
   792                                                service.
   793                                              type: string
   794                                            requestMessage:
   795                                              description: RequestMessage specifies
   796                                                a message passed to the owner of the
   797                                                remote resource with the private endpoint
   798                                                connection request.
   799                                              maxLength: 140
   800                                              type: string
   801                                          type: object
   802                                        type: array
   803                                    required:
   804                                    - name
   805                                    type: object
   806                                  type: array
   807                                  x-kubernetes-list-map-keys:
   808                                  - name
   809                                  x-kubernetes-list-type: map
   810                                serviceEndpoints:
   811                                  description: ServiceEndpoints is a slice of Virtual
   812                                    Network service endpoints to enable for the subnets.
   813                                  items:
   814                                    description: ServiceEndpointSpec configures an Azure
   815                                      Service Endpoint.
   816                                    properties:
   817                                      locations:
   818                                        items:
   819                                          type: string
   820                                        type: array
   821                                      service:
   822                                        type: string
   823                                    required:
   824                                    - locations
   825                                    - service
   826                                    type: object
   827                                  type: array
   828                                  x-kubernetes-list-map-keys:
   829                                  - service
   830                                  x-kubernetes-list-type: map
   831                              required:
   832                              - cidrBlock
   833                              - name
   834                              type: object
   835                          required:
   836                          - cidrBlock
   837                          - name
   838                          type: object
   839                      required:
   840                      - identityRef
   841                      - location
   842                      - version
   843                      type: object
   844                  required:
   845                  - spec
   846                  type: object
   847              required:
   848              - template
   849              type: object
   850          type: object
   851      served: true
   852      storage: true