From 67988c2e3ad977fe47da04fa52f69e9295f49c74 Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Mon, 12 Jul 2021 20:26:29 +0000 Subject: [PATCH] CodeGen from PR 15124 in Azure/azure-rest-api-specs Merge bb5ac293d2042db157824ce87763b59931f8db7b into 10b62f609daf6fac48a33a4327fd704a868e0d32 --- .../subscriptionDeploymentTemplate.json | 6 +- .../managementGroupDeploymentTemplate.json | 6 +- .../2019-08-01/tenantDeploymentTemplate.json | 6 +- .../Microsoft.ContainerService.json | 351 +- .../Microsoft.ContainerService.json | 3042 +++++++++++++++++ schemas/common/autogeneratedResources.json | 12 + 6 files changed, 3232 insertions(+), 191 deletions(-) create mode 100644 schemas/2021-07-01/Microsoft.ContainerService.json diff --git a/schemas/2018-05-01/subscriptionDeploymentTemplate.json b/schemas/2018-05-01/subscriptionDeploymentTemplate.json index 4cc4f2546a..d334f61b6d 100644 --- a/schemas/2018-05-01/subscriptionDeploymentTemplate.json +++ b/schemas/2018-05-01/subscriptionDeploymentTemplate.json @@ -49,7 +49,7 @@ }, "resources": { "description": "Collection of resources to be deployed", - "oneOf":[ + "oneOf": [ { "$ref": "#/definitions/resourcesWithoutSymbolicNames" }, @@ -987,14 +987,14 @@ } ] }, - "resourcesWithSymbolicNames":{ + "resourcesWithSymbolicNames": { "type": "object", "description": "Resources with symbolic names", "additionalProperties": { "$ref": "#/definitions/resource" } }, - "resourcesWithoutSymbolicNames":{ + "resourcesWithoutSymbolicNames": { "type": "array", "description": "Resources without symbolic names", "items": { diff --git a/schemas/2019-08-01/managementGroupDeploymentTemplate.json b/schemas/2019-08-01/managementGroupDeploymentTemplate.json index f416520a44..58373db30f 100644 --- a/schemas/2019-08-01/managementGroupDeploymentTemplate.json +++ b/schemas/2019-08-01/managementGroupDeploymentTemplate.json @@ -49,7 +49,7 @@ }, "resources": { "description": "Collection of resources to be deployed", - "oneOf":[ + "oneOf": [ { "$ref": "#/definitions/resourcesWithoutSymbolicNames" }, @@ -678,14 +678,14 @@ } ] }, - "resourcesWithSymbolicNames":{ + "resourcesWithSymbolicNames": { "type": "object", "description": "Resources with symbolic names", "additionalProperties": { "$ref": "#/definitions/resource" } }, - "resourcesWithoutSymbolicNames":{ + "resourcesWithoutSymbolicNames": { "type": "array", "description": "Resources without symbolic names", "items": { diff --git a/schemas/2019-08-01/tenantDeploymentTemplate.json b/schemas/2019-08-01/tenantDeploymentTemplate.json index 87842fe07a..3b81972126 100644 --- a/schemas/2019-08-01/tenantDeploymentTemplate.json +++ b/schemas/2019-08-01/tenantDeploymentTemplate.json @@ -49,7 +49,7 @@ }, "resources": { "description": "Collection of resources to be deployed", - "oneOf":[ + "oneOf": [ { "$ref": "#/definitions/resourcesWithoutSymbolicNames" }, @@ -798,14 +798,14 @@ } ] }, - "resourcesWithSymbolicNames":{ + "resourcesWithSymbolicNames": { "type": "object", "description": "Resources with symbolic names", "additionalProperties": { "$ref": "#/definitions/resource" } }, - "resourcesWithoutSymbolicNames":{ + "resourcesWithoutSymbolicNames": { "type": "array", "description": "Resources without symbolic names", "items": { diff --git a/schemas/2021-05-01/Microsoft.ContainerService.json b/schemas/2021-05-01/Microsoft.ContainerService.json index b6c6ddd173..828bd10016 100644 --- a/schemas/2021-05-01/Microsoft.ContainerService.json +++ b/schemas/2021-05-01/Microsoft.ContainerService.json @@ -88,8 +88,7 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "The SKU of a Managed Cluster." + ] }, "tags": { "oneOf": [ @@ -183,7 +182,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Properties used to configure planned maintenance for a Managed Cluster." + "description": "Default maintenance configuration properties." }, "type": { "type": "string", @@ -246,7 +245,7 @@ "properties": { "maxSurge": { "type": "string", - "description": "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" + "description": "Count or percentage of additional nodes to be added during upgrade. If empty uses AKS default" } }, "description": "Settings for upgrading an agentpool" @@ -260,15 +259,15 @@ "properties": { "clientId": { "type": "string", - "description": "The client ID of the user assigned identity." + "description": "The client id of the user assigned identity." }, "objectId": { "type": "string", - "description": "The object ID of the user assigned identity." + "description": "The object id of the user assigned identity." }, "resourceId": { "type": "string", - "description": "The resource ID of the user assigned identity." + "description": "The resource id of the user assigned identity." } } }, @@ -358,7 +357,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "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." + "description": "The load balancer sku for the managed cluster." }, "networkMode": { "oneOf": [ @@ -373,7 +372,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "This cannot be specified if networkPlugin is anything other than 'azure'." + "description": "Network mode used for building Kubernetes network." }, "networkPlugin": { "oneOf": [ @@ -388,7 +387,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Network plugin used for building the Kubernetes network." + "description": "Network plugin used for building Kubernetes network." }, "networkPolicy": { "oneOf": [ @@ -403,7 +402,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Network policy used for building the Kubernetes network." + "description": "Network policy used for building Kubernetes network." }, "outboundType": { "oneOf": [ @@ -418,7 +417,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "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)." + "description": "The outbound (egress) routing method." }, "podCidr": { "oneOf": [ @@ -464,7 +463,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified." + "description": "The list of SSH public keys used to authenticate with Linux-based VMs. Only expect one key specified." } }, "required": [ @@ -524,7 +523,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`)." + "description": "Allowlist of unsafe sysctls or unsafe sysctl patterns (ending in `*`)." }, "containerLogMaxFiles": { "oneOf": [ @@ -558,15 +557,15 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The default is true." + "description": "Enable CPU CFS quota enforcement for containers that specify CPU limits." }, "cpuCfsQuotaPeriod": { "type": "string", - "description": "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'." + "description": "Sets CPU CFS quota period value." }, "cpuManagerPolicy": { "type": "string", - "description": "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'." + "description": "CPU Manager policy to use." }, "failSwapOn": { "oneOf": [ @@ -588,7 +587,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "To disable image garbage collection, set to 100. The default is 85%" + "description": "The percent of disk usage after which image garbage collection is always run." }, "imageGcLowThreshold": { "oneOf": [ @@ -599,7 +598,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "This cannot be set higher than imageGcHighThreshold. The default is 80%" + "description": "The percent of disk usage before which image garbage collection is never run." }, "podMaxPids": { "oneOf": [ @@ -614,10 +613,10 @@ }, "topologyManagerPolicy": { "type": "string", - "description": "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'." + "description": "Topology Manager policy to use." } }, - "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + "description": "Kubelet configurations of agent nodes." }, "LinuxOSConfig": { "type": "object", @@ -631,7 +630,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The size in MB of a swap file that will be created on each node." + "description": "SwapFileSizeMB specifies size in MB of a swap file will be created on each node." }, "sysctls": { "oneOf": [ @@ -646,14 +645,14 @@ }, "transparentHugePageDefrag": { "type": "string", - "description": "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)." + "description": "Transparent Huge Page defrag configuration." }, "transparentHugePageEnabled": { "type": "string", - "description": "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)." + "description": "Transparent Huge Page enabled configuration." } }, - "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + "description": "OS configurations of Linux agent nodes." }, "MaintenanceConfigurationProperties": { "type": "object", @@ -684,10 +683,10 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "If two array entries specify the same day of the week, the applied configuration is the union of times in both entries." + "description": "Weekday time slots allowed to upgrade." } }, - "description": "Properties used to configure planned maintenance for a Managed Cluster." + "description": "Default maintenance configuration properties." }, "ManagedClusterAADProfile": { "type": "object", @@ -704,7 +703,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The list of AAD group object IDs that will have admin role of the cluster." + "description": "AAD group object IDs that will have admin role of the cluster." }, "clientAppID": { "type": "string", @@ -745,7 +744,7 @@ "description": "The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription." } }, - "description": "For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad)." + "description": "AADProfile specifies attributes for Azure Active Directory integration." }, "ManagedClusterAddonProfile": { "type": "object", @@ -797,7 +796,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'." + "description": "Availability zones for nodes. Must use VirtualMachineScaleSets AgentPoolType." }, "count": { "oneOf": [ @@ -830,7 +829,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "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" + "description": "Whether to enable EncryptionAtHost" }, "enableFIPS": { "oneOf": [ @@ -841,7 +840,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "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." + "description": "Whether to use FIPS enabled OS" }, "enableNodePublicIP": { "oneOf": [ @@ -852,7 +851,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "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." + "description": "Enable public IP for nodes" }, "enableUltraSSD": { "oneOf": [ @@ -881,7 +880,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU." + "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. Supported values are MIG1g, MIG2g, MIG3g, MIG4g and MIG7g." }, "kubeletConfig": { "oneOf": [ @@ -892,7 +891,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + "description": "Kubelet configurations of agent nodes." }, "kubeletDiskType": { "oneOf": [ @@ -906,7 +905,8 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "KubeletDiskType determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. Currently allows one value, OS, resulting in Kubelet using the OS disk for data." }, "linuxOSConfig": { "oneOf": [ @@ -917,7 +917,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + "description": "OS configurations of Linux agent nodes." }, "maxCount": { "oneOf": [ @@ -928,7 +928,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The maximum number of nodes for auto-scaling" + "description": "Maximum number of nodes for auto-scaling" }, "maxPods": { "oneOf": [ @@ -939,7 +939,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The maximum number of pods that can run on a node." + "description": "Maximum number of pods that can run on a node." }, "minCount": { "oneOf": [ @@ -950,7 +950,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The minimum number of nodes for auto-scaling" + "description": "Minimum number of nodes for auto-scaling" }, "mode": { "oneOf": [ @@ -964,7 +964,8 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "AgentPoolMode represents mode of an agent pool." }, "name": { "oneOf": [ @@ -976,7 +977,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Windows agent pool names must be 6 characters or less." + "description": "Unique name of the agent pool profile in the context of the subscription and resource group." }, "nodeLabels": { "oneOf": [ @@ -991,11 +992,11 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The node labels to be persisted across all nodes in agent pool." + "description": "Agent pool node labels to be persisted across all nodes in agent pool." }, "nodePublicIPPrefixID": { "type": "string", - "description": "This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}" + "description": "Public IP Prefix ID. VM nodes use IPs assigned from this Public IP Prefix." }, "nodeTaints": { "oneOf": [ @@ -1009,11 +1010,11 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule." + "description": "Taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule." }, "orchestratorVersion": { "type": "string", - "description": "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)." + "description": "Version of orchestrator specified when creating the managed cluster." }, "osDiskSizeGB": { "oneOf": [ @@ -1026,7 +1027,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." }, "osDiskType": { "oneOf": [ @@ -1040,7 +1041,8 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "OS disk type to be used for machines in a given agent pool. Allowed values are 'Ephemeral' and 'Managed'. If unspecified, defaults to 'Ephemeral' when the VM supports ephemeral OS and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation." }, "osSKU": { "oneOf": [ @@ -1054,7 +1056,8 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "OsSKU to be used to specify os sku. Choose from Ubuntu(default) and CBLMariner for Linux OSType. Not applicable to Windows OSType." }, "osType": { "oneOf": [ @@ -1068,11 +1071,12 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." }, "podSubnetID": { "type": "string", - "description": "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}" + "description": "specifies a subnet's resource id with subscription, resource group, vnet and subnet name" }, "proximityPlacementGroupID": { "type": "string", @@ -1091,7 +1095,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'." + "description": "ScaleSetEvictionPolicy to be used to specify eviction policy for Spot virtual machine scale set. Default to Delete." }, "scaleSetPriority": { "oneOf": [ @@ -1106,7 +1110,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'." + "description": "ScaleSetPriority to be used to specify virtual machine scale set priority. Default to regular." }, "spotMaxPrice": { "oneOf": [ @@ -1118,7 +1122,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "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)" + "description": "SpotMaxPrice to be used to specify the maximum price you are willing to pay in US Dollars. Possible values are any decimal value greater than zero or -1 which indicates default price to be up-to on-demand." }, "tags": { "oneOf": [ @@ -1133,7 +1137,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The tags to be persisted on the agent pool virtual machine scale set." + "description": "Agent pool tags to be persisted on the agent pool virtual machine scale set." }, "type": { "oneOf": [ @@ -1147,7 +1151,8 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "AgentPoolType represents types of an agent pool." }, "upgradeSettings": { "oneOf": [ @@ -1162,11 +1167,11 @@ }, "vmSize": { "type": "string", - "description": "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" + "description": "Size of agent VMs." }, "vnetSubnetID": { "type": "string", - "description": "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}" + "description": "specifies a subnet's resource id with subscription, resource group, vnet and subnet name" } }, "required": [ @@ -1189,7 +1194,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'." + "description": "Availability zones for nodes. Must use VirtualMachineScaleSets AgentPoolType." }, "count": { "oneOf": [ @@ -1222,7 +1227,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "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" + "description": "Whether to enable EncryptionAtHost" }, "enableFIPS": { "oneOf": [ @@ -1233,7 +1238,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "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." + "description": "Whether to use FIPS enabled OS" }, "enableNodePublicIP": { "oneOf": [ @@ -1244,7 +1249,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "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." + "description": "Enable public IP for nodes" }, "enableUltraSSD": { "oneOf": [ @@ -1273,7 +1278,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU." + "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. Supported values are MIG1g, MIG2g, MIG3g, MIG4g and MIG7g." }, "kubeletConfig": { "oneOf": [ @@ -1284,7 +1289,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + "description": "Kubelet configurations of agent nodes." }, "kubeletDiskType": { "oneOf": [ @@ -1298,7 +1303,8 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "KubeletDiskType determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. Currently allows one value, OS, resulting in Kubelet using the OS disk for data." }, "linuxOSConfig": { "oneOf": [ @@ -1309,7 +1315,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + "description": "OS configurations of Linux agent nodes." }, "maxCount": { "oneOf": [ @@ -1320,7 +1326,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The maximum number of nodes for auto-scaling" + "description": "Maximum number of nodes for auto-scaling" }, "maxPods": { "oneOf": [ @@ -1331,7 +1337,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The maximum number of pods that can run on a node." + "description": "Maximum number of pods that can run on a node." }, "minCount": { "oneOf": [ @@ -1342,7 +1348,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The minimum number of nodes for auto-scaling" + "description": "Minimum number of nodes for auto-scaling" }, "mode": { "oneOf": [ @@ -1356,7 +1362,8 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "AgentPoolMode represents mode of an agent pool." }, "nodeLabels": { "oneOf": [ @@ -1371,11 +1378,11 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The node labels to be persisted across all nodes in agent pool." + "description": "Agent pool node labels to be persisted across all nodes in agent pool." }, "nodePublicIPPrefixID": { "type": "string", - "description": "This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}" + "description": "Public IP Prefix ID. VM nodes use IPs assigned from this Public IP Prefix." }, "nodeTaints": { "oneOf": [ @@ -1389,11 +1396,11 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule." + "description": "Taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule." }, "orchestratorVersion": { "type": "string", - "description": "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)." + "description": "Version of orchestrator specified when creating the managed cluster." }, "osDiskSizeGB": { "oneOf": [ @@ -1406,7 +1413,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." }, "osDiskType": { "oneOf": [ @@ -1420,7 +1427,8 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "OS disk type to be used for machines in a given agent pool. Allowed values are 'Ephemeral' and 'Managed'. If unspecified, defaults to 'Ephemeral' when the VM supports ephemeral OS and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation." }, "osSKU": { "oneOf": [ @@ -1434,7 +1442,8 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "OsSKU to be used to specify os sku. Choose from Ubuntu(default) and CBLMariner for Linux OSType. Not applicable to Windows OSType." }, "osType": { "oneOf": [ @@ -1448,11 +1457,12 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." }, "podSubnetID": { "type": "string", - "description": "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}" + "description": "specifies a subnet's resource id with subscription, resource group, vnet and subnet name" }, "proximityPlacementGroupID": { "type": "string", @@ -1471,7 +1481,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'." + "description": "ScaleSetEvictionPolicy to be used to specify eviction policy for Spot virtual machine scale set. Default to Delete." }, "scaleSetPriority": { "oneOf": [ @@ -1486,7 +1496,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'." + "description": "ScaleSetPriority to be used to specify virtual machine scale set priority. Default to regular." }, "spotMaxPrice": { "oneOf": [ @@ -1498,7 +1508,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "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)" + "description": "SpotMaxPrice to be used to specify the maximum price you are willing to pay in US Dollars. Possible values are any decimal value greater than zero or -1 which indicates default price to be up-to on-demand." }, "tags": { "oneOf": [ @@ -1513,7 +1523,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The tags to be persisted on the agent pool virtual machine scale set." + "description": "Agent pool tags to be persisted on the agent pool virtual machine scale set." }, "type": { "oneOf": [ @@ -1527,7 +1537,8 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "AgentPoolType represents types of an agent pool." }, "upgradeSettings": { "oneOf": [ @@ -1542,11 +1553,11 @@ }, "vmSize": { "type": "string", - "description": "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" + "description": "Size of agent VMs." }, "vnetSubnetID": { "type": "string", - "description": "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}" + "description": "specifies a subnet's resource id with subscription, resource group, vnet and subnet name" } }, "description": "Properties for the container service agent pool profile." @@ -1566,7 +1577,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "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)." + "description": "Authorized IP Ranges to kubernetes API server." }, "enablePrivateCluster": { "oneOf": [ @@ -1577,7 +1588,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters)." + "description": "Whether to create the cluster as a private cluster or not." }, "enablePrivateClusterPublicFQDN": { "oneOf": [ @@ -1592,7 +1603,7 @@ }, "privateDNSZone": { "type": "string", - "description": "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'." + "description": "Private dns zone mode for private cluster. " } }, "description": "Access profile for managed cluster API server." @@ -1616,7 +1627,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel)." + "description": "upgrade channel for auto upgrade." } }, "description": "Auto upgrade profile for a managed cluster." @@ -1626,11 +1637,11 @@ "properties": { "httpProxy": { "type": "string", - "description": "The HTTP proxy server endpoint to use." + "description": "HTTP proxy server endpoint to use." }, "httpsProxy": { "type": "string", - "description": "The HTTPS proxy server endpoint to use." + "description": "HTTPS proxy server endpoint to use." }, "noProxy": { "oneOf": [ @@ -1644,14 +1655,14 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The endpoints that should not go through proxy." + "description": "Endpoints that should not go through proxy." }, "trustedCa": { "type": "string", "description": "Alternative CA cert to use for connecting to proxy servers." } }, - "description": "Cluster HTTP proxy configuration." + "description": "Configurations for provisioning the cluster with HTTP proxy servers." }, "ManagedClusterIdentity": { "type": "object", @@ -1670,7 +1681,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity)." + "description": "The type of identity used for the managed cluster. Type 'SystemAssigned' will use an implicitly created identity in master components and an auto-created user assigned identity in MC_ resource group in agent nodes. Type 'None' will not use MSI for the managed cluster, service principal will be used instead." }, "userAssignedIdentities": { "oneOf": [ @@ -1685,7 +1696,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + "description": "The user identity associated with the managed cluster. This identity will be used in control plane and only one user assigned identity is allowed. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." } }, "description": "Identity for the managed cluster." @@ -1705,7 +1716,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "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." + "description": "Desired number of allocated SNAT ports per VM. Allowed values must be in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports." }, "effectiveOutboundIPs": { "oneOf": [ @@ -1733,7 +1744,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes." + "description": "Desired outbound flow idle timeout in minutes. Allowed values must be in the range of 4 to 120 (inclusive). The default value is 30 minutes." }, "managedOutboundIPs": { "oneOf": [ @@ -1786,7 +1797,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The desired number of 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. " + "description": "Desired number of outbound IP 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. " } }, "description": "Desired managed outbound IPs for the cluster load balancer." @@ -1836,7 +1847,7 @@ "properties": { "bindingSelector": { "type": "string", - "description": "The binding selector to use for the AzureIdentityBinding resource." + "description": "Binding selector to use for the AzureIdentityBinding resource." }, "identity": { "oneOf": [ @@ -1846,35 +1857,33 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "Details about a user assigned identity." + ] }, "name": { "type": "string", - "description": "The name of the pod identity." + "description": "Name of the pod identity." }, "namespace": { "type": "string", - "description": "The namespace of the pod identity." + "description": "Namespace of the pod identity." } }, "required": [ "identity", "name", "namespace" - ], - "description": "Details about the pod identity assigned to the Managed Cluster." + ] }, "ManagedClusterPodIdentityException": { "type": "object", "properties": { "name": { "type": "string", - "description": "The name of the pod identity exception." + "description": "Name of the pod identity exception." }, "namespace": { "type": "string", - "description": "The namespace of the pod identity exception." + "description": "Namespace of the pod identity exception." }, "podLabels": { "oneOf": [ @@ -1889,15 +1898,14 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The pod labels to match." + "description": "Pod labels to match." } }, "required": [ "name", "namespace", "podLabels" - ], - "description": "See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details." + ] }, "ManagedClusterPodIdentityProfile": { "type": "object", @@ -1911,7 +1919,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "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." + "description": "Customer consent for enabling AAD pod identity addon in cluster using Kubenet network plugin." }, "enabled": { "oneOf": [ @@ -1936,7 +1944,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The pod identities to use in the cluster." + "description": "User assigned pod identity settings." }, "userAssignedIdentityExceptions": { "oneOf": [ @@ -1950,10 +1958,9 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The pod identity exceptions to allow." + "description": "User assigned pod identity exception settings." } - }, - "description": "See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration." + } }, "ManagedClusterProperties": { "type": "object", @@ -1967,7 +1974,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad)." + "description": "AADProfile specifies attributes for Azure Active Directory integration." }, "addonProfiles": { "oneOf": [ @@ -1982,7 +1989,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The profile of managed cluster add-on." + "description": "Profile of managed cluster add-on." }, "agentPoolProfiles": { "oneOf": [ @@ -1996,7 +2003,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The agent pool properties." + "description": "Properties of the agent pool." }, "apiServerAccessProfile": { "oneOf": [ @@ -2040,15 +2047,15 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "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)." + "description": "If set to true, getting static credential will be disabled for this cluster. Expected to only be used for AAD clusters." }, "diskEncryptionSetID": { "type": "string", - "description": "This is of the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}'" + "description": "ResourceId of the disk encryption set to use for enabling encryption at rest." }, "dnsPrefix": { "type": "string", - "description": "This cannot be updated once the Managed Cluster has been created." + "description": "DNS prefix specified when creating the managed cluster." }, "enablePodSecurityPolicy": { "oneOf": [ @@ -2074,7 +2081,7 @@ }, "fqdnSubdomain": { "type": "string", - "description": "This cannot be updated once the Managed Cluster has been created." + "description": "FQDN subdomain specified when creating private cluster with custom private dns zone." }, "httpProxyConfig": { "oneOf": [ @@ -2085,7 +2092,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Cluster HTTP proxy configuration." + "description": "Configurations for provisioning the cluster with HTTP proxy servers." }, "identityProfile": { "oneOf": [ @@ -2104,7 +2111,7 @@ }, "kubernetesVersion": { "type": "string", - "description": "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." + "description": "Version of Kubernetes specified when creating the managed cluster." }, "linuxProfile": { "oneOf": [ @@ -2130,7 +2137,7 @@ }, "nodeResourceGroup": { "type": "string", - "description": "The name of the resource group containing agent pool nodes." + "description": "Name of the resource group containing agent pool nodes." }, "podIdentityProfile": { "oneOf": [ @@ -2140,8 +2147,7 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration." + ] }, "privateLinkResources": { "oneOf": [ @@ -2177,7 +2183,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Profile for Windows VMs in the managed cluster." + "description": "Profile for Windows VMs in the container service cluster." } }, "description": "Properties of the managed cluster." @@ -2186,8 +2192,7 @@ "type": "object", "properties": { "balance-similar-node-groups": { - "type": "string", - "description": "Valid values are 'true' and 'false'" + "type": "string" }, "expander": { "oneOf": [ @@ -2203,68 +2208,52 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "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." + ] }, "max-empty-bulk-delete": { - "type": "string", - "description": "The default is 10." + "type": "string" }, "max-graceful-termination-sec": { - "type": "string", - "description": "The default is 600." + "type": "string" }, "max-node-provision-time": { - "type": "string", - "description": "The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + "type": "string" }, "max-total-unready-percentage": { - "type": "string", - "description": "The default is 45. The maximum is 100 and the minimum is 0." + "type": "string" }, "new-pod-scale-up-delay": { - "type": "string", - "description": "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)." + "type": "string" }, "ok-total-unready-count": { - "type": "string", - "description": "This must be an integer. The default is 3." + "type": "string" }, "scale-down-delay-after-add": { - "type": "string", - "description": "The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + "type": "string" }, "scale-down-delay-after-delete": { - "type": "string", - "description": "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." + "type": "string" }, "scale-down-delay-after-failure": { - "type": "string", - "description": "The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + "type": "string" }, "scale-down-unneeded-time": { - "type": "string", - "description": "The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + "type": "string" }, "scale-down-unready-time": { - "type": "string", - "description": "The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + "type": "string" }, "scale-down-utilization-threshold": { - "type": "string", - "description": "The default is '0.5'." + "type": "string" }, "scan-interval": { - "type": "string", - "description": "The default is '10'. Values must be an integer number of seconds." + "type": "string" }, "skip-nodes-with-local-storage": { - "type": "string", - "description": "The default is true." + "type": "string" }, "skip-nodes-with-system-pods": { - "type": "string", - "description": "The default is true." + "type": "string" } }, "description": "Parameters to be applied to the cluster-autoscaler when enabled" @@ -2301,7 +2290,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The name of a managed cluster SKU." + "description": "Name of a managed cluster SKU." }, "tier": { "oneOf": [ @@ -2316,10 +2305,9 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "If not specified, the default is 'Free'. See [uptime SLA](https://docs.microsoft.com/azure/aks/uptime-sla) for more details." + "description": "Tier of a managed cluster SKU." } - }, - "description": "The SKU of a Managed Cluster." + } }, "managedClusters_agentPools_childResource": { "type": "object", @@ -2382,7 +2370,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Properties used to configure planned maintenance for a Managed Cluster." + "description": "Default maintenance configuration properties." }, "type": { "type": "string", @@ -2447,7 +2435,7 @@ }, "adminUsername": { "type": "string", - "description": "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" + "description": "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" }, "enableCSIProxy": { "oneOf": [ @@ -2458,7 +2446,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy)." + "description": "Whether to enable CSI proxy." }, "licenseType": { "oneOf": [ @@ -2473,20 +2461,20 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details." + "description": "The licenseType to use for Windows VMs. Windows_Server is used to enable Azure Hybrid User Benefits for Windows VMs." } }, "required": [ "adminUsername" ], - "description": "Profile for Windows VMs in the managed cluster." + "description": "Profile for Windows VMs in the container service cluster." }, "PrivateEndpoint": { "type": "object", "properties": { "id": { "type": "string", - "description": "The resource ID of the private endpoint" + "description": "The resource Id for private endpoint" } }, "description": "Private endpoint which a connection belongs to." @@ -2549,7 +2537,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The RequiredMembers of the resource" + "description": "RequiredMembers of the resource" }, "type": { "type": "string", @@ -2923,7 +2911,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The day of the week." + "description": "A day in a week." }, "hourSlots": { "oneOf": [ @@ -2937,7 +2925,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range." + "description": "hour slots in a day." } }, "description": "Time in a week." @@ -2956,25 +2944,24 @@ "description": "The start of a time span" } }, - "description": "For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z." + "description": "The time span with start and end properties." }, "UserAssignedIdentity": { "type": "object", "properties": { "clientId": { "type": "string", - "description": "The client ID of the user assigned identity." + "description": "The client id of the user assigned identity." }, "objectId": { "type": "string", - "description": "The object ID of the user assigned identity." + "description": "The object id of the user assigned identity." }, "resourceId": { "type": "string", - "description": "The resource ID of the user assigned identity." + "description": "The resource id of the user assigned identity." } - }, - "description": "Details about a user assigned identity." + } } } } \ No newline at end of file diff --git a/schemas/2021-07-01/Microsoft.ContainerService.json b/schemas/2021-07-01/Microsoft.ContainerService.json new file mode 100644 index 0000000000..948244a1b4 --- /dev/null +++ b/schemas/2021-07-01/Microsoft.ContainerService.json @@ -0,0 +1,3042 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-07-01/Microsoft.ContainerService.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.ContainerService", + "description": "Microsoft ContainerService Resource Types", + "resourceDefinitions": { + "managedClusters": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01" + ] + }, + "extendedLocation": { + "oneOf": [ + { + "$ref": "#/definitions/ExtendedLocation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The complex type of the extended location." + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the managed cluster." + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$", + "minLength": 1, + "maxLength": 63 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the managed cluster resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the managed cluster." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/managedClusters_maintenanceConfigurations_childResource" + }, + { + "$ref": "#/definitions/managedClusters_agentPools_childResource" + }, + { + "$ref": "#/definitions/managedClusters_privateEndpointConnections_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterSKU" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The SKU of a Managed Cluster." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ContainerService/managedClusters" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/managedClusters" + }, + "managedClusters_agentPools": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the agent pool." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties for the container service agent pool profile." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ContainerService/managedClusters/agentPools" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/managedClusters/agentPools" + }, + "managedClusters_maintenanceConfigurations": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the maintenance configuration." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MaintenanceConfigurationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties used to configure planned maintenance for a Managed Cluster." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ContainerService/managedClusters/maintenanceConfigurations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations" + }, + "managedClusters_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a private endpoint connection." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ContainerService/managedClusters/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/managedClusters/privateEndpointConnections" + } + }, + "definitions": { + "AgentPoolUpgradeSettings": { + "type": "object", + "properties": { + "maxSurge": { + "type": "string", + "description": "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" + } + }, + "description": "Settings for upgrading an agentpool" + }, + "ContainerServiceLinuxProfile": { + "type": "object", + "properties": { + "adminUsername": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z][-A-Za-z0-9_]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The administrator username to use for Linux VMs." + }, + "ssh": { + "oneOf": [ + { + "$ref": "#/definitions/ContainerServiceSshConfiguration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "SSH configuration for Linux-based VMs running on Azure." + } + }, + "required": [ + "adminUsername", + "ssh" + ], + "description": "Profile for Linux VMs in the container service cluster." + }, + "ContainerServiceNetworkProfile": { + "type": "object", + "properties": { + "dnsServiceIP": { + "oneOf": [ + { + "type": "string", + "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", + "default": "10.0.0.10" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr." + }, + "dockerBridgeCidr": { + "oneOf": [ + { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "172.17.0.1/16" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range." + }, + "loadBalancerProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterLoadBalancerProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Profile of the managed cluster load balancer." + }, + "loadBalancerSku": { + "oneOf": [ + { + "type": "string", + "enum": [ + "standard", + "basic" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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." + }, + "networkMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "transparent", + "bridge" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This cannot be specified if networkPlugin is anything other than 'azure'." + }, + "networkPlugin": { + "oneOf": [ + { + "type": "string", + "enum": [ + "azure", + "kubenet" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Network plugin used for building the Kubernetes network." + }, + "networkPolicy": { + "oneOf": [ + { + "type": "string", + "enum": [ + "calico", + "azure" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Network policy used for building the Kubernetes network." + }, + "outboundType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "loadBalancer", + "userDefinedRouting" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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)." + }, + "podCidr": { + "oneOf": [ + { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "10.244.0.0/16" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A CIDR notation IP range from which to assign pod IPs when kubenet is used." + }, + "serviceCidr": { + "oneOf": [ + { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "10.0.0.0/16" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges." + } + }, + "description": "Profile of network configuration." + }, + "ContainerServiceSshConfiguration": { + "type": "object", + "properties": { + "publicKeys": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerServiceSshPublicKey" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified." + } + }, + "required": [ + "publicKeys" + ], + "description": "SSH configuration for Linux-based VMs running on Azure." + }, + "ContainerServiceSshPublicKey": { + "type": "object", + "properties": { + "keyData": { + "type": "string", + "description": "Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers." + } + }, + "required": [ + "keyData" + ], + "description": "Contains information about SSH certificate public key data." + }, + "ExtendedLocation": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "EdgeZone" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of the extended location." + } + }, + "description": "The complex type of the extended location." + }, + "KubeletConfig": { + "type": "object", + "properties": { + "allowedUnsafeSysctls": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`)." + }, + "containerLogMaxFiles": { + "oneOf": [ + { + "type": "integer", + "minimum": 2 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of container log files that can be present for a container. The number must be ≥ 2." + }, + "containerLogMaxSizeMB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum size (e.g. 10Mi) of container log file before it is rotated." + }, + "cpuCfsQuota": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The default is true." + }, + "cpuCfsQuotaPeriod": { + "type": "string", + "description": "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'." + }, + "cpuManagerPolicy": { + "type": "string", + "description": "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'." + }, + "failSwapOn": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If set to true it will make the Kubelet fail to start if swap is enabled on the node." + }, + "imageGcHighThreshold": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "To disable image garbage collection, set to 100. The default is 85%" + }, + "imageGcLowThreshold": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This cannot be set higher than imageGcHighThreshold. The default is 80%" + }, + "podMaxPids": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of processes per pod." + }, + "topologyManagerPolicy": { + "type": "string", + "description": "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'." + } + }, + "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + }, + "LinuxOSConfig": { + "type": "object", + "properties": { + "swapFileSizeMB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The size in MB of a swap file that will be created on each node." + }, + "sysctls": { + "oneOf": [ + { + "$ref": "#/definitions/SysctlConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl settings for Linux agent nodes." + }, + "transparentHugePageDefrag": { + "type": "string", + "description": "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)." + }, + "transparentHugePageEnabled": { + "type": "string", + "description": "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)." + } + }, + "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + }, + "MaintenanceConfigurationProperties": { + "type": "object", + "properties": { + "notAllowedTime": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/TimeSpan" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Time slots on which upgrade is not allowed." + }, + "timeInWeek": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/TimeInWeek" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If two array entries specify the same day of the week, the applied configuration is the union of times in both entries." + } + }, + "description": "Properties used to configure planned maintenance for a Managed Cluster." + }, + "ManagedClusterAADProfile": { + "type": "object", + "properties": { + "adminGroupObjectIDs": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of AAD group object IDs that will have admin role of the cluster." + }, + "clientAppID": { + "type": "string", + "description": "The client AAD application ID." + }, + "enableAzureRBAC": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable Azure RBAC for Kubernetes authorization." + }, + "managed": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable managed AAD." + }, + "serverAppID": { + "type": "string", + "description": "The server AAD application ID." + }, + "serverAppSecret": { + "type": "string", + "description": "The server AAD application secret." + }, + "tenantID": { + "type": "string", + "description": "The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription." + } + }, + "description": "For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad)." + }, + "ManagedClusterAddonProfile": { + "type": "object", + "properties": { + "config": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Key-value pairs for configuring an add-on." + }, + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether the add-on is enabled or not." + } + }, + "required": [ + "enabled" + ], + "description": "A Kubernetes add-on profile for a managed cluster." + }, + "ManagedClusterAgentPoolProfile": { + "type": "object", + "properties": { + "availabilityZones": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'." + }, + "count": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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." + }, + "enableAutoScaling": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable auto-scaler" + }, + "enableEncryptionAtHost": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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" + }, + "enableFIPS": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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." + }, + "enableNodePublicIP": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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." + }, + "enableUltraSSD": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable UltraSSD" + }, + "gpuInstanceProfile": { + "oneOf": [ + { + "type": "string", + "enum": [ + "MIG1g", + "MIG2g", + "MIG3g", + "MIG4g", + "MIG7g" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU." + }, + "kubeletConfig": { + "oneOf": [ + { + "$ref": "#/definitions/KubeletConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + }, + "kubeletDiskType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "OS", + "Temporary" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "linuxOSConfig": { + "oneOf": [ + { + "$ref": "#/definitions/LinuxOSConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + }, + "maxCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of nodes for auto-scaling" + }, + "maxPods": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of pods that can run on a node." + }, + "minCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The minimum number of nodes for auto-scaling" + }, + "mode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "System", + "User" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-z][a-z0-9]{0,11}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Windows agent pool names must be 6 characters or less." + }, + "nodeLabels": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The node labels to be persisted across all nodes in agent pool." + }, + "nodePublicIPPrefixID": { + "type": "string", + "description": "This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}" + }, + "nodeTaints": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule." + }, + "orchestratorVersion": { + "type": "string", + "description": "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)." + }, + "osDiskSizeGB": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 2048 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + }, + "osDiskType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Managed", + "Ephemeral" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "osSKU": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Ubuntu", + "CBLMariner" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "osType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Linux", + "Windows" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "podSubnetID": { + "type": "string", + "description": "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}" + }, + "proximityPlacementGroupID": { + "type": "string", + "description": "The ID for Proximity Placement Group." + }, + "scaleDownMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Delete", + "Deallocate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete." + }, + "scaleSetEvictionPolicy": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Delete", + "Deallocate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'." + }, + "scaleSetPriority": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Spot", + "Regular" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'." + }, + "spotMaxPrice": { + "oneOf": [ + { + "type": "number", + "default": -1 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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)" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The tags to be persisted on the agent pool virtual machine scale set." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "VirtualMachineScaleSets", + "AvailabilitySet" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "upgradeSettings": { + "oneOf": [ + { + "$ref": "#/definitions/AgentPoolUpgradeSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Settings for upgrading an agentpool" + }, + "vmSize": { + "type": "string", + "description": "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" + }, + "vnetSubnetID": { + "type": "string", + "description": "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}" + } + }, + "required": [ + "name" + ], + "description": "Profile for the container service agent pool." + }, + "ManagedClusterAgentPoolProfileProperties": { + "type": "object", + "properties": { + "availabilityZones": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'." + }, + "count": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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." + }, + "enableAutoScaling": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable auto-scaler" + }, + "enableEncryptionAtHost": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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" + }, + "enableFIPS": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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." + }, + "enableNodePublicIP": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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." + }, + "enableUltraSSD": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable UltraSSD" + }, + "gpuInstanceProfile": { + "oneOf": [ + { + "type": "string", + "enum": [ + "MIG1g", + "MIG2g", + "MIG3g", + "MIG4g", + "MIG7g" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU." + }, + "kubeletConfig": { + "oneOf": [ + { + "$ref": "#/definitions/KubeletConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + }, + "kubeletDiskType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "OS", + "Temporary" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "linuxOSConfig": { + "oneOf": [ + { + "$ref": "#/definitions/LinuxOSConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + }, + "maxCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of nodes for auto-scaling" + }, + "maxPods": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of pods that can run on a node." + }, + "minCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The minimum number of nodes for auto-scaling" + }, + "mode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "System", + "User" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "nodeLabels": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The node labels to be persisted across all nodes in agent pool." + }, + "nodePublicIPPrefixID": { + "type": "string", + "description": "This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}" + }, + "nodeTaints": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule." + }, + "orchestratorVersion": { + "type": "string", + "description": "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)." + }, + "osDiskSizeGB": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 2048 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + }, + "osDiskType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Managed", + "Ephemeral" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "osSKU": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Ubuntu", + "CBLMariner" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "osType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Linux", + "Windows" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "podSubnetID": { + "type": "string", + "description": "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}" + }, + "proximityPlacementGroupID": { + "type": "string", + "description": "The ID for Proximity Placement Group." + }, + "scaleDownMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Delete", + "Deallocate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete." + }, + "scaleSetEvictionPolicy": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Delete", + "Deallocate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'." + }, + "scaleSetPriority": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Spot", + "Regular" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'." + }, + "spotMaxPrice": { + "oneOf": [ + { + "type": "number", + "default": -1 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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)" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The tags to be persisted on the agent pool virtual machine scale set." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "VirtualMachineScaleSets", + "AvailabilitySet" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "upgradeSettings": { + "oneOf": [ + { + "$ref": "#/definitions/AgentPoolUpgradeSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Settings for upgrading an agentpool" + }, + "vmSize": { + "type": "string", + "description": "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" + }, + "vnetSubnetID": { + "type": "string", + "description": "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}" + } + }, + "description": "Properties for the container service agent pool profile." + }, + "ManagedClusterAPIServerAccessProfile": { + "type": "object", + "properties": { + "authorizedIPRanges": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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)." + }, + "enablePrivateCluster": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters)." + }, + "enablePrivateClusterPublicFQDN": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to create additional public FQDN for private cluster or not." + }, + "privateDNSZone": { + "type": "string", + "description": "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'." + } + }, + "description": "Access profile for managed cluster API server." + }, + "ManagedClusterAutoUpgradeProfile": { + "type": "object", + "properties": { + "upgradeChannel": { + "oneOf": [ + { + "type": "string", + "enum": [ + "rapid", + "stable", + "patch", + "node-image", + "none" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel)." + } + }, + "description": "Auto upgrade profile for a managed cluster." + }, + "ManagedClusterHTTPProxyConfig": { + "type": "object", + "properties": { + "httpProxy": { + "type": "string", + "description": "The HTTP proxy server endpoint to use." + }, + "httpsProxy": { + "type": "string", + "description": "The HTTPS proxy server endpoint to use." + }, + "noProxy": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The endpoints that should not go through proxy." + }, + "trustedCa": { + "type": "string", + "description": "Alternative CA cert to use for connecting to proxy servers." + } + }, + "description": "Cluster HTTP proxy configuration." + }, + "ManagedClusterIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SystemAssigned", + "UserAssigned", + "None" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity)." + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ManagedServiceIdentityUserAssignedIdentitiesValue" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the managed cluster." + }, + "ManagedClusterLoadBalancerProfile": { + "type": "object", + "properties": { + "allocatedOutboundPorts": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 64000, + "default": "0" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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." + }, + "effectiveOutboundIPs": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The effective outbound IP resources of the cluster load balancer." + }, + "idleTimeoutInMinutes": { + "oneOf": [ + { + "type": "integer", + "minimum": 4, + "maximum": 120, + "default": "30" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes." + }, + "managedOutboundIPs": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterLoadBalancerProfileManagedOutboundIPs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Desired managed outbound IPs for the cluster load balancer." + }, + "outboundIPPrefixes": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterLoadBalancerProfileOutboundIPPrefixes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Desired outbound IP Prefix resources for the cluster load balancer." + }, + "outboundIPs": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterLoadBalancerProfileOutboundIPs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Desired outbound IP resources for the cluster load balancer." + } + }, + "description": "Profile of the managed cluster load balancer." + }, + "ManagedClusterLoadBalancerProfileManagedOutboundIPs": { + "type": "object", + "properties": { + "count": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 100, + "default": "1" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The desired number of 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. " + } + }, + "description": "Desired managed outbound IPs for the cluster load balancer." + }, + "ManagedClusterLoadBalancerProfileOutboundIPPrefixes": { + "type": "object", + "properties": { + "publicIPPrefixes": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A list of public IP prefix resources." + } + }, + "description": "Desired outbound IP Prefix resources for the cluster load balancer." + }, + "ManagedClusterLoadBalancerProfileOutboundIPs": { + "type": "object", + "properties": { + "publicIPs": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A list of public IP resources." + } + }, + "description": "Desired outbound IP resources for the cluster load balancer." + }, + "ManagedClusterPodIdentity": { + "type": "object", + "properties": { + "bindingSelector": { + "type": "string", + "description": "The binding selector to use for the AzureIdentityBinding resource." + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/UserAssignedIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Details about a user assigned identity." + }, + "name": { + "type": "string", + "description": "The name of the pod identity." + }, + "namespace": { + "type": "string", + "description": "The namespace of the pod identity." + } + }, + "required": [ + "identity", + "name", + "namespace" + ], + "description": "Details about the pod identity assigned to the Managed Cluster." + }, + "ManagedClusterPodIdentityException": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the pod identity exception." + }, + "namespace": { + "type": "string", + "description": "The namespace of the pod identity exception." + }, + "podLabels": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The pod labels to match." + } + }, + "required": [ + "name", + "namespace", + "podLabels" + ], + "description": "See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details." + }, + "ManagedClusterPodIdentityProfile": { + "type": "object", + "properties": { + "allowNetworkPluginKubenet": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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." + }, + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether the pod identity addon is enabled." + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterPodIdentity" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The pod identities to use in the cluster." + }, + "userAssignedIdentityExceptions": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterPodIdentityException" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The pod identity exceptions to allow." + } + }, + "description": "See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration." + }, + "ManagedClusterProperties": { + "type": "object", + "properties": { + "aadProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterAADProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad)." + }, + "addonProfiles": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ManagedClusterAddonProfile" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The profile of managed cluster add-on." + }, + "agentPoolProfiles": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterAgentPoolProfile" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The agent pool properties." + }, + "apiServerAccessProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterAPIServerAccessProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Access profile for managed cluster API server." + }, + "autoScalerProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterPropertiesAutoScalerProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Parameters to be applied to the cluster-autoscaler when enabled" + }, + "autoUpgradeProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterAutoUpgradeProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Auto upgrade profile for a managed cluster." + }, + "disableLocalAccounts": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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)." + }, + "diskEncryptionSetID": { + "type": "string", + "description": "This is of the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}'" + }, + "dnsPrefix": { + "type": "string", + "description": "This cannot be updated once the Managed Cluster has been created." + }, + "enablePodSecurityPolicy": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "(DEPRECATING) Whether to enable Kubernetes pod security policy (preview). This feature is set for removal on October 15th, 2020. Learn more at aka.ms/aks/azpodpolicy." + }, + "enableRBAC": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable Kubernetes Role-Based Access Control." + }, + "fqdnSubdomain": { + "type": "string", + "description": "This cannot be updated once the Managed Cluster has been created." + }, + "httpProxyConfig": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterHTTPProxyConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cluster HTTP proxy configuration." + }, + "identityProfile": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identities associated with the cluster." + }, + "kubernetesVersion": { + "type": "string", + "description": "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." + }, + "linuxProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ContainerServiceLinuxProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Profile for Linux VMs in the container service cluster." + }, + "networkProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ContainerServiceNetworkProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Profile of network configuration." + }, + "nodeResourceGroup": { + "type": "string", + "description": "The name of the resource group containing agent pool nodes." + }, + "podIdentityProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterPodIdentityProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration." + }, + "privateLinkResources": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Private link resources associated with the cluster." + }, + "securityProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterSecurityProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Security profile for the container service cluster." + }, + "servicePrincipalProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterServicePrincipalProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs." + }, + "windowsProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterWindowsProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Profile for Windows VMs in the managed cluster." + } + }, + "description": "Properties of the managed cluster." + }, + "ManagedClusterPropertiesAutoScalerProfile": { + "type": "object", + "properties": { + "balance-similar-node-groups": { + "type": "string", + "description": "Valid values are 'true' and 'false'" + }, + "expander": { + "oneOf": [ + { + "type": "string", + "enum": [ + "least-waste", + "most-pods", + "priority", + "random" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "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." + }, + "max-empty-bulk-delete": { + "type": "string", + "description": "The default is 10." + }, + "max-graceful-termination-sec": { + "type": "string", + "description": "The default is 600." + }, + "max-node-provision-time": { + "type": "string", + "description": "The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + }, + "max-total-unready-percentage": { + "type": "string", + "description": "The default is 45. The maximum is 100 and the minimum is 0." + }, + "new-pod-scale-up-delay": { + "type": "string", + "description": "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)." + }, + "ok-total-unready-count": { + "type": "string", + "description": "This must be an integer. The default is 3." + }, + "scale-down-delay-after-add": { + "type": "string", + "description": "The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + }, + "scale-down-delay-after-delete": { + "type": "string", + "description": "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." + }, + "scale-down-delay-after-failure": { + "type": "string", + "description": "The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + }, + "scale-down-unneeded-time": { + "type": "string", + "description": "The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + }, + "scale-down-unready-time": { + "type": "string", + "description": "The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + }, + "scale-down-utilization-threshold": { + "type": "string", + "description": "The default is '0.5'." + }, + "scan-interval": { + "type": "string", + "description": "The default is '10'. Values must be an integer number of seconds." + }, + "skip-nodes-with-local-storage": { + "type": "string", + "description": "The default is true." + }, + "skip-nodes-with-system-pods": { + "type": "string", + "description": "The default is true." + } + }, + "description": "Parameters to be applied to the cluster-autoscaler when enabled" + }, + "ManagedClusterSecurityProfile": { + "type": "object", + "properties": { + "azureDefender": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterSecurityProfileAzureDefender" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Defender settings for the security profile." + } + }, + "description": "Security profile for the container service cluster." + }, + "ManagedClusterSecurityProfileAzureDefender": { + "type": "object", + "properties": { + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable Azure Defender" + }, + "logAnalyticsWorkspaceResourceId": { + "type": "string", + "description": "Resource ID of the Log Analytics workspace to be associated with Azure Defender. When Azure Defender is enabled, this field is required and must be a valid workspace resource ID. When Azure Defender is disabled, leave the field empty." + } + }, + "description": "Azure Defender settings for the security profile." + }, + "ManagedClusterServicePrincipalProfile": { + "type": "object", + "properties": { + "clientId": { + "type": "string", + "description": "The ID for the service principal." + }, + "secret": { + "type": "string", + "description": "The secret password associated with the service principal in plain text." + } + }, + "required": [ + "clientId" + ], + "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs." + }, + "ManagedClusterSKU": { + "type": "object", + "properties": { + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Basic" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of a managed cluster SKU." + }, + "tier": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Paid", + "Free" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If not specified, the default is 'Free'. See [uptime SLA](https://docs.microsoft.com/azure/aks/uptime-sla) for more details." + } + }, + "description": "The SKU of a Managed Cluster." + }, + "managedClusters_agentPools_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the agent pool." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties for the container service agent pool profile." + }, + "type": { + "type": "string", + "enum": [ + "agentPools" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/managedClusters/agentPools" + }, + "managedClusters_maintenanceConfigurations_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the maintenance configuration." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MaintenanceConfigurationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties used to configure planned maintenance for a Managed Cluster." + }, + "type": { + "type": "string", + "enum": [ + "maintenanceConfigurations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations" + }, + "managedClusters_privateEndpointConnections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a private endpoint connection." + }, + "type": { + "type": "string", + "enum": [ + "privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/managedClusters/privateEndpointConnections" + }, + "ManagedClusterWindowsProfile": { + "type": "object", + "properties": { + "adminPassword": { + "type": "string", + "description": "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!\"" + }, + "adminUsername": { + "type": "string", + "description": "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" + }, + "enableCSIProxy": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy)." + }, + "licenseType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "Windows_Server" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details." + } + }, + "required": [ + "adminUsername" + ], + "description": "Profile for Windows VMs in the managed cluster." + }, + "ManagedServiceIdentityUserAssignedIdentitiesValue": { + "type": "object", + "properties": {} + }, + "PrivateEndpoint": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The resource ID of the private endpoint" + } + }, + "description": "Private endpoint which a connection belongs to." + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "privateEndpoint": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpoint" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Private endpoint which a connection belongs to." + }, + "privateLinkServiceConnectionState": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The state of a private link service connection." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of a private endpoint connection." + }, + "PrivateLinkResource": { + "type": "object", + "properties": { + "groupId": { + "type": "string", + "description": "The group ID of the resource." + }, + "id": { + "type": "string", + "description": "The ID of the private link resource." + }, + "name": { + "type": "string", + "description": "The name of the private link resource." + }, + "requiredMembers": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The RequiredMembers of the resource" + }, + "type": { + "type": "string", + "description": "The resource type." + } + }, + "description": "A private link resource" + }, + "PrivateLinkServiceConnectionState": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "The private link service connection description." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The private link service connection status." + } + }, + "description": "The state of a private link service connection." + }, + "ResourceReference": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified Azure resource id." + } + }, + "description": "A reference to an Azure resource." + }, + "SysctlConfig": { + "type": "object", + "properties": { + "fsAioMaxNr": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting fs.aio-max-nr." + }, + "fsFileMax": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting fs.file-max." + }, + "fsInotifyMaxUserWatches": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting fs.inotify.max_user_watches." + }, + "fsNrOpen": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting fs.nr_open." + }, + "kernelThreadsMax": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting kernel.threads-max." + }, + "netCoreNetdevMaxBacklog": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.core.netdev_max_backlog." + }, + "netCoreOptmemMax": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.core.optmem_max." + }, + "netCoreRmemDefault": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.core.rmem_default." + }, + "netCoreRmemMax": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.core.rmem_max." + }, + "netCoreSomaxconn": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.core.somaxconn." + }, + "netCoreWmemDefault": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.core.wmem_default." + }, + "netCoreWmemMax": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.core.wmem_max." + }, + "netIpv4IpLocalPortRange": { + "type": "string", + "description": "Sysctl setting net.ipv4.ip_local_port_range." + }, + "netIpv4NeighDefaultGcThresh1": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh1." + }, + "netIpv4NeighDefaultGcThresh2": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh2." + }, + "netIpv4NeighDefaultGcThresh3": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh3." + }, + "netIpv4TcpFinTimeout": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.tcp_fin_timeout." + }, + "netIpv4TcpkeepaliveIntvl": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.tcp_keepalive_intvl." + }, + "netIpv4TcpKeepaliveProbes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.tcp_keepalive_probes." + }, + "netIpv4TcpKeepaliveTime": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.tcp_keepalive_time." + }, + "netIpv4TcpMaxSynBacklog": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.tcp_max_syn_backlog." + }, + "netIpv4TcpMaxTwBuckets": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.tcp_max_tw_buckets." + }, + "netIpv4TcpTwReuse": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.tcp_tw_reuse." + }, + "netNetfilterNfConntrackBuckets": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.netfilter.nf_conntrack_buckets." + }, + "netNetfilterNfConntrackMax": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.netfilter.nf_conntrack_max." + }, + "vmMaxMapCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting vm.max_map_count." + }, + "vmSwappiness": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting vm.swappiness." + }, + "vmVfsCachePressure": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting vm.vfs_cache_pressure." + } + }, + "description": "Sysctl settings for Linux agent nodes." + }, + "TimeInWeek": { + "type": "object", + "properties": { + "day": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The day of the week." + }, + "hourSlots": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "integer" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range." + } + }, + "description": "Time in a week." + }, + "TimeSpan": { + "type": "object", + "properties": { + "end": { + "type": "string", + "format": "date-time", + "description": "The end of a time span" + }, + "start": { + "type": "string", + "format": "date-time", + "description": "The start of a time span" + } + }, + "description": "For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z." + }, + "UserAssignedIdentity": { + "type": "object", + "properties": { + "clientId": { + "type": "string", + "description": "The client ID of the user assigned identity." + }, + "objectId": { + "type": "string", + "description": "The object ID of the user assigned identity." + }, + "resourceId": { + "type": "string", + "description": "The resource ID of the user assigned identity." + } + }, + "description": "Details about a user assigned identity." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index f54933a50f..154df14ffd 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -2911,6 +2911,18 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ContainerService.json#/resourceDefinitions/managedClusters_privateEndpointConnections" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-07-01/Microsoft.ContainerService.json#/resourceDefinitions/managedClusters" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-07-01/Microsoft.ContainerService.json#/resourceDefinitions/managedClusters_agentPools" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-07-01/Microsoft.ContainerService.json#/resourceDefinitions/managedClusters_maintenanceConfigurations" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-07-01/Microsoft.ContainerService.json#/resourceDefinitions/managedClusters_privateEndpointConnections" + }, { "$ref": "https://schema.management.azure.com/schemas/2018-09-01-preview/Microsoft.CustomProviders.json#/resourceDefinitions/resourceProviders" },