diff --git a/sdk/containerservice/azure-mgmt-containerservice/_meta.json b/sdk/containerservice/azure-mgmt-containerservice/_meta.json index e61e599ad668..a47bc6b31813 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/_meta.json +++ b/sdk/containerservice/azure-mgmt-containerservice/_meta.json @@ -1,7 +1,7 @@ { "autorest": "V2", "use": "@microsoft.azure/autorest.python@~4.0.71", - "commit": "1f0bb3f63b1664ace42cfdf646d8b2382d7b7b22", + "commit": "42a50e3b7864eebf3acc51b5fe739e98afe79c82", "repository_url": "https://github.com/Azure/azure-rest-api-specs", "autorest_command": "autorest specification/containerservice/resource-manager/readme.md --keep-version-file --multiapi --no-async --python --python-mode=update --python-sdks-folder=/home/vsts/work/1/s/azure-sdk-for-python/sdk --use=@microsoft.azure/autorest.python@~4.0.71 --version=V2", "readme": "specification/containerservice/resource-manager/readme.md" diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/models/_container_service_client_enums.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/models/_container_service_client_enums.py index 07d226f1f08c..30bba27be5d6 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/models/_container_service_client_enums.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/models/_container_service_client_enums.py @@ -198,20 +198,20 @@ class ContainerServiceVMSizeTypes(str, Enum): class OSDiskType(str, Enum): - managed = "Managed" - ephemeral = "Ephemeral" + managed = "Managed" #: Azure replicates the operating system disk for a virtual machine to Azure storage to avoid data loss should the VM need to be relocated to another host. Since containers aren't designed to have local state persisted, this behavior offers limited value while providing some drawbacks, including slower node provisioning and higher read/write latency. + ephemeral = "Ephemeral" #: Ephemeral OS disks are stored only on the host machine, just like a temporary disk. This provides lower read/write latency, along with faster node scaling and cluster upgrades. class KubeletDiskType(str, Enum): - os = "OS" - temporary = "Temporary" + os = "OS" #: Kubelet will use the OS disk for its data. + temporary = "Temporary" #: Kubelet will use the temporary disk for its data. class OSType(str, Enum): - linux = "Linux" - windows = "Windows" + linux = "Linux" #: Use Linux. + windows = "Windows" #: Use Windows. class OSSKU(str, Enum): @@ -222,32 +222,32 @@ class OSSKU(str, Enum): class AgentPoolType(str, Enum): - virtual_machine_scale_sets = "VirtualMachineScaleSets" - availability_set = "AvailabilitySet" + virtual_machine_scale_sets = "VirtualMachineScaleSets" #: Create an Agent Pool backed by a Virtual Machine Scale Set. + availability_set = "AvailabilitySet" #: Use of this is strongly discouraged. class AgentPoolMode(str, Enum): - system = "System" - user = "User" + system = "System" #: System agent pools are primarily for hosting critical system pods such as CoreDNS and metrics-server. System agent pools osType must be Linux. System agent pools VM SKU must have at least 2vCPUs and 4GB of memory. + user = "User" #: User agent pools are primarily for hosting your application pods. class Code(str, Enum): - running = "Running" - stopped = "Stopped" + running = "Running" #: The cluster is running. + stopped = "Stopped" #: The cluster is stopped. class ScaleSetPriority(str, Enum): - spot = "Spot" - regular = "Regular" + spot = "Spot" #: Spot priority VMs will be used. There is no SLA for spot nodes. See [spot on AKS](https://docs.microsoft.com/azure/aks/spot-node-pool) for more information. + regular = "Regular" #: Regular VMs will be used. class ScaleSetEvictionPolicy(str, Enum): - delete = "Delete" - deallocate = "Deallocate" + delete = "Delete" #: Nodes in the underlying Scale Set of the node pool are deleted when they're evicted. + deallocate = "Deallocate" #: Nodes in the underlying Scale Set of the node pool are set to the stopped-deallocated state upon eviction. Nodes in the stopped-deallocated state count against your compute quota and can cause issues with cluster scaling or upgrading. class GPUInstanceProfile(str, Enum): @@ -261,38 +261,38 @@ class GPUInstanceProfile(str, Enum): class LicenseType(str, Enum): - none = "None" - windows_server = "Windows_Server" + none = "None" #: No additional licensing is applied. + windows_server = "Windows_Server" #: Enables Azure Hybrid User Benefits for Windows VMs. class NetworkPlugin(str, Enum): - azure = "azure" - kubenet = "kubenet" + azure = "azure" #: Use the Azure CNI network plugin. See [Azure CNI (advanced) networking](https://docs.microsoft.com/azure/aks/concepts-network#azure-cni-advanced-networking) for more information. + kubenet = "kubenet" #: Use the Kubenet network plugin. See [Kubenet (basic) networking](https://docs.microsoft.com/azure/aks/concepts-network#kubenet-basic-networking) for more information. class NetworkPolicy(str, Enum): - calico = "calico" - azure = "azure" + calico = "calico" #: Use Calico network policies. See [differences between Azure and Calico policies](https://docs.microsoft.com/azure/aks/use-network-policies#differences-between-azure-and-calico-policies-and-their-capabilities) for more information. + azure = "azure" #: Use Azure network policies. See [differences between Azure and Calico policies](https://docs.microsoft.com/azure/aks/use-network-policies#differences-between-azure-and-calico-policies-and-their-capabilities) for more information. class NetworkMode(str, Enum): - transparent = "transparent" - bridge = "bridge" + transparent = "transparent" #: No bridge is created. Intra-VM Pod to Pod communication is through IP routes created by Azure CNI. See [Transparent Mode](https://docs.microsoft.com/azure/aks/faq#transparent-mode) for more information. + bridge = "bridge" #: This is no longer supported class OutboundType(str, Enum): - load_balancer = "loadBalancer" - user_defined_routing = "userDefinedRouting" + load_balancer = "loadBalancer" #: The load balancer is used for egress through an AKS assigned public IP. This supports Kubernetes services of type 'loadBalancer'. For more information see [outbound type loadbalancer](https://docs.microsoft.com/azure/aks/egress-outboundtype#outbound-type-of-loadbalancer). + user_defined_routing = "userDefinedRouting" #: Egress paths must be defined by the user. This is an advanced scenario and requires proper network configuration. For more information see [outbound type userDefinedRouting](https://docs.microsoft.com/azure/aks/egress-outboundtype#outbound-type-of-userdefinedrouting). class LoadBalancerSku(str, Enum): - standard = "standard" - basic = "basic" + standard = "standard" #: Use a a standard Load Balancer. This is the recommended Load Balancer SKU. For more information about on working with the load balancer in the managed cluster, see the [standard Load Balancer](https://docs.microsoft.com/azure/aks/load-balancer-standard) article. + basic = "basic" #: Use a basic Load Balancer with limited functionality. class CreatedByType(str, Enum): @@ -324,26 +324,26 @@ class ManagedClusterPodIdentityProvisioningState(str, Enum): class UpgradeChannel(str, Enum): - rapid = "rapid" - stable = "stable" - patch = "patch" - node_image = "node-image" - none = "none" + rapid = "rapid" #: Automatically upgrade the cluster to the latest supported patch release on the latest supported minor version. In cases where the cluster is at a version of Kubernetes that is at an N-2 minor version where N is the latest supported minor version, the cluster first upgrades to the latest supported patch version on N-1 minor version. For example, if a cluster is running version 1.17.7 and versions 1.17.9, 1.18.4, 1.18.6, and 1.19.1 are available, your cluster first is upgraded to 1.18.6, then is upgraded to 1.19.1. + stable = "stable" #: Automatically upgrade the cluster to the latest supported patch release on minor version N-1, where N is the latest supported minor version. For example, if a cluster is running version 1.17.7 and versions 1.17.9, 1.18.4, 1.18.6, and 1.19.1 are available, your cluster is upgraded to 1.18.6. + patch = "patch" #: Automatically upgrade the cluster to the latest supported patch version when it becomes available while keeping the minor version the same. For example, if a cluster is running version 1.17.7 and versions 1.17.9, 1.18.4, 1.18.6, and 1.19.1 are available, your cluster is upgraded to 1.17.9. + node_image = "node-image" #: Automatically upgrade the node image to the latest version available. Microsoft provides patches and new images for image nodes frequently (usually weekly), but your running nodes won't get the new images unless you do a node image upgrade. Turning on the node-image channel will automatically update your node images whenever a new version is available. + none = "none" #: Disables auto-upgrades and keeps the cluster at its current version of Kubernetes. class Expander(str, Enum): - least_waste = "least-waste" - most_pods = "most-pods" - priority = "priority" - random = "random" + least_waste = "least-waste" #: Selects the node group that will have the least idle CPU (if tied, unused memory) after scale-up. This is useful when you have different classes of nodes, for example, high CPU or high memory nodes, and only want to expand those when there are pending pods that need a lot of those resources. + most_pods = "most-pods" #: Selects the node group that would be able to schedule the most pods when scaling up. This is useful when you are using nodeSelector to make sure certain pods land on certain nodes. Note that this won't cause the autoscaler to select bigger nodes vs. smaller, as it can add multiple smaller nodes at once. + priority = "priority" #: Selects the node group that has the highest priority assigned by the user. It's configuration is described in more details [here](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/expander/priority/readme.md). + random = "random" #: Used when you don't have a particular need for the node groups to scale differently. class ResourceIdentityType(str, Enum): - system_assigned = "SystemAssigned" - user_assigned = "UserAssigned" - none = "None" + system_assigned = "SystemAssigned" #: Use an implicitly created system assigned managed identity to manage cluster resources. Master components in the control plane such as kube-controller-manager will use the system assigned managed identity to manipulate Azure resources. + user_assigned = "UserAssigned" #: Use a user-specified identity to manage cluster resources. Master components in the control plane such as kube-controller-manager will use the specified user assigned managed identity to manipulate Azure resources. + none = "None" #: Do not use a managed identity for the Managed Cluster, service principal will be used instead. class ManagedClusterSKUName(str, Enum): @@ -353,8 +353,8 @@ class ManagedClusterSKUName(str, Enum): class ManagedClusterSKUTier(str, Enum): - paid = "Paid" - free = "Free" + paid = "Paid" #: Guarantees 99.95% availability of the Kubernetes API server endpoint for clusters that use Availability Zones and 99.9% of availability for clusters that don't use Availability Zones. + free = "Free" #: No guaranteed SLA, no additional charges. Free tier clusters have an SLO of 99.5%. class ExtendedLocationTypes(str, Enum): diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/models/_models.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/models/_models.py index fb6135bb98b6..b8b1badd1364 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/models/_models.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/models/_models.py @@ -65,124 +65,140 @@ class AgentPool(SubResource): the range of 1 to 1000 (inclusive) for system pools. The default value is 1. :type count: int - :param vm_size: Size of agent VMs. + :param vm_size: The size of the agent pool VMs. 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 :type vm_size: str - :param os_disk_size_gb: 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. + :param os_disk_size_gb: :type os_disk_size_gb: int - :param os_disk_type: 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. Possible values include: - 'Managed', 'Ephemeral' + :param os_disk_type: Possible values include: 'Managed', 'Ephemeral' :type os_disk_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSDiskType - :param kubelet_disk_type: 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. Possible values include: 'OS', 'Temporary' + :param kubelet_disk_type: Possible values include: 'OS', 'Temporary' :type kubelet_disk_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.KubeletDiskType - :param vnet_subnet_id: VNet SubnetID specifies the VNet's subnet - identifier for nodes and maybe pods + :param vnet_subnet_id: The ID of the subnet which agent pool nodes and + optionally pods will join on startup. 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} :type vnet_subnet_id: str - :param pod_subnet_id: Pod SubnetID specifies the VNet's subnet identifier - for pods. + :param pod_subnet_id: The ID of the subnet which pods will join when + launched. 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} :type pod_subnet_id: str - :param max_pods: Maximum number of pods that can run on a node. + :param max_pods: The maximum number of pods that can run on a node. :type max_pods: int - :param os_type: OsType to be used to specify os type. Choose from Linux - and Windows. Default to Linux. Possible values include: 'Linux', - 'Windows'. Default value: "Linux" . + :param os_type: Possible values include: 'Linux', 'Windows'. Default + value: "Linux" . :type os_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSType - :param os_sku: OsSKU to be used to specify os sku. Choose from - Ubuntu(default) and CBLMariner for Linux OSType. Not applicable to Windows - OSType. Possible values include: 'Ubuntu', 'CBLMariner' + :param os_sku: Possible values include: 'Ubuntu', 'CBLMariner' :type os_sku: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSSKU - :param max_count: Maximum number of nodes for auto-scaling + :param max_count: The maximum number of nodes for auto-scaling :type max_count: int - :param min_count: Minimum number of nodes for auto-scaling + :param min_count: The minimum number of nodes for auto-scaling :type min_count: int :param enable_auto_scaling: Whether to enable auto-scaler :type enable_auto_scaling: bool - :param agent_pool_type: AgentPoolType represents types of an agent pool. - Possible values include: 'VirtualMachineScaleSets', 'AvailabilitySet' + :param agent_pool_type: Possible values include: + 'VirtualMachineScaleSets', 'AvailabilitySet' :type agent_pool_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolType - :param mode: AgentPoolMode represents mode of an agent pool. Possible - values include: 'System', 'User' + :param mode: Possible values include: 'System', 'User' :type mode: str or ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolMode - :param orchestrator_version: Version of orchestrator specified when - creating the managed cluster. + :param orchestrator_version: The version of Kubernetes running on the + Agent Pool. 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). :type orchestrator_version: str - :ivar node_image_version: Version of node image + :ivar node_image_version: The version of node image :vartype node_image_version: str :param upgrade_settings: Settings for upgrading the agentpool :type upgrade_settings: ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolUpgradeSettings - :ivar provisioning_state: The current deployment or provisioning state, - which only appears in the response. + :ivar provisioning_state: The current deployment or provisioning state. :vartype provisioning_state: str :ivar power_state: Describes whether the Agent Pool is Running or Stopped :vartype power_state: ~azure.mgmt.containerservice.v2021_05_01.models.PowerState - :param availability_zones: Availability zones for nodes. Must use - VirtualMachineScaleSets AgentPoolType. + :param availability_zones: The list of Availability zones to use for + nodes. This can only be specified if the AgentPoolType property is + 'VirtualMachineScaleSets'. :type availability_zones: list[str] - :param enable_node_public_ip: Enable public IP for nodes + :param enable_node_public_ip: Whether each node is allocated its own + public IP. 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. :type enable_node_public_ip: bool - :param node_public_ip_prefix_id: Public IP Prefix ID. VM nodes use IPs - assigned from this Public IP Prefix. + :param node_public_ip_prefix_id: The public IP prefix ID which VM nodes + should use IPs from. This is of the form: + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} :type node_public_ip_prefix_id: str - :param scale_set_priority: ScaleSetPriority to be used to specify virtual - machine scale set priority. Default to regular. Possible values include: - 'Spot', 'Regular'. Default value: "Regular" . + :param scale_set_priority: The Virtual Machine Scale Set priority. If not + specified, the default is 'Regular'. Possible values include: 'Spot', + 'Regular'. Default value: "Regular" . :type scale_set_priority: str or ~azure.mgmt.containerservice.v2021_05_01.models.ScaleSetPriority - :param scale_set_eviction_policy: ScaleSetEvictionPolicy to be used to - specify eviction policy for Spot virtual machine scale set. Default to - Delete. Possible values include: 'Delete', 'Deallocate'. Default value: - "Delete" . + :param scale_set_eviction_policy: The Virtual Machine Scale Set eviction + policy to use. This cannot be specified unless the scaleSetPriority is + 'Spot'. If not specified, the default is 'Delete'. Possible values + include: 'Delete', 'Deallocate'. Default value: "Delete" . :type scale_set_eviction_policy: str or ~azure.mgmt.containerservice.v2021_05_01.models.ScaleSetEvictionPolicy - :param spot_max_price: 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. + :param spot_max_price: The max price (in US Dollars) you are willing to + pay for spot instances. Possible values are any decimal value greater than + zero or -1 which indicates default price to be up-to on-demand. 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) :type spot_max_price: float - :param tags: Agent pool tags to be persisted on the agent pool virtual - machine scale set. + :param tags: The tags to be persisted on the agent pool virtual machine + scale set. :type tags: dict[str, str] - :param node_labels: Agent pool node labels to be persisted across all - nodes in agent pool. + :param node_labels: The node labels to be persisted across all nodes in + agent pool. :type node_labels: dict[str, str] - :param node_taints: Taints added to new nodes during node pool create and - scale. For example, key=value:NoSchedule. + :param node_taints: The taints added to new nodes during node pool create + and scale. For example, key=value:NoSchedule. :type node_taints: list[str] :param proximity_placement_group_id: The ID for Proximity Placement Group. :type proximity_placement_group_id: str - :param kubelet_config: KubeletConfig specifies the configuration of - kubelet on agent nodes. + :param kubelet_config: The Kubelet configuration on the agent pool nodes. :type kubelet_config: ~azure.mgmt.containerservice.v2021_05_01.models.KubeletConfig - :param linux_os_config: LinuxOSConfig specifies the OS configuration of - linux agent nodes. + :param linux_os_config: The OS configuration of Linux agent nodes. :type linux_os_config: ~azure.mgmt.containerservice.v2021_05_01.models.LinuxOSConfig - :param enable_encryption_at_host: Whether to enable EncryptionAtHost + :param enable_encryption_at_host: Whether to enable host based OS and data + drive encryption. 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 :type enable_encryption_at_host: bool :param enable_ultra_ssd: Whether to enable UltraSSD :type enable_ultra_ssd: bool - :param enable_fips: Whether to use FIPS enabled OS + :param enable_fips: Whether to use a FIPS-enabled OS. 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. :type enable_fips: bool :param gpu_instance_profile: GPUInstanceProfile to be used to specify GPU - MIG instance profile for supported GPU VM SKU. Supported values are MIG1g, - MIG2g, MIG3g, MIG4g and MIG7g. Possible values include: 'MIG1g', 'MIG2g', - 'MIG3g', 'MIG4g', 'MIG7g' + MIG instance profile for supported GPU VM SKU. Possible values include: + 'MIG1g', 'MIG2g', 'MIG3g', 'MIG4g', 'MIG7g' :type gpu_instance_profile: str or ~azure.mgmt.containerservice.v2021_05_01.models.GPUInstanceProfile """ @@ -284,11 +300,11 @@ class AgentPoolAvailableVersions(Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: Id of the agent pool available versions. + :ivar id: The ID of the agent pool version list. :vartype id: str - :ivar name: Name of the agent pool available versions. + :ivar name: The name of the agent pool version list. :vartype name: str - :ivar type: Type of the agent pool available versions. + :ivar type: Type of the agent pool version list. :vartype type: str :param agent_pool_versions: List of versions available for agent pool. :type agent_pool_versions: @@ -321,7 +337,7 @@ class AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem(Model): :param default: Whether this version is the default agent pool version. :type default: bool - :param kubernetes_version: Kubernetes version (major, minor, patch). + :param kubernetes_version: The Kubernetes version (major.minor.patch). :type kubernetes_version: str :param is_preview: Whether Kubernetes version is currently in preview. :type is_preview: bool @@ -348,26 +364,25 @@ class AgentPoolUpgradeProfile(Model): All required parameters must be populated in order to send to Azure. - :ivar id: Id of the agent pool upgrade profile. + :ivar id: The ID of the agent pool upgrade profile. :vartype id: str - :ivar name: Name of the agent pool upgrade profile. + :ivar name: The name of the agent pool upgrade profile. :vartype name: str - :ivar type: Type of the agent pool upgrade profile. + :ivar type: The type of the agent pool upgrade profile. :vartype type: str - :param kubernetes_version: Required. Kubernetes version (major, minor, - patch). + :param kubernetes_version: Required. The Kubernetes version + (major.minor.patch). :type kubernetes_version: str - :param os_type: Required. OsType to be used to specify os type. Choose - from Linux and Windows. Default to Linux. Possible values include: - 'Linux', 'Windows'. Default value: "Linux" . + :param os_type: Required. Possible values include: 'Linux', 'Windows'. + Default value: "Linux" . :type os_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSType :param upgrades: List of orchestrator types and versions available for upgrade. :type upgrades: list[~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolUpgradeProfilePropertiesUpgradesItem] - :param latest_node_image_version: LatestNodeImageVersion is the latest AKS - supported node image version. + :param latest_node_image_version: The latest AKS supported node image + version. :type latest_node_image_version: str """ @@ -403,9 +418,9 @@ def __init__(self, **kwargs): class AgentPoolUpgradeProfilePropertiesUpgradesItem(Model): """AgentPoolUpgradeProfilePropertiesUpgradesItem. - :param kubernetes_version: Kubernetes version (major, minor, patch). + :param kubernetes_version: The Kubernetes version (major.minor.patch). :type kubernetes_version: str - :param is_preview: Whether Kubernetes version is currently in preview. + :param is_preview: Whether the Kubernetes version is currently in preview. :type is_preview: bool """ @@ -423,8 +438,13 @@ def __init__(self, **kwargs): class AgentPoolUpgradeSettings(Model): """Settings for upgrading an agentpool. - :param max_surge: Count or percentage of additional nodes to be added - during upgrade. If empty uses AKS default + :param max_surge: The maximum number or percentage of nodes that are + surged during upgrade. 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 :type max_surge: str """ @@ -530,7 +550,7 @@ class ContainerServiceLinuxProfile(Model): :param admin_username: Required. The administrator username to use for Linux VMs. :type admin_username: str - :param ssh: Required. SSH configuration for Linux-based VMs running on + :param ssh: Required. The SSH configuration for Linux-based VMs running on Azure. :type ssh: ~azure.mgmt.containerservice.v2021_05_01.models.ContainerServiceSshConfiguration @@ -671,16 +691,17 @@ def __init__(self, **kwargs): class ContainerServiceNetworkProfile(Model): """Profile of network configuration. - :param network_plugin: Network plugin used for building Kubernetes + :param network_plugin: Network plugin used for building the Kubernetes network. Possible values include: 'azure', 'kubenet'. Default value: "kubenet" . :type network_plugin: str or ~azure.mgmt.containerservice.v2021_05_01.models.NetworkPlugin - :param network_policy: Network policy used for building Kubernetes + :param network_policy: Network policy used for building the Kubernetes network. Possible values include: 'calico', 'azure' :type network_policy: str or ~azure.mgmt.containerservice.v2021_05_01.models.NetworkPolicy - :param network_mode: Network mode used for building Kubernetes network. + :param network_mode: The network mode Azure CNI is configured with. This + cannot be specified if networkPlugin is anything other than 'azure'. Possible values include: 'transparent', 'bridge' :type network_mode: str or ~azure.mgmt.containerservice.v2021_05_01.models.NetworkMode @@ -699,13 +720,19 @@ class ContainerServiceNetworkProfile(Model): bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range. Default value: "172.17.0.1/16" . :type docker_bridge_cidr: str - :param outbound_type: The outbound (egress) routing method. Possible + :param outbound_type: The outbound (egress) routing method. 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). Possible values include: 'loadBalancer', 'userDefinedRouting'. Default value: "loadBalancer" . :type outbound_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OutboundType :param load_balancer_sku: The load balancer sku for the managed cluster. - Possible values include: 'standard', 'basic' + 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. Possible + values include: 'standard', 'basic' :type load_balancer_sku: str or ~azure.mgmt.containerservice.v2021_05_01.models.LoadBalancerSku :param load_balancer_profile: Profile of the cluster load balancer. @@ -753,7 +780,7 @@ class ContainerServiceSshConfiguration(Model): All required parameters must be populated in order to send to Azure. :param public_keys: Required. The list of SSH public keys used to - authenticate with Linux-based VMs. Only expect one key specified. + authenticate with Linux-based VMs. A maximum of 1 key may be specified. :type public_keys: list[~azure.mgmt.containerservice.v2021_05_01.models.ContainerServiceSshPublicKey] """ @@ -856,7 +883,7 @@ def __init__(self, **kwargs): class CredentialResults(Model): - """The list of credential result response. + """The list credential result response. Variables are only populated by the server, and will be ignored when sending a request. @@ -954,22 +981,38 @@ def __init__(self, **kwargs): class KubeletConfig(Model): """Kubelet configurations of agent nodes. - :param cpu_manager_policy: CPU Manager policy to use. + See [AKS custom node + configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) + for more details. + + :param cpu_manager_policy: The CPU Manager policy to use. 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'. :type cpu_manager_policy: str - :param cpu_cfs_quota: Enable CPU CFS quota enforcement for containers that - specify CPU limits. + :param cpu_cfs_quota: If CPU CFS quota enforcement is enabled for + containers that specify CPU limits. The default is true. :type cpu_cfs_quota: bool - :param cpu_cfs_quota_period: Sets CPU CFS quota period value. + :param cpu_cfs_quota_period: The CPU CFS quota period value. 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'. :type cpu_cfs_quota_period: str :param image_gc_high_threshold: The percent of disk usage after which - image garbage collection is always run. + image garbage collection is always run. To disable image garbage + collection, set to 100. The default is 85% :type image_gc_high_threshold: int :param image_gc_low_threshold: The percent of disk usage before which - image garbage collection is never run. + image garbage collection is never run. This cannot be set higher than + imageGcHighThreshold. The default is 80% :type image_gc_low_threshold: int - :param topology_manager_policy: Topology Manager policy to use. + :param topology_manager_policy: The Topology Manager policy to use. 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'. :type topology_manager_policy: str - :param allowed_unsafe_sysctls: Allowlist of unsafe sysctls or unsafe + :param allowed_unsafe_sysctls: Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). :type allowed_unsafe_sysctls: list[str] :param fail_swap_on: If set to true it will make the Kubelet fail to start @@ -1021,17 +1064,26 @@ def __init__(self, **kwargs): class LinuxOSConfig(Model): """OS configurations of Linux agent nodes. + See [AKS custom node + configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) + for more details. + :param sysctls: Sysctl settings for Linux agent nodes. :type sysctls: ~azure.mgmt.containerservice.v2021_05_01.models.SysctlConfig - :param transparent_huge_page_enabled: Transparent Huge Page enabled - configuration. + :param transparent_huge_page_enabled: Whether transparent hugepages are + enabled. 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). :type transparent_huge_page_enabled: str - :param transparent_huge_page_defrag: Transparent Huge Page defrag - configuration. + :param transparent_huge_page_defrag: Whether the kernel should make + aggressive use of memory compaction to make more hugepages available. + 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). :type transparent_huge_page_defrag: str - :param swap_file_size_mb: SwapFileSizeMB specifies size in MB of a swap - file will be created on each node. + :param swap_file_size_mb: The size in MB of a swap file that will be + created on each node. :type swap_file_size_mb: int """ @@ -1051,7 +1103,12 @@ def __init__(self, **kwargs): class MaintenanceConfiguration(SubResource): - """maintenance configuration. + """Planned maintenance configuration, used to configure when updates can be + deployed to a Managed Cluster. + + See [planned + maintenance](https://docs.microsoft.com/azure/aks/planned-maintenance) for + more information about planned maintenance. Variables are only populated by the server, and will be ignored when sending a request. @@ -1063,10 +1120,12 @@ class MaintenanceConfiguration(SubResource): :vartype name: str :ivar type: Resource type :vartype type: str - :ivar system_data: The system meta data relating to this resource. + :ivar system_data: The system metadata relating to this resource. :vartype system_data: ~azure.mgmt.containerservice.v2021_05_01.models.SystemData - :param time_in_week: Weekday time slots allowed to upgrade. + :param time_in_week: Time slots during the week when planned maintenance + is allowed to proceed. If two array entries specify the same day of the + week, the applied configuration is the union of times in both entries. :type time_in_week: list[~azure.mgmt.containerservice.v2021_05_01.models.TimeInWeek] :param not_allowed_time: Time slots on which upgrade is not allowed. @@ -1159,53 +1218,66 @@ class ManagedCluster(Resource): :type location: str :param tags: Resource tags :type tags: dict[str, str] - :ivar provisioning_state: The current deployment or provisioning state, - which only appears in the response. + :ivar provisioning_state: The current provisioning state. :vartype provisioning_state: str - :ivar power_state: Represents the Power State of the cluster + :ivar power_state: The Power State of the cluster. :vartype power_state: ~azure.mgmt.containerservice.v2021_05_01.models.PowerState :ivar max_agent_pools: The max number of agent pools for the managed cluster. :vartype max_agent_pools: int - :param kubernetes_version: Version of Kubernetes specified when creating - the managed cluster. + :param kubernetes_version: The version of Kubernetes the Managed Cluster + is running. 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. :type kubernetes_version: str - :param dns_prefix: DNS prefix specified when creating the managed cluster. + :param dns_prefix: The DNS prefix of the Managed Cluster. This cannot be + updated once the Managed Cluster has been created. :type dns_prefix: str - :param fqdn_subdomain: FQDN subdomain specified when creating private - cluster with custom private dns zone. + :param fqdn_subdomain: The FQDN subdomain of the private cluster with + custom private dns zone. This cannot be updated once the Managed Cluster + has been created. :type fqdn_subdomain: str - :ivar fqdn: FQDN for the master pool. + :ivar fqdn: The FQDN of the master pool. :vartype fqdn: str - :ivar private_fqdn: FQDN of private cluster. + :ivar private_fqdn: The FQDN of private cluster. :vartype private_fqdn: str - :ivar azure_portal_fqdn: FQDN for the master pool which used by proxy - config. + :ivar azure_portal_fqdn: The special FQDN used by the Azure Portal to + access the Managed Cluster. This FQDN is for use only by the Azure Portal + and should not be used by other clients. The Azure Portal requires certain + Cross-Origin Resource Sharing (CORS) headers to be sent in some responses, + which Kubernetes APIServer doesn't handle by default. This special FQDN + supports CORS, allowing the Azure Portal to function properly. :vartype azure_portal_fqdn: str - :param agent_pool_profiles: Properties of the agent pool. + :param agent_pool_profiles: The agent pool properties. :type agent_pool_profiles: list[~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterAgentPoolProfile] - :param linux_profile: Profile for Linux VMs in the container service - cluster. + :param linux_profile: The profile for Linux VMs in the Managed Cluster. :type linux_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ContainerServiceLinuxProfile - :param windows_profile: Profile for Windows VMs in the container service - cluster. + :param windows_profile: The profile for Windows VMs in the Managed + Cluster. :type windows_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterWindowsProfile :param service_principal_profile: Information about a service principal identity for the cluster to use for manipulating Azure APIs. :type service_principal_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterServicePrincipalProfile - :param addon_profiles: Profile of managed cluster add-on. + :param addon_profiles: The profile of managed cluster add-on. :type addon_profiles: dict[str, ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterAddonProfile] - :param pod_identity_profile: Profile of managed cluster pod identity. + :param pod_identity_profile: The pod identity profile of the Managed + Cluster. See [use AAD pod + identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) + for more details on AAD pod identity integration. :type pod_identity_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterPodIdentityProfile - :param node_resource_group: Name of the resource group containing agent - pool nodes. + :param node_resource_group: The name of the resource group containing + agent pool nodes. :type node_resource_group: str :param enable_rbac: Whether to enable Kubernetes Role-Based Access Control. @@ -1214,25 +1286,26 @@ class ManagedCluster(Resource): Kubernetes pod security policy (preview). This feature is set for removal on October 15th, 2020. Learn more at aka.ms/aks/azpodpolicy. :type enable_pod_security_policy: bool - :param network_profile: Profile of network configuration. + :param network_profile: The network configuration profile. :type network_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ContainerServiceNetworkProfile - :param aad_profile: Profile of Azure Active Directory configuration. + :param aad_profile: The Azure Active Directory configuration. :type aad_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterAADProfile - :param auto_upgrade_profile: Profile of auto upgrade configuration. + :param auto_upgrade_profile: The auto upgrade configuration. :type auto_upgrade_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterAutoUpgradeProfile :param auto_scaler_profile: Parameters to be applied to the cluster-autoscaler when enabled :type auto_scaler_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterPropertiesAutoScalerProfile - :param api_server_access_profile: Access profile for managed cluster API - server. + :param api_server_access_profile: The access profile for managed cluster + API server. :type api_server_access_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterAPIServerAccessProfile - :param disk_encryption_set_id: ResourceId of the disk encryption set to - use for enabling encryption at rest. + :param disk_encryption_set_id: The Resource ID of the disk encryption set + to use for enabling encryption at rest. This is of the form: + '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}' :type disk_encryption_set_id: str :param identity_profile: Identities associated with the cluster. :type identity_profile: dict[str, @@ -1241,9 +1314,11 @@ class ManagedCluster(Resource): cluster. :type private_link_resources: list[~azure.mgmt.containerservice.v2021_05_01.models.PrivateLinkResource] - :param disable_local_accounts: If set to true, getting static credential - will be disabled for this cluster. Expected to only be used for AAD - clusters. + :param disable_local_accounts: If local accounts should be disabled on the + Managed Cluster. 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). :type disable_local_accounts: bool :param http_proxy_config: Configurations for provisioning the cluster with HTTP proxy servers. @@ -1350,13 +1425,16 @@ def __init__(self, **kwargs): class ManagedClusterAADProfile(Model): """AADProfile specifies attributes for Azure Active Directory integration. + For more details see [managed AAD on + AKS](https://docs.microsoft.com/azure/aks/managed-aad). + :param managed: Whether to enable managed AAD. :type managed: bool :param enable_azure_rbac: Whether to enable Azure RBAC for Kubernetes authorization. :type enable_azure_rbac: bool - :param admin_group_object_ids: AAD group object IDs that will have admin - role of the cluster. + :param admin_group_object_ids: The list of AAD group object IDs that will + have admin role of the cluster. :type admin_group_object_ids: list[str] :param client_app_id: The client AAD application ID. :type client_app_id: str @@ -1469,13 +1547,13 @@ def __init__(self, **kwargs): class UserAssignedIdentity(Model): - """UserAssignedIdentity. + """Details about a user assigned identity. - :param resource_id: The resource id of the user assigned identity. + :param resource_id: The resource ID of the user assigned identity. :type resource_id: str - :param client_id: The client id of the user assigned identity. + :param client_id: The client ID of the user assigned identity. :type client_id: str - :param object_id: The object id of the user assigned identity. + :param object_id: The object ID of the user assigned identity. :type object_id: str """ @@ -1495,11 +1573,11 @@ def __init__(self, **kwargs): class ManagedClusterAddonProfileIdentity(UserAssignedIdentity): """Information of user assigned identity used by this add-on. - :param resource_id: The resource id of the user assigned identity. + :param resource_id: The resource ID of the user assigned identity. :type resource_id: str - :param client_id: The client id of the user assigned identity. + :param client_id: The client ID of the user assigned identity. :type client_id: str - :param object_id: The object id of the user assigned identity. + :param object_id: The object ID of the user assigned identity. :type object_id: str """ @@ -1524,124 +1602,140 @@ class ManagedClusterAgentPoolProfileProperties(Model): the range of 1 to 1000 (inclusive) for system pools. The default value is 1. :type count: int - :param vm_size: Size of agent VMs. + :param vm_size: The size of the agent pool VMs. 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 :type vm_size: str - :param os_disk_size_gb: 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. + :param os_disk_size_gb: :type os_disk_size_gb: int - :param os_disk_type: 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. Possible values include: - 'Managed', 'Ephemeral' + :param os_disk_type: Possible values include: 'Managed', 'Ephemeral' :type os_disk_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSDiskType - :param kubelet_disk_type: 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. Possible values include: 'OS', 'Temporary' + :param kubelet_disk_type: Possible values include: 'OS', 'Temporary' :type kubelet_disk_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.KubeletDiskType - :param vnet_subnet_id: VNet SubnetID specifies the VNet's subnet - identifier for nodes and maybe pods + :param vnet_subnet_id: The ID of the subnet which agent pool nodes and + optionally pods will join on startup. 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} :type vnet_subnet_id: str - :param pod_subnet_id: Pod SubnetID specifies the VNet's subnet identifier - for pods. + :param pod_subnet_id: The ID of the subnet which pods will join when + launched. 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} :type pod_subnet_id: str - :param max_pods: Maximum number of pods that can run on a node. + :param max_pods: The maximum number of pods that can run on a node. :type max_pods: int - :param os_type: OsType to be used to specify os type. Choose from Linux - and Windows. Default to Linux. Possible values include: 'Linux', - 'Windows'. Default value: "Linux" . + :param os_type: Possible values include: 'Linux', 'Windows'. Default + value: "Linux" . :type os_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSType - :param os_sku: OsSKU to be used to specify os sku. Choose from - Ubuntu(default) and CBLMariner for Linux OSType. Not applicable to Windows - OSType. Possible values include: 'Ubuntu', 'CBLMariner' + :param os_sku: Possible values include: 'Ubuntu', 'CBLMariner' :type os_sku: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSSKU - :param max_count: Maximum number of nodes for auto-scaling + :param max_count: The maximum number of nodes for auto-scaling :type max_count: int - :param min_count: Minimum number of nodes for auto-scaling + :param min_count: The minimum number of nodes for auto-scaling :type min_count: int :param enable_auto_scaling: Whether to enable auto-scaler :type enable_auto_scaling: bool - :param type: AgentPoolType represents types of an agent pool. Possible - values include: 'VirtualMachineScaleSets', 'AvailabilitySet' + :param type: Possible values include: 'VirtualMachineScaleSets', + 'AvailabilitySet' :type type: str or ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolType - :param mode: AgentPoolMode represents mode of an agent pool. Possible - values include: 'System', 'User' + :param mode: Possible values include: 'System', 'User' :type mode: str or ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolMode - :param orchestrator_version: Version of orchestrator specified when - creating the managed cluster. + :param orchestrator_version: The version of Kubernetes running on the + Agent Pool. 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). :type orchestrator_version: str - :ivar node_image_version: Version of node image + :ivar node_image_version: The version of node image :vartype node_image_version: str :param upgrade_settings: Settings for upgrading the agentpool :type upgrade_settings: ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolUpgradeSettings - :ivar provisioning_state: The current deployment or provisioning state, - which only appears in the response. + :ivar provisioning_state: The current deployment or provisioning state. :vartype provisioning_state: str :ivar power_state: Describes whether the Agent Pool is Running or Stopped :vartype power_state: ~azure.mgmt.containerservice.v2021_05_01.models.PowerState - :param availability_zones: Availability zones for nodes. Must use - VirtualMachineScaleSets AgentPoolType. + :param availability_zones: The list of Availability zones to use for + nodes. This can only be specified if the AgentPoolType property is + 'VirtualMachineScaleSets'. :type availability_zones: list[str] - :param enable_node_public_ip: Enable public IP for nodes + :param enable_node_public_ip: Whether each node is allocated its own + public IP. 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. :type enable_node_public_ip: bool - :param node_public_ip_prefix_id: Public IP Prefix ID. VM nodes use IPs - assigned from this Public IP Prefix. + :param node_public_ip_prefix_id: The public IP prefix ID which VM nodes + should use IPs from. This is of the form: + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} :type node_public_ip_prefix_id: str - :param scale_set_priority: ScaleSetPriority to be used to specify virtual - machine scale set priority. Default to regular. Possible values include: - 'Spot', 'Regular'. Default value: "Regular" . + :param scale_set_priority: The Virtual Machine Scale Set priority. If not + specified, the default is 'Regular'. Possible values include: 'Spot', + 'Regular'. Default value: "Regular" . :type scale_set_priority: str or ~azure.mgmt.containerservice.v2021_05_01.models.ScaleSetPriority - :param scale_set_eviction_policy: ScaleSetEvictionPolicy to be used to - specify eviction policy for Spot virtual machine scale set. Default to - Delete. Possible values include: 'Delete', 'Deallocate'. Default value: - "Delete" . + :param scale_set_eviction_policy: The Virtual Machine Scale Set eviction + policy to use. This cannot be specified unless the scaleSetPriority is + 'Spot'. If not specified, the default is 'Delete'. Possible values + include: 'Delete', 'Deallocate'. Default value: "Delete" . :type scale_set_eviction_policy: str or ~azure.mgmt.containerservice.v2021_05_01.models.ScaleSetEvictionPolicy - :param spot_max_price: 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. + :param spot_max_price: The max price (in US Dollars) you are willing to + pay for spot instances. Possible values are any decimal value greater than + zero or -1 which indicates default price to be up-to on-demand. 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) :type spot_max_price: float - :param tags: Agent pool tags to be persisted on the agent pool virtual - machine scale set. + :param tags: The tags to be persisted on the agent pool virtual machine + scale set. :type tags: dict[str, str] - :param node_labels: Agent pool node labels to be persisted across all - nodes in agent pool. + :param node_labels: The node labels to be persisted across all nodes in + agent pool. :type node_labels: dict[str, str] - :param node_taints: Taints added to new nodes during node pool create and - scale. For example, key=value:NoSchedule. + :param node_taints: The taints added to new nodes during node pool create + and scale. For example, key=value:NoSchedule. :type node_taints: list[str] :param proximity_placement_group_id: The ID for Proximity Placement Group. :type proximity_placement_group_id: str - :param kubelet_config: KubeletConfig specifies the configuration of - kubelet on agent nodes. + :param kubelet_config: The Kubelet configuration on the agent pool nodes. :type kubelet_config: ~azure.mgmt.containerservice.v2021_05_01.models.KubeletConfig - :param linux_os_config: LinuxOSConfig specifies the OS configuration of - linux agent nodes. + :param linux_os_config: The OS configuration of Linux agent nodes. :type linux_os_config: ~azure.mgmt.containerservice.v2021_05_01.models.LinuxOSConfig - :param enable_encryption_at_host: Whether to enable EncryptionAtHost + :param enable_encryption_at_host: Whether to enable host based OS and data + drive encryption. 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 :type enable_encryption_at_host: bool :param enable_ultra_ssd: Whether to enable UltraSSD :type enable_ultra_ssd: bool - :param enable_fips: Whether to use FIPS enabled OS + :param enable_fips: Whether to use a FIPS-enabled OS. 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. :type enable_fips: bool :param gpu_instance_profile: GPUInstanceProfile to be used to specify GPU - MIG instance profile for supported GPU VM SKU. Supported values are MIG1g, - MIG2g, MIG3g, MIG4g and MIG7g. Possible values include: 'MIG1g', 'MIG2g', - 'MIG3g', 'MIG4g', 'MIG7g' + MIG instance profile for supported GPU VM SKU. Possible values include: + 'MIG1g', 'MIG2g', 'MIG3g', 'MIG4g', 'MIG7g' :type gpu_instance_profile: str or ~azure.mgmt.containerservice.v2021_05_01.models.GPUInstanceProfile """ @@ -1744,128 +1838,145 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): the range of 1 to 1000 (inclusive) for system pools. The default value is 1. :type count: int - :param vm_size: Size of agent VMs. + :param vm_size: The size of the agent pool VMs. 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 :type vm_size: str - :param os_disk_size_gb: 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. + :param os_disk_size_gb: :type os_disk_size_gb: int - :param os_disk_type: 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. Possible values include: - 'Managed', 'Ephemeral' + :param os_disk_type: Possible values include: 'Managed', 'Ephemeral' :type os_disk_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSDiskType - :param kubelet_disk_type: 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. Possible values include: 'OS', 'Temporary' + :param kubelet_disk_type: Possible values include: 'OS', 'Temporary' :type kubelet_disk_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.KubeletDiskType - :param vnet_subnet_id: VNet SubnetID specifies the VNet's subnet - identifier for nodes and maybe pods + :param vnet_subnet_id: The ID of the subnet which agent pool nodes and + optionally pods will join on startup. 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} :type vnet_subnet_id: str - :param pod_subnet_id: Pod SubnetID specifies the VNet's subnet identifier - for pods. + :param pod_subnet_id: The ID of the subnet which pods will join when + launched. 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} :type pod_subnet_id: str - :param max_pods: Maximum number of pods that can run on a node. + :param max_pods: The maximum number of pods that can run on a node. :type max_pods: int - :param os_type: OsType to be used to specify os type. Choose from Linux - and Windows. Default to Linux. Possible values include: 'Linux', - 'Windows'. Default value: "Linux" . + :param os_type: Possible values include: 'Linux', 'Windows'. Default + value: "Linux" . :type os_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSType - :param os_sku: OsSKU to be used to specify os sku. Choose from - Ubuntu(default) and CBLMariner for Linux OSType. Not applicable to Windows - OSType. Possible values include: 'Ubuntu', 'CBLMariner' + :param os_sku: Possible values include: 'Ubuntu', 'CBLMariner' :type os_sku: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSSKU - :param max_count: Maximum number of nodes for auto-scaling + :param max_count: The maximum number of nodes for auto-scaling :type max_count: int - :param min_count: Minimum number of nodes for auto-scaling + :param min_count: The minimum number of nodes for auto-scaling :type min_count: int :param enable_auto_scaling: Whether to enable auto-scaler :type enable_auto_scaling: bool - :param type: AgentPoolType represents types of an agent pool. Possible - values include: 'VirtualMachineScaleSets', 'AvailabilitySet' + :param type: Possible values include: 'VirtualMachineScaleSets', + 'AvailabilitySet' :type type: str or ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolType - :param mode: AgentPoolMode represents mode of an agent pool. Possible - values include: 'System', 'User' + :param mode: Possible values include: 'System', 'User' :type mode: str or ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolMode - :param orchestrator_version: Version of orchestrator specified when - creating the managed cluster. + :param orchestrator_version: The version of Kubernetes running on the + Agent Pool. 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). :type orchestrator_version: str - :ivar node_image_version: Version of node image + :ivar node_image_version: The version of node image :vartype node_image_version: str :param upgrade_settings: Settings for upgrading the agentpool :type upgrade_settings: ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolUpgradeSettings - :ivar provisioning_state: The current deployment or provisioning state, - which only appears in the response. + :ivar provisioning_state: The current deployment or provisioning state. :vartype provisioning_state: str :ivar power_state: Describes whether the Agent Pool is Running or Stopped :vartype power_state: ~azure.mgmt.containerservice.v2021_05_01.models.PowerState - :param availability_zones: Availability zones for nodes. Must use - VirtualMachineScaleSets AgentPoolType. + :param availability_zones: The list of Availability zones to use for + nodes. This can only be specified if the AgentPoolType property is + 'VirtualMachineScaleSets'. :type availability_zones: list[str] - :param enable_node_public_ip: Enable public IP for nodes + :param enable_node_public_ip: Whether each node is allocated its own + public IP. 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. :type enable_node_public_ip: bool - :param node_public_ip_prefix_id: Public IP Prefix ID. VM nodes use IPs - assigned from this Public IP Prefix. + :param node_public_ip_prefix_id: The public IP prefix ID which VM nodes + should use IPs from. This is of the form: + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} :type node_public_ip_prefix_id: str - :param scale_set_priority: ScaleSetPriority to be used to specify virtual - machine scale set priority. Default to regular. Possible values include: - 'Spot', 'Regular'. Default value: "Regular" . + :param scale_set_priority: The Virtual Machine Scale Set priority. If not + specified, the default is 'Regular'. Possible values include: 'Spot', + 'Regular'. Default value: "Regular" . :type scale_set_priority: str or ~azure.mgmt.containerservice.v2021_05_01.models.ScaleSetPriority - :param scale_set_eviction_policy: ScaleSetEvictionPolicy to be used to - specify eviction policy for Spot virtual machine scale set. Default to - Delete. Possible values include: 'Delete', 'Deallocate'. Default value: - "Delete" . + :param scale_set_eviction_policy: The Virtual Machine Scale Set eviction + policy to use. This cannot be specified unless the scaleSetPriority is + 'Spot'. If not specified, the default is 'Delete'. Possible values + include: 'Delete', 'Deallocate'. Default value: "Delete" . :type scale_set_eviction_policy: str or ~azure.mgmt.containerservice.v2021_05_01.models.ScaleSetEvictionPolicy - :param spot_max_price: 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. + :param spot_max_price: The max price (in US Dollars) you are willing to + pay for spot instances. Possible values are any decimal value greater than + zero or -1 which indicates default price to be up-to on-demand. 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) :type spot_max_price: float - :param tags: Agent pool tags to be persisted on the agent pool virtual - machine scale set. + :param tags: The tags to be persisted on the agent pool virtual machine + scale set. :type tags: dict[str, str] - :param node_labels: Agent pool node labels to be persisted across all - nodes in agent pool. + :param node_labels: The node labels to be persisted across all nodes in + agent pool. :type node_labels: dict[str, str] - :param node_taints: Taints added to new nodes during node pool create and - scale. For example, key=value:NoSchedule. + :param node_taints: The taints added to new nodes during node pool create + and scale. For example, key=value:NoSchedule. :type node_taints: list[str] :param proximity_placement_group_id: The ID for Proximity Placement Group. :type proximity_placement_group_id: str - :param kubelet_config: KubeletConfig specifies the configuration of - kubelet on agent nodes. + :param kubelet_config: The Kubelet configuration on the agent pool nodes. :type kubelet_config: ~azure.mgmt.containerservice.v2021_05_01.models.KubeletConfig - :param linux_os_config: LinuxOSConfig specifies the OS configuration of - linux agent nodes. + :param linux_os_config: The OS configuration of Linux agent nodes. :type linux_os_config: ~azure.mgmt.containerservice.v2021_05_01.models.LinuxOSConfig - :param enable_encryption_at_host: Whether to enable EncryptionAtHost + :param enable_encryption_at_host: Whether to enable host based OS and data + drive encryption. 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 :type enable_encryption_at_host: bool :param enable_ultra_ssd: Whether to enable UltraSSD :type enable_ultra_ssd: bool - :param enable_fips: Whether to use FIPS enabled OS + :param enable_fips: Whether to use a FIPS-enabled OS. 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. :type enable_fips: bool :param gpu_instance_profile: GPUInstanceProfile to be used to specify GPU - MIG instance profile for supported GPU VM SKU. Supported values are MIG1g, - MIG2g, MIG3g, MIG4g and MIG7g. Possible values include: 'MIG1g', 'MIG2g', - 'MIG3g', 'MIG4g', 'MIG7g' + MIG instance profile for supported GPU VM SKU. Possible values include: + 'MIG1g', 'MIG2g', 'MIG3g', 'MIG4g', 'MIG7g' :type gpu_instance_profile: str or ~azure.mgmt.containerservice.v2021_05_01.models.GPUInstanceProfile :param name: Required. Unique name of the agent pool profile in the - context of the subscription and resource group. + context of the subscription and resource group. Windows agent pool names + must be 6 characters or less. :type name: str """ @@ -1924,13 +2035,21 @@ def __init__(self, **kwargs): class ManagedClusterAPIServerAccessProfile(Model): """Access profile for managed cluster API server. - :param authorized_ip_ranges: Authorized IP Ranges to kubernetes API - server. + :param authorized_ip_ranges: The IP ranges authorized to access the + Kubernetes API server. 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). :type authorized_ip_ranges: list[str] :param enable_private_cluster: Whether to create the cluster as a private - cluster or not. + cluster or not. For more details, see [Creating a private AKS + cluster](https://docs.microsoft.com/azure/aks/private-clusters). :type enable_private_cluster: bool - :param private_dns_zone: Private dns zone mode for private cluster. + :param private_dns_zone: The private DNS zone mode for the cluster. 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'. :type private_dns_zone: str :param enable_private_cluster_public_fqdn: Whether to create additional public FQDN for private cluster or not. @@ -1955,8 +2074,10 @@ def __init__(self, **kwargs): class ManagedClusterAutoUpgradeProfile(Model): """Auto upgrade profile for a managed cluster. - :param upgrade_channel: upgrade channel for auto upgrade. Possible values - include: 'rapid', 'stable', 'patch', 'node-image', 'none' + :param upgrade_channel: The upgrade channel for auto upgrade. The default + is 'none'. For more information see [setting the AKS cluster auto-upgrade + channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). + Possible values include: 'rapid', 'stable', 'patch', 'node-image', 'none' :type upgrade_channel: str or ~azure.mgmt.containerservice.v2021_05_01.models.UpgradeChannel """ @@ -1971,13 +2092,13 @@ def __init__(self, **kwargs): class ManagedClusterHTTPProxyConfig(Model): - """Configurations for provisioning the cluster with HTTP proxy servers. + """Cluster HTTP proxy configuration. - :param http_proxy: HTTP proxy server endpoint to use. + :param http_proxy: The HTTP proxy server endpoint to use. :type http_proxy: str - :param https_proxy: HTTPS proxy server endpoint to use. + :param https_proxy: The HTTPS proxy server endpoint to use. :type https_proxy: str - :param no_proxy: Endpoints that should not go through proxy. + :param no_proxy: The endpoints that should not go through proxy. :type no_proxy: list[str] :param trusted_ca: Alternative CA cert to use for connecting to proxy servers. @@ -2011,18 +2132,16 @@ class ManagedClusterIdentity(Model): :ivar tenant_id: The tenant id of the system assigned identity which is used by master components. :vartype tenant_id: str - :param type: 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. Possible values include: - 'SystemAssigned', 'UserAssigned', 'None' + :param type: The type of identity used for the managed cluster. For more + information see [use managed identities in + AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). Possible + values include: 'SystemAssigned', 'UserAssigned', 'None' :type type: str or ~azure.mgmt.containerservice.v2021_05_01.models.ResourceIdentityType :param user_assigned_identities: 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: + managed cluster. This identity will be used in control plane. Only one + user assigned identity is allowed. The keys must be ARM resource IDs in + the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. :type user_assigned_identities: dict[str, ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterIdentityUserAssignedIdentitiesValue] @@ -2095,13 +2214,13 @@ class ManagedClusterLoadBalancerProfile(Model): cluster load balancer. :type effective_outbound_ips: list[~azure.mgmt.containerservice.v2021_05_01.models.ResourceReference] - :param allocated_outbound_ports: 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. - Default value: 0 . + :param allocated_outbound_ports: 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. Default value: 0 . :type allocated_outbound_ports: int :param idle_timeout_in_minutes: Desired outbound flow idle timeout in - minutes. Allowed values must be in the range of 4 to 120 (inclusive). The + minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. Default value: 30 . :type idle_timeout_in_minutes: int """ @@ -2133,9 +2252,9 @@ def __init__(self, **kwargs): class ManagedClusterLoadBalancerProfileManagedOutboundIPs(Model): """Desired managed outbound IPs for the cluster load balancer. - :param count: 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. . Default value: 1 . + :param count: 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. . Default value: 1 . :type count: int """ @@ -2187,21 +2306,21 @@ def __init__(self, **kwargs): class ManagedClusterPodIdentity(Model): - """ManagedClusterPodIdentity. + """Details about the pod identity assigned to the Managed Cluster. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. - :param name: Required. Name of the pod identity. + :param name: Required. The name of the pod identity. :type name: str - :param namespace: Required. Namespace of the pod identity. + :param namespace: Required. The namespace of the pod identity. :type namespace: str - :param binding_selector: Binding selector to use for the + :param binding_selector: The binding selector to use for the AzureIdentityBinding resource. :type binding_selector: str - :param identity: Required. Information of the user assigned identity. + :param identity: Required. The user assigned identity details. :type identity: ~azure.mgmt.containerservice.v2021_05_01.models.UserAssignedIdentity :ivar provisioning_state: The current provisioning state of the pod @@ -2242,15 +2361,21 @@ def __init__(self, **kwargs): class ManagedClusterPodIdentityException(Model): - """ManagedClusterPodIdentityException. + """A pod identity exception, which allows pods with certain labels to access + the Azure Instance Metadata Service (IMDS) endpoint without being + intercepted by the node-managed identity (NMI) server. + + See [disable AAD Pod Identity for a specific + Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) + for more details. All required parameters must be populated in order to send to Azure. - :param name: Required. Name of the pod identity exception. + :param name: Required. The name of the pod identity exception. :type name: str - :param namespace: Required. Namespace of the pod identity exception. + :param namespace: Required. The namespace of the pod identity exception. :type namespace: str - :param pod_labels: Required. Pod labels to match. + :param pod_labels: Required. The pod labels to match. :type pod_labels: dict[str, str] """ @@ -2274,18 +2399,26 @@ def __init__(self, **kwargs): class ManagedClusterPodIdentityProfile(Model): - """ManagedClusterPodIdentityProfile. + """The pod identity profile of the Managed Cluster. + + See [use AAD pod + identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) + for more details on pod identity integration. :param enabled: Whether the pod identity addon is enabled. :type enabled: bool - :param allow_network_plugin_kubenet: Customer consent for enabling AAD pod - identity addon in cluster using Kubenet network plugin. + :param allow_network_plugin_kubenet: Whether pod identity is allowed to + run on clusters with Kubenet networking. 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. :type allow_network_plugin_kubenet: bool - :param user_assigned_identities: User assigned pod identity settings. + :param user_assigned_identities: The pod identities to use in the cluster. :type user_assigned_identities: list[~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterPodIdentity] - :param user_assigned_identity_exceptions: User assigned pod identity - exception settings. + :param user_assigned_identity_exceptions: The pod identity exceptions to + allow. :type user_assigned_identity_exceptions: list[~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterPodIdentityException] """ @@ -2326,14 +2459,13 @@ class ManagedClusterPoolUpgradeProfile(Model): All required parameters must be populated in order to send to Azure. - :param kubernetes_version: Required. Kubernetes version (major, minor, - patch). + :param kubernetes_version: Required. The Kubernetes version + (major.minor.patch). :type kubernetes_version: str - :param name: Pool name. + :param name: The Agent Pool name. :type name: str - :param os_type: Required. OsType to be used to specify os type. Choose - from Linux and Windows. Default to Linux. Possible values include: - 'Linux', 'Windows'. Default value: "Linux" . + :param os_type: Required. Possible values include: 'Linux', 'Windows'. + Default value: "Linux" . :type os_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSType :param upgrades: List of orchestrator types and versions available for @@ -2365,9 +2497,9 @@ def __init__(self, **kwargs): class ManagedClusterPoolUpgradeProfileUpgradesItem(Model): """ManagedClusterPoolUpgradeProfileUpgradesItem. - :param kubernetes_version: Kubernetes version (major, minor, patch). + :param kubernetes_version: The Kubernetes version (major.minor.patch). :type kubernetes_version: str - :param is_preview: Whether Kubernetes version is currently in preview. + :param is_preview: Whether the Kubernetes version is currently in preview. :type is_preview: bool """ @@ -2385,41 +2517,83 @@ def __init__(self, **kwargs): class ManagedClusterPropertiesAutoScalerProfile(Model): """Parameters to be applied to the cluster-autoscaler when enabled. - :param balance_similar_node_groups: + :param balance_similar_node_groups: Detects similar node pools and + balances the number of nodes between them. Valid values are 'true' and + 'false' :type balance_similar_node_groups: str - :param expander: Possible values include: 'least-waste', 'most-pods', + :param expander: The expander to use when scaling up. 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. Possible values include: 'least-waste', 'most-pods', 'priority', 'random' :type expander: str or ~azure.mgmt.containerservice.v2021_05_01.models.Expander - :param max_empty_bulk_delete: + :param max_empty_bulk_delete: The maximum number of empty nodes that can + be deleted at the same time. This must be a positive integer. The default + is 10. :type max_empty_bulk_delete: str - :param max_graceful_termination_sec: + :param max_graceful_termination_sec: The maximum number of seconds the + cluster autoscaler waits for pod termination when trying to scale down a + node. The default is 600. :type max_graceful_termination_sec: str - :param max_node_provision_time: + :param max_node_provision_time: The maximum time the autoscaler waits for + a node to be provisioned. The default is '15m'. Values must be an integer + followed by an 'm'. No unit of time other than minutes (m) is supported. :type max_node_provision_time: str - :param max_total_unready_percentage: + :param max_total_unready_percentage: The maximum percentage of unready + nodes in the cluster. After this percentage is exceeded, cluster + autoscaler halts operations. The default is 45. The maximum is 100 and the + minimum is 0. :type max_total_unready_percentage: str - :param new_pod_scale_up_delay: + :param new_pod_scale_up_delay: Ignore unscheduled pods before they're a + certain age. 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 new_pod_scale_up_delay: str - :param ok_total_unready_count: + :param ok_total_unready_count: The number of allowed unready nodes, + irrespective of max-total-unready-percentage. This must be an integer. The + default is 3. :type ok_total_unready_count: str - :param scan_interval: + :param scan_interval: How often cluster is reevaluated for scale up or + down. The default is '10'. Values must be an integer number of seconds. :type scan_interval: str - :param scale_down_delay_after_add: + :param scale_down_delay_after_add: How long after scale up that scale down + evaluation resumes. The default is '10m'. Values must be an integer + followed by an 'm'. No unit of time other than minutes (m) is supported. :type scale_down_delay_after_add: str - :param scale_down_delay_after_delete: + :param scale_down_delay_after_delete: How long after node deletion that + scale down evaluation resumes. 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 scale_down_delay_after_delete: str - :param scale_down_delay_after_failure: + :param scale_down_delay_after_failure: How long after scale down failure + that scale down evaluation resumes. The default is '3m'. Values must be an + integer followed by an 'm'. No unit of time other than minutes (m) is + supported. :type scale_down_delay_after_failure: str - :param scale_down_unneeded_time: + :param scale_down_unneeded_time: How long a node should be unneeded before + it is eligible for scale down. The default is '10m'. Values must be an + integer followed by an 'm'. No unit of time other than minutes (m) is + supported. :type scale_down_unneeded_time: str - :param scale_down_unready_time: + :param scale_down_unready_time: How long an unready node should be + unneeded before it is eligible for scale down. The default is '20m'. + Values must be an integer followed by an 'm'. No unit of time other than + minutes (m) is supported. :type scale_down_unready_time: str - :param scale_down_utilization_threshold: + :param scale_down_utilization_threshold: Node utilization level, defined + as sum of requested resources divided by capacity, below which a node can + be considered for scale down. The default is '0.5'. :type scale_down_utilization_threshold: str - :param skip_nodes_with_local_storage: + :param skip_nodes_with_local_storage: If cluster autoscaler will skip + deleting nodes with pods with local storage, for example, EmptyDir or + HostPath. The default is true. :type skip_nodes_with_local_storage: str - :param skip_nodes_with_system_pods: + :param skip_nodes_with_system_pods: If cluster autoscaler will skip + deleting nodes with pods from kube-system (except for DaemonSet or mirror + pods). The default is true. :type skip_nodes_with_system_pods: str """ @@ -2467,11 +2641,11 @@ def __init__(self, **kwargs): class ManagedClusterPropertiesIdentityProfileValue(UserAssignedIdentity): """ManagedClusterPropertiesIdentityProfileValue. - :param resource_id: The resource id of the user assigned identity. + :param resource_id: The resource ID of the user assigned identity. :type resource_id: str - :param client_id: The client id of the user assigned identity. + :param client_id: The client ID of the user assigned identity. :type client_id: str - :param object_id: The object id of the user assigned identity. + :param object_id: The object ID of the user assigned identity. :type object_id: str """ @@ -2514,14 +2688,16 @@ def __init__(self, **kwargs): class ManagedClusterSKU(Model): - """ManagedClusterSKU. + """The SKU of a Managed Cluster. - :param name: Name of a managed cluster SKU. Possible values include: + :param name: The name of a managed cluster SKU. Possible values include: 'Basic' :type name: str or ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterSKUName - :param tier: Tier of a managed cluster SKU. Possible values include: - 'Paid', 'Free' + :param tier: The tier of a managed cluster SKU. If not specified, the + default is 'Free'. See [uptime + SLA](https://docs.microsoft.com/azure/aks/uptime-sla) for more details. + Possible values include: 'Paid', 'Free' :type tier: str or ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterSKUTier """ @@ -2545,11 +2721,11 @@ class ManagedClusterUpgradeProfile(Model): All required parameters must be populated in order to send to Azure. - :ivar id: Id of upgrade profile. + :ivar id: The ID of the upgrade profile. :vartype id: str - :ivar name: Name of upgrade profile. + :ivar name: The name of the upgrade profile. :vartype name: str - :ivar type: Type of upgrade profile. + :ivar type: The type of the upgrade profile. :vartype type: str :param control_plane_profile: Required. The list of available upgrade versions for the control plane. @@ -2587,12 +2763,12 @@ def __init__(self, **kwargs): class ManagedClusterWindowsProfile(Model): - """Profile for Windows VMs in the container service cluster. + """Profile for Windows VMs in the managed cluster. All required parameters must be populated in order to send to Azure. :param admin_username: Required. Specifies the name of the administrator - account.

**restriction:** Cannot end in "."

**Disallowed + 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", @@ -2609,12 +2785,15 @@ class ManagedClusterWindowsProfile(Model): "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" :type admin_password: str - :param license_type: The licenseType to use for Windows VMs. - Windows_Server is used to enable Azure Hybrid User Benefits for Windows - VMs. Possible values include: 'None', 'Windows_Server' + :param license_type: The license type to use for Windows VMs. See [Azure + Hybrid User + Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for + more details. Possible values include: 'None', 'Windows_Server' :type license_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.LicenseType - :param enable_csi_proxy: Whether to enable CSI proxy. + :param enable_csi_proxy: Whether to enable CSI proxy. For more details on + CSI proxy, see the [CSI proxy GitHub + repo](https://github.com/kubernetes-csi/csi-proxy). :type enable_csi_proxy: bool """ @@ -2638,16 +2817,16 @@ def __init__(self, **kwargs): class OperationValue(Model): - """Describes the properties of a Compute Operation value. + """Describes the properties of a Operation value. Variables are only populated by the server, and will be ignored when sending a request. - :ivar origin: The origin of the compute operation. + :ivar origin: The origin of the operation. :vartype origin: str - :ivar name: The name of the compute operation. + :ivar name: The name of the operation. :vartype name: str - :ivar operation: The display name of the compute operation. + :ivar operation: The display name of the operation. :vartype operation: str :ivar resource: The display name of the resource the operation applies to. :vartype resource: str @@ -2693,14 +2872,13 @@ class OSOptionProfile(Model): All required parameters must be populated in order to send to Azure. - :ivar id: Id of the OS option profile. + :ivar id: The ID of the OS option resource. :vartype id: str - :ivar name: Name of the OS option profile. + :ivar name: The name of the OS option resource. :vartype name: str - :ivar type: Type of the OS option profile. + :ivar type: The type of the OS option resource. :vartype type: str - :param os_option_property_list: Required. The list of OS option - properties. + :param os_option_property_list: Required. The list of OS options. :type os_option_property_list: list[~azure.mgmt.containerservice.v2021_05_01.models.OSOptionProperty] """ @@ -2732,9 +2910,9 @@ class OSOptionProperty(Model): All required parameters must be populated in order to send to Azure. - :param os_type: Required. OS type. + :param os_type: Required. The OS type. :type os_type: str - :param enable_fips_image: Required. Whether FIPS image is enabled. + :param enable_fips_image: Required. Whether the image is FIPS-enabled. :type enable_fips_image: bool """ @@ -2796,7 +2974,7 @@ def __init__(self, **kwargs): class PrivateEndpoint(Model): """Private endpoint which a connection belongs to. - :param id: The resource Id for private endpoint + :param id: The resource ID of the private endpoint :type id: str """ @@ -2895,7 +3073,7 @@ class PrivateLinkResource(Model): :type type: str :param group_id: The group ID of the resource. :type group_id: str - :param required_members: RequiredMembers of the resource + :param required_members: The RequiredMembers of the resource :type required_members: list[str] :ivar private_link_service_id: The private link service ID of the resource, this field is exposed only to NRP internally. @@ -2981,14 +3159,14 @@ def __init__(self, **kwargs): class RunCommandRequest(Model): - """run command request. + """A run command request. All required parameters must be populated in order to send to Azure. - :param command: Required. command to run. + :param command: Required. The command to run. :type command: str - :param context: base64 encoded zip file, contains files required by the - command + :param context: A base64 encoded zip file containing the files required by + the command. :type context: str :param cluster_token: AuthToken issued for AKS AAD Server App. :type cluster_token: str @@ -3017,19 +3195,20 @@ class RunCommandResult(Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: command id. + :ivar id: The command id. :vartype id: str :ivar provisioning_state: provisioning State :vartype provisioning_state: str - :ivar exit_code: exit code of the command + :ivar exit_code: The exit code of the command :vartype exit_code: int - :ivar started_at: time when the command started. + :ivar started_at: The time when the command started. :vartype started_at: datetime - :ivar finished_at: time when the command finished. + :ivar finished_at: The time when the command finished. :vartype finished_at: datetime - :ivar logs: command output. + :ivar logs: The command output. :vartype logs: str - :ivar reason: explain why provisioningState is set to failed (if so). + :ivar reason: An explanation of why provisioningState is set to failed (if + so). :vartype reason: str """ @@ -3210,7 +3389,7 @@ class SystemData(Model): Possible values include: 'User', 'Application', 'ManagedIdentity', 'Key' :type created_by_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.CreatedByType - :param created_at: The timestamp of resource creation (UTC). + :param created_at: The UTC timestamp of resource creation. :type created_at: datetime :param last_modified_by: The identity that last modified the resource. :type last_modified_by: str @@ -3262,10 +3441,14 @@ def __init__(self, **kwargs): class TimeInWeek(Model): """Time in a week. - :param day: A day in a week. Possible values include: 'Sunday', 'Monday', - 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday' + :param day: The day of the week. Possible values include: 'Sunday', + 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday' :type day: str or ~azure.mgmt.containerservice.v2021_05_01.models.WeekDay - :param hour_slots: hour slots in a day. + :param hour_slots: A list of hours in the day used to identify a time + range. 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. :type hour_slots: list[int] """ @@ -3281,7 +3464,9 @@ def __init__(self, **kwargs): class TimeSpan(Model): - """The time span with start and end properties. + """A time range. + + For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z. :param start: The start of a time span :type start: datetime diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/models/_models_py3.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/models/_models_py3.py index aeaae816e3e5..76c059084d7b 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/models/_models_py3.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/models/_models_py3.py @@ -65,124 +65,140 @@ class AgentPool(SubResource): the range of 1 to 1000 (inclusive) for system pools. The default value is 1. :type count: int - :param vm_size: Size of agent VMs. + :param vm_size: The size of the agent pool VMs. 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 :type vm_size: str - :param os_disk_size_gb: 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. + :param os_disk_size_gb: :type os_disk_size_gb: int - :param os_disk_type: 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. Possible values include: - 'Managed', 'Ephemeral' + :param os_disk_type: Possible values include: 'Managed', 'Ephemeral' :type os_disk_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSDiskType - :param kubelet_disk_type: 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. Possible values include: 'OS', 'Temporary' + :param kubelet_disk_type: Possible values include: 'OS', 'Temporary' :type kubelet_disk_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.KubeletDiskType - :param vnet_subnet_id: VNet SubnetID specifies the VNet's subnet - identifier for nodes and maybe pods + :param vnet_subnet_id: The ID of the subnet which agent pool nodes and + optionally pods will join on startup. 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} :type vnet_subnet_id: str - :param pod_subnet_id: Pod SubnetID specifies the VNet's subnet identifier - for pods. + :param pod_subnet_id: The ID of the subnet which pods will join when + launched. 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} :type pod_subnet_id: str - :param max_pods: Maximum number of pods that can run on a node. + :param max_pods: The maximum number of pods that can run on a node. :type max_pods: int - :param os_type: OsType to be used to specify os type. Choose from Linux - and Windows. Default to Linux. Possible values include: 'Linux', - 'Windows'. Default value: "Linux" . + :param os_type: Possible values include: 'Linux', 'Windows'. Default + value: "Linux" . :type os_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSType - :param os_sku: OsSKU to be used to specify os sku. Choose from - Ubuntu(default) and CBLMariner for Linux OSType. Not applicable to Windows - OSType. Possible values include: 'Ubuntu', 'CBLMariner' + :param os_sku: Possible values include: 'Ubuntu', 'CBLMariner' :type os_sku: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSSKU - :param max_count: Maximum number of nodes for auto-scaling + :param max_count: The maximum number of nodes for auto-scaling :type max_count: int - :param min_count: Minimum number of nodes for auto-scaling + :param min_count: The minimum number of nodes for auto-scaling :type min_count: int :param enable_auto_scaling: Whether to enable auto-scaler :type enable_auto_scaling: bool - :param agent_pool_type: AgentPoolType represents types of an agent pool. - Possible values include: 'VirtualMachineScaleSets', 'AvailabilitySet' + :param agent_pool_type: Possible values include: + 'VirtualMachineScaleSets', 'AvailabilitySet' :type agent_pool_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolType - :param mode: AgentPoolMode represents mode of an agent pool. Possible - values include: 'System', 'User' + :param mode: Possible values include: 'System', 'User' :type mode: str or ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolMode - :param orchestrator_version: Version of orchestrator specified when - creating the managed cluster. + :param orchestrator_version: The version of Kubernetes running on the + Agent Pool. 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). :type orchestrator_version: str - :ivar node_image_version: Version of node image + :ivar node_image_version: The version of node image :vartype node_image_version: str :param upgrade_settings: Settings for upgrading the agentpool :type upgrade_settings: ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolUpgradeSettings - :ivar provisioning_state: The current deployment or provisioning state, - which only appears in the response. + :ivar provisioning_state: The current deployment or provisioning state. :vartype provisioning_state: str :ivar power_state: Describes whether the Agent Pool is Running or Stopped :vartype power_state: ~azure.mgmt.containerservice.v2021_05_01.models.PowerState - :param availability_zones: Availability zones for nodes. Must use - VirtualMachineScaleSets AgentPoolType. + :param availability_zones: The list of Availability zones to use for + nodes. This can only be specified if the AgentPoolType property is + 'VirtualMachineScaleSets'. :type availability_zones: list[str] - :param enable_node_public_ip: Enable public IP for nodes + :param enable_node_public_ip: Whether each node is allocated its own + public IP. 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. :type enable_node_public_ip: bool - :param node_public_ip_prefix_id: Public IP Prefix ID. VM nodes use IPs - assigned from this Public IP Prefix. + :param node_public_ip_prefix_id: The public IP prefix ID which VM nodes + should use IPs from. This is of the form: + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} :type node_public_ip_prefix_id: str - :param scale_set_priority: ScaleSetPriority to be used to specify virtual - machine scale set priority. Default to regular. Possible values include: - 'Spot', 'Regular'. Default value: "Regular" . + :param scale_set_priority: The Virtual Machine Scale Set priority. If not + specified, the default is 'Regular'. Possible values include: 'Spot', + 'Regular'. Default value: "Regular" . :type scale_set_priority: str or ~azure.mgmt.containerservice.v2021_05_01.models.ScaleSetPriority - :param scale_set_eviction_policy: ScaleSetEvictionPolicy to be used to - specify eviction policy for Spot virtual machine scale set. Default to - Delete. Possible values include: 'Delete', 'Deallocate'. Default value: - "Delete" . + :param scale_set_eviction_policy: The Virtual Machine Scale Set eviction + policy to use. This cannot be specified unless the scaleSetPriority is + 'Spot'. If not specified, the default is 'Delete'. Possible values + include: 'Delete', 'Deallocate'. Default value: "Delete" . :type scale_set_eviction_policy: str or ~azure.mgmt.containerservice.v2021_05_01.models.ScaleSetEvictionPolicy - :param spot_max_price: 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. + :param spot_max_price: The max price (in US Dollars) you are willing to + pay for spot instances. Possible values are any decimal value greater than + zero or -1 which indicates default price to be up-to on-demand. 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) :type spot_max_price: float - :param tags: Agent pool tags to be persisted on the agent pool virtual - machine scale set. + :param tags: The tags to be persisted on the agent pool virtual machine + scale set. :type tags: dict[str, str] - :param node_labels: Agent pool node labels to be persisted across all - nodes in agent pool. + :param node_labels: The node labels to be persisted across all nodes in + agent pool. :type node_labels: dict[str, str] - :param node_taints: Taints added to new nodes during node pool create and - scale. For example, key=value:NoSchedule. + :param node_taints: The taints added to new nodes during node pool create + and scale. For example, key=value:NoSchedule. :type node_taints: list[str] :param proximity_placement_group_id: The ID for Proximity Placement Group. :type proximity_placement_group_id: str - :param kubelet_config: KubeletConfig specifies the configuration of - kubelet on agent nodes. + :param kubelet_config: The Kubelet configuration on the agent pool nodes. :type kubelet_config: ~azure.mgmt.containerservice.v2021_05_01.models.KubeletConfig - :param linux_os_config: LinuxOSConfig specifies the OS configuration of - linux agent nodes. + :param linux_os_config: The OS configuration of Linux agent nodes. :type linux_os_config: ~azure.mgmt.containerservice.v2021_05_01.models.LinuxOSConfig - :param enable_encryption_at_host: Whether to enable EncryptionAtHost + :param enable_encryption_at_host: Whether to enable host based OS and data + drive encryption. 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 :type enable_encryption_at_host: bool :param enable_ultra_ssd: Whether to enable UltraSSD :type enable_ultra_ssd: bool - :param enable_fips: Whether to use FIPS enabled OS + :param enable_fips: Whether to use a FIPS-enabled OS. 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. :type enable_fips: bool :param gpu_instance_profile: GPUInstanceProfile to be used to specify GPU - MIG instance profile for supported GPU VM SKU. Supported values are MIG1g, - MIG2g, MIG3g, MIG4g and MIG7g. Possible values include: 'MIG1g', 'MIG2g', - 'MIG3g', 'MIG4g', 'MIG7g' + MIG instance profile for supported GPU VM SKU. Possible values include: + 'MIG1g', 'MIG2g', 'MIG3g', 'MIG4g', 'MIG7g' :type gpu_instance_profile: str or ~azure.mgmt.containerservice.v2021_05_01.models.GPUInstanceProfile """ @@ -284,11 +300,11 @@ class AgentPoolAvailableVersions(Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: Id of the agent pool available versions. + :ivar id: The ID of the agent pool version list. :vartype id: str - :ivar name: Name of the agent pool available versions. + :ivar name: The name of the agent pool version list. :vartype name: str - :ivar type: Type of the agent pool available versions. + :ivar type: Type of the agent pool version list. :vartype type: str :param agent_pool_versions: List of versions available for agent pool. :type agent_pool_versions: @@ -321,7 +337,7 @@ class AgentPoolAvailableVersionsPropertiesAgentPoolVersionsItem(Model): :param default: Whether this version is the default agent pool version. :type default: bool - :param kubernetes_version: Kubernetes version (major, minor, patch). + :param kubernetes_version: The Kubernetes version (major.minor.patch). :type kubernetes_version: str :param is_preview: Whether Kubernetes version is currently in preview. :type is_preview: bool @@ -348,26 +364,25 @@ class AgentPoolUpgradeProfile(Model): All required parameters must be populated in order to send to Azure. - :ivar id: Id of the agent pool upgrade profile. + :ivar id: The ID of the agent pool upgrade profile. :vartype id: str - :ivar name: Name of the agent pool upgrade profile. + :ivar name: The name of the agent pool upgrade profile. :vartype name: str - :ivar type: Type of the agent pool upgrade profile. + :ivar type: The type of the agent pool upgrade profile. :vartype type: str - :param kubernetes_version: Required. Kubernetes version (major, minor, - patch). + :param kubernetes_version: Required. The Kubernetes version + (major.minor.patch). :type kubernetes_version: str - :param os_type: Required. OsType to be used to specify os type. Choose - from Linux and Windows. Default to Linux. Possible values include: - 'Linux', 'Windows'. Default value: "Linux" . + :param os_type: Required. Possible values include: 'Linux', 'Windows'. + Default value: "Linux" . :type os_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSType :param upgrades: List of orchestrator types and versions available for upgrade. :type upgrades: list[~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolUpgradeProfilePropertiesUpgradesItem] - :param latest_node_image_version: LatestNodeImageVersion is the latest AKS - supported node image version. + :param latest_node_image_version: The latest AKS supported node image + version. :type latest_node_image_version: str """ @@ -403,9 +418,9 @@ def __init__(self, *, kubernetes_version: str, os_type="Linux", upgrades=None, l class AgentPoolUpgradeProfilePropertiesUpgradesItem(Model): """AgentPoolUpgradeProfilePropertiesUpgradesItem. - :param kubernetes_version: Kubernetes version (major, minor, patch). + :param kubernetes_version: The Kubernetes version (major.minor.patch). :type kubernetes_version: str - :param is_preview: Whether Kubernetes version is currently in preview. + :param is_preview: Whether the Kubernetes version is currently in preview. :type is_preview: bool """ @@ -423,8 +438,13 @@ def __init__(self, *, kubernetes_version: str=None, is_preview: bool=None, **kwa class AgentPoolUpgradeSettings(Model): """Settings for upgrading an agentpool. - :param max_surge: Count or percentage of additional nodes to be added - during upgrade. If empty uses AKS default + :param max_surge: The maximum number or percentage of nodes that are + surged during upgrade. 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 :type max_surge: str """ @@ -530,7 +550,7 @@ class ContainerServiceLinuxProfile(Model): :param admin_username: Required. The administrator username to use for Linux VMs. :type admin_username: str - :param ssh: Required. SSH configuration for Linux-based VMs running on + :param ssh: Required. The SSH configuration for Linux-based VMs running on Azure. :type ssh: ~azure.mgmt.containerservice.v2021_05_01.models.ContainerServiceSshConfiguration @@ -671,16 +691,17 @@ def __init__(self, *, dns_prefix: str, vm_size, count: int=1, os_disk_size_gb: i class ContainerServiceNetworkProfile(Model): """Profile of network configuration. - :param network_plugin: Network plugin used for building Kubernetes + :param network_plugin: Network plugin used for building the Kubernetes network. Possible values include: 'azure', 'kubenet'. Default value: "kubenet" . :type network_plugin: str or ~azure.mgmt.containerservice.v2021_05_01.models.NetworkPlugin - :param network_policy: Network policy used for building Kubernetes + :param network_policy: Network policy used for building the Kubernetes network. Possible values include: 'calico', 'azure' :type network_policy: str or ~azure.mgmt.containerservice.v2021_05_01.models.NetworkPolicy - :param network_mode: Network mode used for building Kubernetes network. + :param network_mode: The network mode Azure CNI is configured with. This + cannot be specified if networkPlugin is anything other than 'azure'. Possible values include: 'transparent', 'bridge' :type network_mode: str or ~azure.mgmt.containerservice.v2021_05_01.models.NetworkMode @@ -699,13 +720,19 @@ class ContainerServiceNetworkProfile(Model): bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range. Default value: "172.17.0.1/16" . :type docker_bridge_cidr: str - :param outbound_type: The outbound (egress) routing method. Possible + :param outbound_type: The outbound (egress) routing method. 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). Possible values include: 'loadBalancer', 'userDefinedRouting'. Default value: "loadBalancer" . :type outbound_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OutboundType :param load_balancer_sku: The load balancer sku for the managed cluster. - Possible values include: 'standard', 'basic' + 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. Possible + values include: 'standard', 'basic' :type load_balancer_sku: str or ~azure.mgmt.containerservice.v2021_05_01.models.LoadBalancerSku :param load_balancer_profile: Profile of the cluster load balancer. @@ -753,7 +780,7 @@ class ContainerServiceSshConfiguration(Model): All required parameters must be populated in order to send to Azure. :param public_keys: Required. The list of SSH public keys used to - authenticate with Linux-based VMs. Only expect one key specified. + authenticate with Linux-based VMs. A maximum of 1 key may be specified. :type public_keys: list[~azure.mgmt.containerservice.v2021_05_01.models.ContainerServiceSshPublicKey] """ @@ -856,7 +883,7 @@ def __init__(self, **kwargs) -> None: class CredentialResults(Model): - """The list of credential result response. + """The list credential result response. Variables are only populated by the server, and will be ignored when sending a request. @@ -954,22 +981,38 @@ def __init__(self, *, name: str=None, type=None, **kwargs) -> None: class KubeletConfig(Model): """Kubelet configurations of agent nodes. - :param cpu_manager_policy: CPU Manager policy to use. + See [AKS custom node + configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) + for more details. + + :param cpu_manager_policy: The CPU Manager policy to use. 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'. :type cpu_manager_policy: str - :param cpu_cfs_quota: Enable CPU CFS quota enforcement for containers that - specify CPU limits. + :param cpu_cfs_quota: If CPU CFS quota enforcement is enabled for + containers that specify CPU limits. The default is true. :type cpu_cfs_quota: bool - :param cpu_cfs_quota_period: Sets CPU CFS quota period value. + :param cpu_cfs_quota_period: The CPU CFS quota period value. 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'. :type cpu_cfs_quota_period: str :param image_gc_high_threshold: The percent of disk usage after which - image garbage collection is always run. + image garbage collection is always run. To disable image garbage + collection, set to 100. The default is 85% :type image_gc_high_threshold: int :param image_gc_low_threshold: The percent of disk usage before which - image garbage collection is never run. + image garbage collection is never run. This cannot be set higher than + imageGcHighThreshold. The default is 80% :type image_gc_low_threshold: int - :param topology_manager_policy: Topology Manager policy to use. + :param topology_manager_policy: The Topology Manager policy to use. 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'. :type topology_manager_policy: str - :param allowed_unsafe_sysctls: Allowlist of unsafe sysctls or unsafe + :param allowed_unsafe_sysctls: Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). :type allowed_unsafe_sysctls: list[str] :param fail_swap_on: If set to true it will make the Kubelet fail to start @@ -1021,17 +1064,26 @@ def __init__(self, *, cpu_manager_policy: str=None, cpu_cfs_quota: bool=None, cp class LinuxOSConfig(Model): """OS configurations of Linux agent nodes. + See [AKS custom node + configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) + for more details. + :param sysctls: Sysctl settings for Linux agent nodes. :type sysctls: ~azure.mgmt.containerservice.v2021_05_01.models.SysctlConfig - :param transparent_huge_page_enabled: Transparent Huge Page enabled - configuration. + :param transparent_huge_page_enabled: Whether transparent hugepages are + enabled. 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). :type transparent_huge_page_enabled: str - :param transparent_huge_page_defrag: Transparent Huge Page defrag - configuration. + :param transparent_huge_page_defrag: Whether the kernel should make + aggressive use of memory compaction to make more hugepages available. + 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). :type transparent_huge_page_defrag: str - :param swap_file_size_mb: SwapFileSizeMB specifies size in MB of a swap - file will be created on each node. + :param swap_file_size_mb: The size in MB of a swap file that will be + created on each node. :type swap_file_size_mb: int """ @@ -1051,7 +1103,12 @@ def __init__(self, *, sysctls=None, transparent_huge_page_enabled: str=None, tra class MaintenanceConfiguration(SubResource): - """maintenance configuration. + """Planned maintenance configuration, used to configure when updates can be + deployed to a Managed Cluster. + + See [planned + maintenance](https://docs.microsoft.com/azure/aks/planned-maintenance) for + more information about planned maintenance. Variables are only populated by the server, and will be ignored when sending a request. @@ -1063,10 +1120,12 @@ class MaintenanceConfiguration(SubResource): :vartype name: str :ivar type: Resource type :vartype type: str - :ivar system_data: The system meta data relating to this resource. + :ivar system_data: The system metadata relating to this resource. :vartype system_data: ~azure.mgmt.containerservice.v2021_05_01.models.SystemData - :param time_in_week: Weekday time slots allowed to upgrade. + :param time_in_week: Time slots during the week when planned maintenance + is allowed to proceed. If two array entries specify the same day of the + week, the applied configuration is the union of times in both entries. :type time_in_week: list[~azure.mgmt.containerservice.v2021_05_01.models.TimeInWeek] :param not_allowed_time: Time slots on which upgrade is not allowed. @@ -1159,53 +1218,66 @@ class ManagedCluster(Resource): :type location: str :param tags: Resource tags :type tags: dict[str, str] - :ivar provisioning_state: The current deployment or provisioning state, - which only appears in the response. + :ivar provisioning_state: The current provisioning state. :vartype provisioning_state: str - :ivar power_state: Represents the Power State of the cluster + :ivar power_state: The Power State of the cluster. :vartype power_state: ~azure.mgmt.containerservice.v2021_05_01.models.PowerState :ivar max_agent_pools: The max number of agent pools for the managed cluster. :vartype max_agent_pools: int - :param kubernetes_version: Version of Kubernetes specified when creating - the managed cluster. + :param kubernetes_version: The version of Kubernetes the Managed Cluster + is running. 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. :type kubernetes_version: str - :param dns_prefix: DNS prefix specified when creating the managed cluster. + :param dns_prefix: The DNS prefix of the Managed Cluster. This cannot be + updated once the Managed Cluster has been created. :type dns_prefix: str - :param fqdn_subdomain: FQDN subdomain specified when creating private - cluster with custom private dns zone. + :param fqdn_subdomain: The FQDN subdomain of the private cluster with + custom private dns zone. This cannot be updated once the Managed Cluster + has been created. :type fqdn_subdomain: str - :ivar fqdn: FQDN for the master pool. + :ivar fqdn: The FQDN of the master pool. :vartype fqdn: str - :ivar private_fqdn: FQDN of private cluster. + :ivar private_fqdn: The FQDN of private cluster. :vartype private_fqdn: str - :ivar azure_portal_fqdn: FQDN for the master pool which used by proxy - config. + :ivar azure_portal_fqdn: The special FQDN used by the Azure Portal to + access the Managed Cluster. This FQDN is for use only by the Azure Portal + and should not be used by other clients. The Azure Portal requires certain + Cross-Origin Resource Sharing (CORS) headers to be sent in some responses, + which Kubernetes APIServer doesn't handle by default. This special FQDN + supports CORS, allowing the Azure Portal to function properly. :vartype azure_portal_fqdn: str - :param agent_pool_profiles: Properties of the agent pool. + :param agent_pool_profiles: The agent pool properties. :type agent_pool_profiles: list[~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterAgentPoolProfile] - :param linux_profile: Profile for Linux VMs in the container service - cluster. + :param linux_profile: The profile for Linux VMs in the Managed Cluster. :type linux_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ContainerServiceLinuxProfile - :param windows_profile: Profile for Windows VMs in the container service - cluster. + :param windows_profile: The profile for Windows VMs in the Managed + Cluster. :type windows_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterWindowsProfile :param service_principal_profile: Information about a service principal identity for the cluster to use for manipulating Azure APIs. :type service_principal_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterServicePrincipalProfile - :param addon_profiles: Profile of managed cluster add-on. + :param addon_profiles: The profile of managed cluster add-on. :type addon_profiles: dict[str, ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterAddonProfile] - :param pod_identity_profile: Profile of managed cluster pod identity. + :param pod_identity_profile: The pod identity profile of the Managed + Cluster. See [use AAD pod + identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) + for more details on AAD pod identity integration. :type pod_identity_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterPodIdentityProfile - :param node_resource_group: Name of the resource group containing agent - pool nodes. + :param node_resource_group: The name of the resource group containing + agent pool nodes. :type node_resource_group: str :param enable_rbac: Whether to enable Kubernetes Role-Based Access Control. @@ -1214,25 +1286,26 @@ class ManagedCluster(Resource): Kubernetes pod security policy (preview). This feature is set for removal on October 15th, 2020. Learn more at aka.ms/aks/azpodpolicy. :type enable_pod_security_policy: bool - :param network_profile: Profile of network configuration. + :param network_profile: The network configuration profile. :type network_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ContainerServiceNetworkProfile - :param aad_profile: Profile of Azure Active Directory configuration. + :param aad_profile: The Azure Active Directory configuration. :type aad_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterAADProfile - :param auto_upgrade_profile: Profile of auto upgrade configuration. + :param auto_upgrade_profile: The auto upgrade configuration. :type auto_upgrade_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterAutoUpgradeProfile :param auto_scaler_profile: Parameters to be applied to the cluster-autoscaler when enabled :type auto_scaler_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterPropertiesAutoScalerProfile - :param api_server_access_profile: Access profile for managed cluster API - server. + :param api_server_access_profile: The access profile for managed cluster + API server. :type api_server_access_profile: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterAPIServerAccessProfile - :param disk_encryption_set_id: ResourceId of the disk encryption set to - use for enabling encryption at rest. + :param disk_encryption_set_id: The Resource ID of the disk encryption set + to use for enabling encryption at rest. This is of the form: + '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}' :type disk_encryption_set_id: str :param identity_profile: Identities associated with the cluster. :type identity_profile: dict[str, @@ -1241,9 +1314,11 @@ class ManagedCluster(Resource): cluster. :type private_link_resources: list[~azure.mgmt.containerservice.v2021_05_01.models.PrivateLinkResource] - :param disable_local_accounts: If set to true, getting static credential - will be disabled for this cluster. Expected to only be used for AAD - clusters. + :param disable_local_accounts: If local accounts should be disabled on the + Managed Cluster. 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). :type disable_local_accounts: bool :param http_proxy_config: Configurations for provisioning the cluster with HTTP proxy servers. @@ -1350,13 +1425,16 @@ def __init__(self, *, location: str, tags=None, kubernetes_version: str=None, dn class ManagedClusterAADProfile(Model): """AADProfile specifies attributes for Azure Active Directory integration. + For more details see [managed AAD on + AKS](https://docs.microsoft.com/azure/aks/managed-aad). + :param managed: Whether to enable managed AAD. :type managed: bool :param enable_azure_rbac: Whether to enable Azure RBAC for Kubernetes authorization. :type enable_azure_rbac: bool - :param admin_group_object_ids: AAD group object IDs that will have admin - role of the cluster. + :param admin_group_object_ids: The list of AAD group object IDs that will + have admin role of the cluster. :type admin_group_object_ids: list[str] :param client_app_id: The client AAD application ID. :type client_app_id: str @@ -1469,13 +1547,13 @@ def __init__(self, *, enabled: bool, config=None, **kwargs) -> None: class UserAssignedIdentity(Model): - """UserAssignedIdentity. + """Details about a user assigned identity. - :param resource_id: The resource id of the user assigned identity. + :param resource_id: The resource ID of the user assigned identity. :type resource_id: str - :param client_id: The client id of the user assigned identity. + :param client_id: The client ID of the user assigned identity. :type client_id: str - :param object_id: The object id of the user assigned identity. + :param object_id: The object ID of the user assigned identity. :type object_id: str """ @@ -1495,11 +1573,11 @@ def __init__(self, *, resource_id: str=None, client_id: str=None, object_id: str class ManagedClusterAddonProfileIdentity(UserAssignedIdentity): """Information of user assigned identity used by this add-on. - :param resource_id: The resource id of the user assigned identity. + :param resource_id: The resource ID of the user assigned identity. :type resource_id: str - :param client_id: The client id of the user assigned identity. + :param client_id: The client ID of the user assigned identity. :type client_id: str - :param object_id: The object id of the user assigned identity. + :param object_id: The object ID of the user assigned identity. :type object_id: str """ @@ -1524,124 +1602,140 @@ class ManagedClusterAgentPoolProfileProperties(Model): the range of 1 to 1000 (inclusive) for system pools. The default value is 1. :type count: int - :param vm_size: Size of agent VMs. + :param vm_size: The size of the agent pool VMs. 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 :type vm_size: str - :param os_disk_size_gb: 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. + :param os_disk_size_gb: :type os_disk_size_gb: int - :param os_disk_type: 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. Possible values include: - 'Managed', 'Ephemeral' + :param os_disk_type: Possible values include: 'Managed', 'Ephemeral' :type os_disk_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSDiskType - :param kubelet_disk_type: 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. Possible values include: 'OS', 'Temporary' + :param kubelet_disk_type: Possible values include: 'OS', 'Temporary' :type kubelet_disk_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.KubeletDiskType - :param vnet_subnet_id: VNet SubnetID specifies the VNet's subnet - identifier for nodes and maybe pods + :param vnet_subnet_id: The ID of the subnet which agent pool nodes and + optionally pods will join on startup. 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} :type vnet_subnet_id: str - :param pod_subnet_id: Pod SubnetID specifies the VNet's subnet identifier - for pods. + :param pod_subnet_id: The ID of the subnet which pods will join when + launched. 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} :type pod_subnet_id: str - :param max_pods: Maximum number of pods that can run on a node. + :param max_pods: The maximum number of pods that can run on a node. :type max_pods: int - :param os_type: OsType to be used to specify os type. Choose from Linux - and Windows. Default to Linux. Possible values include: 'Linux', - 'Windows'. Default value: "Linux" . + :param os_type: Possible values include: 'Linux', 'Windows'. Default + value: "Linux" . :type os_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSType - :param os_sku: OsSKU to be used to specify os sku. Choose from - Ubuntu(default) and CBLMariner for Linux OSType. Not applicable to Windows - OSType. Possible values include: 'Ubuntu', 'CBLMariner' + :param os_sku: Possible values include: 'Ubuntu', 'CBLMariner' :type os_sku: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSSKU - :param max_count: Maximum number of nodes for auto-scaling + :param max_count: The maximum number of nodes for auto-scaling :type max_count: int - :param min_count: Minimum number of nodes for auto-scaling + :param min_count: The minimum number of nodes for auto-scaling :type min_count: int :param enable_auto_scaling: Whether to enable auto-scaler :type enable_auto_scaling: bool - :param type: AgentPoolType represents types of an agent pool. Possible - values include: 'VirtualMachineScaleSets', 'AvailabilitySet' + :param type: Possible values include: 'VirtualMachineScaleSets', + 'AvailabilitySet' :type type: str or ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolType - :param mode: AgentPoolMode represents mode of an agent pool. Possible - values include: 'System', 'User' + :param mode: Possible values include: 'System', 'User' :type mode: str or ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolMode - :param orchestrator_version: Version of orchestrator specified when - creating the managed cluster. + :param orchestrator_version: The version of Kubernetes running on the + Agent Pool. 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). :type orchestrator_version: str - :ivar node_image_version: Version of node image + :ivar node_image_version: The version of node image :vartype node_image_version: str :param upgrade_settings: Settings for upgrading the agentpool :type upgrade_settings: ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolUpgradeSettings - :ivar provisioning_state: The current deployment or provisioning state, - which only appears in the response. + :ivar provisioning_state: The current deployment or provisioning state. :vartype provisioning_state: str :ivar power_state: Describes whether the Agent Pool is Running or Stopped :vartype power_state: ~azure.mgmt.containerservice.v2021_05_01.models.PowerState - :param availability_zones: Availability zones for nodes. Must use - VirtualMachineScaleSets AgentPoolType. + :param availability_zones: The list of Availability zones to use for + nodes. This can only be specified if the AgentPoolType property is + 'VirtualMachineScaleSets'. :type availability_zones: list[str] - :param enable_node_public_ip: Enable public IP for nodes + :param enable_node_public_ip: Whether each node is allocated its own + public IP. 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. :type enable_node_public_ip: bool - :param node_public_ip_prefix_id: Public IP Prefix ID. VM nodes use IPs - assigned from this Public IP Prefix. + :param node_public_ip_prefix_id: The public IP prefix ID which VM nodes + should use IPs from. This is of the form: + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} :type node_public_ip_prefix_id: str - :param scale_set_priority: ScaleSetPriority to be used to specify virtual - machine scale set priority. Default to regular. Possible values include: - 'Spot', 'Regular'. Default value: "Regular" . + :param scale_set_priority: The Virtual Machine Scale Set priority. If not + specified, the default is 'Regular'. Possible values include: 'Spot', + 'Regular'. Default value: "Regular" . :type scale_set_priority: str or ~azure.mgmt.containerservice.v2021_05_01.models.ScaleSetPriority - :param scale_set_eviction_policy: ScaleSetEvictionPolicy to be used to - specify eviction policy for Spot virtual machine scale set. Default to - Delete. Possible values include: 'Delete', 'Deallocate'. Default value: - "Delete" . + :param scale_set_eviction_policy: The Virtual Machine Scale Set eviction + policy to use. This cannot be specified unless the scaleSetPriority is + 'Spot'. If not specified, the default is 'Delete'. Possible values + include: 'Delete', 'Deallocate'. Default value: "Delete" . :type scale_set_eviction_policy: str or ~azure.mgmt.containerservice.v2021_05_01.models.ScaleSetEvictionPolicy - :param spot_max_price: 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. + :param spot_max_price: The max price (in US Dollars) you are willing to + pay for spot instances. Possible values are any decimal value greater than + zero or -1 which indicates default price to be up-to on-demand. 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) :type spot_max_price: float - :param tags: Agent pool tags to be persisted on the agent pool virtual - machine scale set. + :param tags: The tags to be persisted on the agent pool virtual machine + scale set. :type tags: dict[str, str] - :param node_labels: Agent pool node labels to be persisted across all - nodes in agent pool. + :param node_labels: The node labels to be persisted across all nodes in + agent pool. :type node_labels: dict[str, str] - :param node_taints: Taints added to new nodes during node pool create and - scale. For example, key=value:NoSchedule. + :param node_taints: The taints added to new nodes during node pool create + and scale. For example, key=value:NoSchedule. :type node_taints: list[str] :param proximity_placement_group_id: The ID for Proximity Placement Group. :type proximity_placement_group_id: str - :param kubelet_config: KubeletConfig specifies the configuration of - kubelet on agent nodes. + :param kubelet_config: The Kubelet configuration on the agent pool nodes. :type kubelet_config: ~azure.mgmt.containerservice.v2021_05_01.models.KubeletConfig - :param linux_os_config: LinuxOSConfig specifies the OS configuration of - linux agent nodes. + :param linux_os_config: The OS configuration of Linux agent nodes. :type linux_os_config: ~azure.mgmt.containerservice.v2021_05_01.models.LinuxOSConfig - :param enable_encryption_at_host: Whether to enable EncryptionAtHost + :param enable_encryption_at_host: Whether to enable host based OS and data + drive encryption. 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 :type enable_encryption_at_host: bool :param enable_ultra_ssd: Whether to enable UltraSSD :type enable_ultra_ssd: bool - :param enable_fips: Whether to use FIPS enabled OS + :param enable_fips: Whether to use a FIPS-enabled OS. 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. :type enable_fips: bool :param gpu_instance_profile: GPUInstanceProfile to be used to specify GPU - MIG instance profile for supported GPU VM SKU. Supported values are MIG1g, - MIG2g, MIG3g, MIG4g and MIG7g. Possible values include: 'MIG1g', 'MIG2g', - 'MIG3g', 'MIG4g', 'MIG7g' + MIG instance profile for supported GPU VM SKU. Possible values include: + 'MIG1g', 'MIG2g', 'MIG3g', 'MIG4g', 'MIG7g' :type gpu_instance_profile: str or ~azure.mgmt.containerservice.v2021_05_01.models.GPUInstanceProfile """ @@ -1744,128 +1838,145 @@ class ManagedClusterAgentPoolProfile(ManagedClusterAgentPoolProfileProperties): the range of 1 to 1000 (inclusive) for system pools. The default value is 1. :type count: int - :param vm_size: Size of agent VMs. + :param vm_size: The size of the agent pool VMs. 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 :type vm_size: str - :param os_disk_size_gb: 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. + :param os_disk_size_gb: :type os_disk_size_gb: int - :param os_disk_type: 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. Possible values include: - 'Managed', 'Ephemeral' + :param os_disk_type: Possible values include: 'Managed', 'Ephemeral' :type os_disk_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSDiskType - :param kubelet_disk_type: 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. Possible values include: 'OS', 'Temporary' + :param kubelet_disk_type: Possible values include: 'OS', 'Temporary' :type kubelet_disk_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.KubeletDiskType - :param vnet_subnet_id: VNet SubnetID specifies the VNet's subnet - identifier for nodes and maybe pods + :param vnet_subnet_id: The ID of the subnet which agent pool nodes and + optionally pods will join on startup. 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} :type vnet_subnet_id: str - :param pod_subnet_id: Pod SubnetID specifies the VNet's subnet identifier - for pods. + :param pod_subnet_id: The ID of the subnet which pods will join when + launched. 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} :type pod_subnet_id: str - :param max_pods: Maximum number of pods that can run on a node. + :param max_pods: The maximum number of pods that can run on a node. :type max_pods: int - :param os_type: OsType to be used to specify os type. Choose from Linux - and Windows. Default to Linux. Possible values include: 'Linux', - 'Windows'. Default value: "Linux" . + :param os_type: Possible values include: 'Linux', 'Windows'. Default + value: "Linux" . :type os_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSType - :param os_sku: OsSKU to be used to specify os sku. Choose from - Ubuntu(default) and CBLMariner for Linux OSType. Not applicable to Windows - OSType. Possible values include: 'Ubuntu', 'CBLMariner' + :param os_sku: Possible values include: 'Ubuntu', 'CBLMariner' :type os_sku: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSSKU - :param max_count: Maximum number of nodes for auto-scaling + :param max_count: The maximum number of nodes for auto-scaling :type max_count: int - :param min_count: Minimum number of nodes for auto-scaling + :param min_count: The minimum number of nodes for auto-scaling :type min_count: int :param enable_auto_scaling: Whether to enable auto-scaler :type enable_auto_scaling: bool - :param type: AgentPoolType represents types of an agent pool. Possible - values include: 'VirtualMachineScaleSets', 'AvailabilitySet' + :param type: Possible values include: 'VirtualMachineScaleSets', + 'AvailabilitySet' :type type: str or ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolType - :param mode: AgentPoolMode represents mode of an agent pool. Possible - values include: 'System', 'User' + :param mode: Possible values include: 'System', 'User' :type mode: str or ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolMode - :param orchestrator_version: Version of orchestrator specified when - creating the managed cluster. + :param orchestrator_version: The version of Kubernetes running on the + Agent Pool. 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). :type orchestrator_version: str - :ivar node_image_version: Version of node image + :ivar node_image_version: The version of node image :vartype node_image_version: str :param upgrade_settings: Settings for upgrading the agentpool :type upgrade_settings: ~azure.mgmt.containerservice.v2021_05_01.models.AgentPoolUpgradeSettings - :ivar provisioning_state: The current deployment or provisioning state, - which only appears in the response. + :ivar provisioning_state: The current deployment or provisioning state. :vartype provisioning_state: str :ivar power_state: Describes whether the Agent Pool is Running or Stopped :vartype power_state: ~azure.mgmt.containerservice.v2021_05_01.models.PowerState - :param availability_zones: Availability zones for nodes. Must use - VirtualMachineScaleSets AgentPoolType. + :param availability_zones: The list of Availability zones to use for + nodes. This can only be specified if the AgentPoolType property is + 'VirtualMachineScaleSets'. :type availability_zones: list[str] - :param enable_node_public_ip: Enable public IP for nodes + :param enable_node_public_ip: Whether each node is allocated its own + public IP. 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. :type enable_node_public_ip: bool - :param node_public_ip_prefix_id: Public IP Prefix ID. VM nodes use IPs - assigned from this Public IP Prefix. + :param node_public_ip_prefix_id: The public IP prefix ID which VM nodes + should use IPs from. This is of the form: + /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} :type node_public_ip_prefix_id: str - :param scale_set_priority: ScaleSetPriority to be used to specify virtual - machine scale set priority. Default to regular. Possible values include: - 'Spot', 'Regular'. Default value: "Regular" . + :param scale_set_priority: The Virtual Machine Scale Set priority. If not + specified, the default is 'Regular'. Possible values include: 'Spot', + 'Regular'. Default value: "Regular" . :type scale_set_priority: str or ~azure.mgmt.containerservice.v2021_05_01.models.ScaleSetPriority - :param scale_set_eviction_policy: ScaleSetEvictionPolicy to be used to - specify eviction policy for Spot virtual machine scale set. Default to - Delete. Possible values include: 'Delete', 'Deallocate'. Default value: - "Delete" . + :param scale_set_eviction_policy: The Virtual Machine Scale Set eviction + policy to use. This cannot be specified unless the scaleSetPriority is + 'Spot'. If not specified, the default is 'Delete'. Possible values + include: 'Delete', 'Deallocate'. Default value: "Delete" . :type scale_set_eviction_policy: str or ~azure.mgmt.containerservice.v2021_05_01.models.ScaleSetEvictionPolicy - :param spot_max_price: 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. + :param spot_max_price: The max price (in US Dollars) you are willing to + pay for spot instances. Possible values are any decimal value greater than + zero or -1 which indicates default price to be up-to on-demand. 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) :type spot_max_price: float - :param tags: Agent pool tags to be persisted on the agent pool virtual - machine scale set. + :param tags: The tags to be persisted on the agent pool virtual machine + scale set. :type tags: dict[str, str] - :param node_labels: Agent pool node labels to be persisted across all - nodes in agent pool. + :param node_labels: The node labels to be persisted across all nodes in + agent pool. :type node_labels: dict[str, str] - :param node_taints: Taints added to new nodes during node pool create and - scale. For example, key=value:NoSchedule. + :param node_taints: The taints added to new nodes during node pool create + and scale. For example, key=value:NoSchedule. :type node_taints: list[str] :param proximity_placement_group_id: The ID for Proximity Placement Group. :type proximity_placement_group_id: str - :param kubelet_config: KubeletConfig specifies the configuration of - kubelet on agent nodes. + :param kubelet_config: The Kubelet configuration on the agent pool nodes. :type kubelet_config: ~azure.mgmt.containerservice.v2021_05_01.models.KubeletConfig - :param linux_os_config: LinuxOSConfig specifies the OS configuration of - linux agent nodes. + :param linux_os_config: The OS configuration of Linux agent nodes. :type linux_os_config: ~azure.mgmt.containerservice.v2021_05_01.models.LinuxOSConfig - :param enable_encryption_at_host: Whether to enable EncryptionAtHost + :param enable_encryption_at_host: Whether to enable host based OS and data + drive encryption. 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 :type enable_encryption_at_host: bool :param enable_ultra_ssd: Whether to enable UltraSSD :type enable_ultra_ssd: bool - :param enable_fips: Whether to use FIPS enabled OS + :param enable_fips: Whether to use a FIPS-enabled OS. 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. :type enable_fips: bool :param gpu_instance_profile: GPUInstanceProfile to be used to specify GPU - MIG instance profile for supported GPU VM SKU. Supported values are MIG1g, - MIG2g, MIG3g, MIG4g and MIG7g. Possible values include: 'MIG1g', 'MIG2g', - 'MIG3g', 'MIG4g', 'MIG7g' + MIG instance profile for supported GPU VM SKU. Possible values include: + 'MIG1g', 'MIG2g', 'MIG3g', 'MIG4g', 'MIG7g' :type gpu_instance_profile: str or ~azure.mgmt.containerservice.v2021_05_01.models.GPUInstanceProfile :param name: Required. Unique name of the agent pool profile in the - context of the subscription and resource group. + context of the subscription and resource group. Windows agent pool names + must be 6 characters or less. :type name: str """ @@ -1924,13 +2035,21 @@ def __init__(self, *, name: str, count: int=None, vm_size: str=None, os_disk_siz class ManagedClusterAPIServerAccessProfile(Model): """Access profile for managed cluster API server. - :param authorized_ip_ranges: Authorized IP Ranges to kubernetes API - server. + :param authorized_ip_ranges: The IP ranges authorized to access the + Kubernetes API server. 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). :type authorized_ip_ranges: list[str] :param enable_private_cluster: Whether to create the cluster as a private - cluster or not. + cluster or not. For more details, see [Creating a private AKS + cluster](https://docs.microsoft.com/azure/aks/private-clusters). :type enable_private_cluster: bool - :param private_dns_zone: Private dns zone mode for private cluster. + :param private_dns_zone: The private DNS zone mode for the cluster. 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'. :type private_dns_zone: str :param enable_private_cluster_public_fqdn: Whether to create additional public FQDN for private cluster or not. @@ -1955,8 +2074,10 @@ def __init__(self, *, authorized_ip_ranges=None, enable_private_cluster: bool=No class ManagedClusterAutoUpgradeProfile(Model): """Auto upgrade profile for a managed cluster. - :param upgrade_channel: upgrade channel for auto upgrade. Possible values - include: 'rapid', 'stable', 'patch', 'node-image', 'none' + :param upgrade_channel: The upgrade channel for auto upgrade. The default + is 'none'. For more information see [setting the AKS cluster auto-upgrade + channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). + Possible values include: 'rapid', 'stable', 'patch', 'node-image', 'none' :type upgrade_channel: str or ~azure.mgmt.containerservice.v2021_05_01.models.UpgradeChannel """ @@ -1971,13 +2092,13 @@ def __init__(self, *, upgrade_channel=None, **kwargs) -> None: class ManagedClusterHTTPProxyConfig(Model): - """Configurations for provisioning the cluster with HTTP proxy servers. + """Cluster HTTP proxy configuration. - :param http_proxy: HTTP proxy server endpoint to use. + :param http_proxy: The HTTP proxy server endpoint to use. :type http_proxy: str - :param https_proxy: HTTPS proxy server endpoint to use. + :param https_proxy: The HTTPS proxy server endpoint to use. :type https_proxy: str - :param no_proxy: Endpoints that should not go through proxy. + :param no_proxy: The endpoints that should not go through proxy. :type no_proxy: list[str] :param trusted_ca: Alternative CA cert to use for connecting to proxy servers. @@ -2011,18 +2132,16 @@ class ManagedClusterIdentity(Model): :ivar tenant_id: The tenant id of the system assigned identity which is used by master components. :vartype tenant_id: str - :param type: 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. Possible values include: - 'SystemAssigned', 'UserAssigned', 'None' + :param type: The type of identity used for the managed cluster. For more + information see [use managed identities in + AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). Possible + values include: 'SystemAssigned', 'UserAssigned', 'None' :type type: str or ~azure.mgmt.containerservice.v2021_05_01.models.ResourceIdentityType :param user_assigned_identities: 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: + managed cluster. This identity will be used in control plane. Only one + user assigned identity is allowed. The keys must be ARM resource IDs in + the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. :type user_assigned_identities: dict[str, ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterIdentityUserAssignedIdentitiesValue] @@ -2095,13 +2214,13 @@ class ManagedClusterLoadBalancerProfile(Model): cluster load balancer. :type effective_outbound_ips: list[~azure.mgmt.containerservice.v2021_05_01.models.ResourceReference] - :param allocated_outbound_ports: 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. - Default value: 0 . + :param allocated_outbound_ports: 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. Default value: 0 . :type allocated_outbound_ports: int :param idle_timeout_in_minutes: Desired outbound flow idle timeout in - minutes. Allowed values must be in the range of 4 to 120 (inclusive). The + minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. Default value: 30 . :type idle_timeout_in_minutes: int """ @@ -2133,9 +2252,9 @@ def __init__(self, *, managed_outbound_ips=None, outbound_ip_prefixes=None, outb class ManagedClusterLoadBalancerProfileManagedOutboundIPs(Model): """Desired managed outbound IPs for the cluster load balancer. - :param count: 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. . Default value: 1 . + :param count: 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. . Default value: 1 . :type count: int """ @@ -2187,21 +2306,21 @@ def __init__(self, *, public_ips=None, **kwargs) -> None: class ManagedClusterPodIdentity(Model): - """ManagedClusterPodIdentity. + """Details about the pod identity assigned to the Managed Cluster. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. - :param name: Required. Name of the pod identity. + :param name: Required. The name of the pod identity. :type name: str - :param namespace: Required. Namespace of the pod identity. + :param namespace: Required. The namespace of the pod identity. :type namespace: str - :param binding_selector: Binding selector to use for the + :param binding_selector: The binding selector to use for the AzureIdentityBinding resource. :type binding_selector: str - :param identity: Required. Information of the user assigned identity. + :param identity: Required. The user assigned identity details. :type identity: ~azure.mgmt.containerservice.v2021_05_01.models.UserAssignedIdentity :ivar provisioning_state: The current provisioning state of the pod @@ -2242,15 +2361,21 @@ def __init__(self, *, name: str, namespace: str, identity, binding_selector: str class ManagedClusterPodIdentityException(Model): - """ManagedClusterPodIdentityException. + """A pod identity exception, which allows pods with certain labels to access + the Azure Instance Metadata Service (IMDS) endpoint without being + intercepted by the node-managed identity (NMI) server. + + See [disable AAD Pod Identity for a specific + Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) + for more details. All required parameters must be populated in order to send to Azure. - :param name: Required. Name of the pod identity exception. + :param name: Required. The name of the pod identity exception. :type name: str - :param namespace: Required. Namespace of the pod identity exception. + :param namespace: Required. The namespace of the pod identity exception. :type namespace: str - :param pod_labels: Required. Pod labels to match. + :param pod_labels: Required. The pod labels to match. :type pod_labels: dict[str, str] """ @@ -2274,18 +2399,26 @@ def __init__(self, *, name: str, namespace: str, pod_labels, **kwargs) -> None: class ManagedClusterPodIdentityProfile(Model): - """ManagedClusterPodIdentityProfile. + """The pod identity profile of the Managed Cluster. + + See [use AAD pod + identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) + for more details on pod identity integration. :param enabled: Whether the pod identity addon is enabled. :type enabled: bool - :param allow_network_plugin_kubenet: Customer consent for enabling AAD pod - identity addon in cluster using Kubenet network plugin. + :param allow_network_plugin_kubenet: Whether pod identity is allowed to + run on clusters with Kubenet networking. 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. :type allow_network_plugin_kubenet: bool - :param user_assigned_identities: User assigned pod identity settings. + :param user_assigned_identities: The pod identities to use in the cluster. :type user_assigned_identities: list[~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterPodIdentity] - :param user_assigned_identity_exceptions: User assigned pod identity - exception settings. + :param user_assigned_identity_exceptions: The pod identity exceptions to + allow. :type user_assigned_identity_exceptions: list[~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterPodIdentityException] """ @@ -2326,14 +2459,13 @@ class ManagedClusterPoolUpgradeProfile(Model): All required parameters must be populated in order to send to Azure. - :param kubernetes_version: Required. Kubernetes version (major, minor, - patch). + :param kubernetes_version: Required. The Kubernetes version + (major.minor.patch). :type kubernetes_version: str - :param name: Pool name. + :param name: The Agent Pool name. :type name: str - :param os_type: Required. OsType to be used to specify os type. Choose - from Linux and Windows. Default to Linux. Possible values include: - 'Linux', 'Windows'. Default value: "Linux" . + :param os_type: Required. Possible values include: 'Linux', 'Windows'. + Default value: "Linux" . :type os_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.OSType :param upgrades: List of orchestrator types and versions available for @@ -2365,9 +2497,9 @@ def __init__(self, *, kubernetes_version: str, name: str=None, os_type="Linux", class ManagedClusterPoolUpgradeProfileUpgradesItem(Model): """ManagedClusterPoolUpgradeProfileUpgradesItem. - :param kubernetes_version: Kubernetes version (major, minor, patch). + :param kubernetes_version: The Kubernetes version (major.minor.patch). :type kubernetes_version: str - :param is_preview: Whether Kubernetes version is currently in preview. + :param is_preview: Whether the Kubernetes version is currently in preview. :type is_preview: bool """ @@ -2385,41 +2517,83 @@ def __init__(self, *, kubernetes_version: str=None, is_preview: bool=None, **kwa class ManagedClusterPropertiesAutoScalerProfile(Model): """Parameters to be applied to the cluster-autoscaler when enabled. - :param balance_similar_node_groups: + :param balance_similar_node_groups: Detects similar node pools and + balances the number of nodes between them. Valid values are 'true' and + 'false' :type balance_similar_node_groups: str - :param expander: Possible values include: 'least-waste', 'most-pods', + :param expander: The expander to use when scaling up. 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. Possible values include: 'least-waste', 'most-pods', 'priority', 'random' :type expander: str or ~azure.mgmt.containerservice.v2021_05_01.models.Expander - :param max_empty_bulk_delete: + :param max_empty_bulk_delete: The maximum number of empty nodes that can + be deleted at the same time. This must be a positive integer. The default + is 10. :type max_empty_bulk_delete: str - :param max_graceful_termination_sec: + :param max_graceful_termination_sec: The maximum number of seconds the + cluster autoscaler waits for pod termination when trying to scale down a + node. The default is 600. :type max_graceful_termination_sec: str - :param max_node_provision_time: + :param max_node_provision_time: The maximum time the autoscaler waits for + a node to be provisioned. The default is '15m'. Values must be an integer + followed by an 'm'. No unit of time other than minutes (m) is supported. :type max_node_provision_time: str - :param max_total_unready_percentage: + :param max_total_unready_percentage: The maximum percentage of unready + nodes in the cluster. After this percentage is exceeded, cluster + autoscaler halts operations. The default is 45. The maximum is 100 and the + minimum is 0. :type max_total_unready_percentage: str - :param new_pod_scale_up_delay: + :param new_pod_scale_up_delay: Ignore unscheduled pods before they're a + certain age. 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 new_pod_scale_up_delay: str - :param ok_total_unready_count: + :param ok_total_unready_count: The number of allowed unready nodes, + irrespective of max-total-unready-percentage. This must be an integer. The + default is 3. :type ok_total_unready_count: str - :param scan_interval: + :param scan_interval: How often cluster is reevaluated for scale up or + down. The default is '10'. Values must be an integer number of seconds. :type scan_interval: str - :param scale_down_delay_after_add: + :param scale_down_delay_after_add: How long after scale up that scale down + evaluation resumes. The default is '10m'. Values must be an integer + followed by an 'm'. No unit of time other than minutes (m) is supported. :type scale_down_delay_after_add: str - :param scale_down_delay_after_delete: + :param scale_down_delay_after_delete: How long after node deletion that + scale down evaluation resumes. 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 scale_down_delay_after_delete: str - :param scale_down_delay_after_failure: + :param scale_down_delay_after_failure: How long after scale down failure + that scale down evaluation resumes. The default is '3m'. Values must be an + integer followed by an 'm'. No unit of time other than minutes (m) is + supported. :type scale_down_delay_after_failure: str - :param scale_down_unneeded_time: + :param scale_down_unneeded_time: How long a node should be unneeded before + it is eligible for scale down. The default is '10m'. Values must be an + integer followed by an 'm'. No unit of time other than minutes (m) is + supported. :type scale_down_unneeded_time: str - :param scale_down_unready_time: + :param scale_down_unready_time: How long an unready node should be + unneeded before it is eligible for scale down. The default is '20m'. + Values must be an integer followed by an 'm'. No unit of time other than + minutes (m) is supported. :type scale_down_unready_time: str - :param scale_down_utilization_threshold: + :param scale_down_utilization_threshold: Node utilization level, defined + as sum of requested resources divided by capacity, below which a node can + be considered for scale down. The default is '0.5'. :type scale_down_utilization_threshold: str - :param skip_nodes_with_local_storage: + :param skip_nodes_with_local_storage: If cluster autoscaler will skip + deleting nodes with pods with local storage, for example, EmptyDir or + HostPath. The default is true. :type skip_nodes_with_local_storage: str - :param skip_nodes_with_system_pods: + :param skip_nodes_with_system_pods: If cluster autoscaler will skip + deleting nodes with pods from kube-system (except for DaemonSet or mirror + pods). The default is true. :type skip_nodes_with_system_pods: str """ @@ -2467,11 +2641,11 @@ def __init__(self, *, balance_similar_node_groups: str=None, expander=None, max_ class ManagedClusterPropertiesIdentityProfileValue(UserAssignedIdentity): """ManagedClusterPropertiesIdentityProfileValue. - :param resource_id: The resource id of the user assigned identity. + :param resource_id: The resource ID of the user assigned identity. :type resource_id: str - :param client_id: The client id of the user assigned identity. + :param client_id: The client ID of the user assigned identity. :type client_id: str - :param object_id: The object id of the user assigned identity. + :param object_id: The object ID of the user assigned identity. :type object_id: str """ @@ -2514,14 +2688,16 @@ def __init__(self, *, client_id: str, secret: str=None, **kwargs) -> None: class ManagedClusterSKU(Model): - """ManagedClusterSKU. + """The SKU of a Managed Cluster. - :param name: Name of a managed cluster SKU. Possible values include: + :param name: The name of a managed cluster SKU. Possible values include: 'Basic' :type name: str or ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterSKUName - :param tier: Tier of a managed cluster SKU. Possible values include: - 'Paid', 'Free' + :param tier: The tier of a managed cluster SKU. If not specified, the + default is 'Free'. See [uptime + SLA](https://docs.microsoft.com/azure/aks/uptime-sla) for more details. + Possible values include: 'Paid', 'Free' :type tier: str or ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterSKUTier """ @@ -2545,11 +2721,11 @@ class ManagedClusterUpgradeProfile(Model): All required parameters must be populated in order to send to Azure. - :ivar id: Id of upgrade profile. + :ivar id: The ID of the upgrade profile. :vartype id: str - :ivar name: Name of upgrade profile. + :ivar name: The name of the upgrade profile. :vartype name: str - :ivar type: Type of upgrade profile. + :ivar type: The type of the upgrade profile. :vartype type: str :param control_plane_profile: Required. The list of available upgrade versions for the control plane. @@ -2587,12 +2763,12 @@ def __init__(self, *, control_plane_profile, agent_pool_profiles, **kwargs) -> N class ManagedClusterWindowsProfile(Model): - """Profile for Windows VMs in the container service cluster. + """Profile for Windows VMs in the managed cluster. All required parameters must be populated in order to send to Azure. :param admin_username: Required. Specifies the name of the administrator - account.

**restriction:** Cannot end in "."

**Disallowed + 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", @@ -2609,12 +2785,15 @@ class ManagedClusterWindowsProfile(Model): "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" :type admin_password: str - :param license_type: The licenseType to use for Windows VMs. - Windows_Server is used to enable Azure Hybrid User Benefits for Windows - VMs. Possible values include: 'None', 'Windows_Server' + :param license_type: The license type to use for Windows VMs. See [Azure + Hybrid User + Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for + more details. Possible values include: 'None', 'Windows_Server' :type license_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.LicenseType - :param enable_csi_proxy: Whether to enable CSI proxy. + :param enable_csi_proxy: Whether to enable CSI proxy. For more details on + CSI proxy, see the [CSI proxy GitHub + repo](https://github.com/kubernetes-csi/csi-proxy). :type enable_csi_proxy: bool """ @@ -2638,16 +2817,16 @@ def __init__(self, *, admin_username: str, admin_password: str=None, license_typ class OperationValue(Model): - """Describes the properties of a Compute Operation value. + """Describes the properties of a Operation value. Variables are only populated by the server, and will be ignored when sending a request. - :ivar origin: The origin of the compute operation. + :ivar origin: The origin of the operation. :vartype origin: str - :ivar name: The name of the compute operation. + :ivar name: The name of the operation. :vartype name: str - :ivar operation: The display name of the compute operation. + :ivar operation: The display name of the operation. :vartype operation: str :ivar resource: The display name of the resource the operation applies to. :vartype resource: str @@ -2693,14 +2872,13 @@ class OSOptionProfile(Model): All required parameters must be populated in order to send to Azure. - :ivar id: Id of the OS option profile. + :ivar id: The ID of the OS option resource. :vartype id: str - :ivar name: Name of the OS option profile. + :ivar name: The name of the OS option resource. :vartype name: str - :ivar type: Type of the OS option profile. + :ivar type: The type of the OS option resource. :vartype type: str - :param os_option_property_list: Required. The list of OS option - properties. + :param os_option_property_list: Required. The list of OS options. :type os_option_property_list: list[~azure.mgmt.containerservice.v2021_05_01.models.OSOptionProperty] """ @@ -2732,9 +2910,9 @@ class OSOptionProperty(Model): All required parameters must be populated in order to send to Azure. - :param os_type: Required. OS type. + :param os_type: Required. The OS type. :type os_type: str - :param enable_fips_image: Required. Whether FIPS image is enabled. + :param enable_fips_image: Required. Whether the image is FIPS-enabled. :type enable_fips_image: bool """ @@ -2796,7 +2974,7 @@ def __init__(self, *, code=None, **kwargs) -> None: class PrivateEndpoint(Model): """Private endpoint which a connection belongs to. - :param id: The resource Id for private endpoint + :param id: The resource ID of the private endpoint :type id: str """ @@ -2895,7 +3073,7 @@ class PrivateLinkResource(Model): :type type: str :param group_id: The group ID of the resource. :type group_id: str - :param required_members: RequiredMembers of the resource + :param required_members: The RequiredMembers of the resource :type required_members: list[str] :ivar private_link_service_id: The private link service ID of the resource, this field is exposed only to NRP internally. @@ -2981,14 +3159,14 @@ def __init__(self, *, id: str=None, **kwargs) -> None: class RunCommandRequest(Model): - """run command request. + """A run command request. All required parameters must be populated in order to send to Azure. - :param command: Required. command to run. + :param command: Required. The command to run. :type command: str - :param context: base64 encoded zip file, contains files required by the - command + :param context: A base64 encoded zip file containing the files required by + the command. :type context: str :param cluster_token: AuthToken issued for AKS AAD Server App. :type cluster_token: str @@ -3017,19 +3195,20 @@ class RunCommandResult(Model): Variables are only populated by the server, and will be ignored when sending a request. - :ivar id: command id. + :ivar id: The command id. :vartype id: str :ivar provisioning_state: provisioning State :vartype provisioning_state: str - :ivar exit_code: exit code of the command + :ivar exit_code: The exit code of the command :vartype exit_code: int - :ivar started_at: time when the command started. + :ivar started_at: The time when the command started. :vartype started_at: datetime - :ivar finished_at: time when the command finished. + :ivar finished_at: The time when the command finished. :vartype finished_at: datetime - :ivar logs: command output. + :ivar logs: The command output. :vartype logs: str - :ivar reason: explain why provisioningState is set to failed (if so). + :ivar reason: An explanation of why provisioningState is set to failed (if + so). :vartype reason: str """ @@ -3210,7 +3389,7 @@ class SystemData(Model): Possible values include: 'User', 'Application', 'ManagedIdentity', 'Key' :type created_by_type: str or ~azure.mgmt.containerservice.v2021_05_01.models.CreatedByType - :param created_at: The timestamp of resource creation (UTC). + :param created_at: The UTC timestamp of resource creation. :type created_at: datetime :param last_modified_by: The identity that last modified the resource. :type last_modified_by: str @@ -3262,10 +3441,14 @@ def __init__(self, *, tags=None, **kwargs) -> None: class TimeInWeek(Model): """Time in a week. - :param day: A day in a week. Possible values include: 'Sunday', 'Monday', - 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday' + :param day: The day of the week. Possible values include: 'Sunday', + 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday' :type day: str or ~azure.mgmt.containerservice.v2021_05_01.models.WeekDay - :param hour_slots: hour slots in a day. + :param hour_slots: A list of hours in the day used to identify a time + range. 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. :type hour_slots: list[int] """ @@ -3281,7 +3464,9 @@ def __init__(self, *, day=None, hour_slots=None, **kwargs) -> None: class TimeSpan(Model): - """The time span with start and end properties. + """A time range. + + For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z. :param start: The start of a time span :type start: datetime diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_agent_pools_operations.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_agent_pools_operations.py index 9e9dbfdb01d5..a4e9fa010beb 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_agent_pools_operations.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_agent_pools_operations.py @@ -45,9 +45,6 @@ def list( self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): """Gets a list of agent pools in the specified managed cluster. - Gets a list of agent pools in the specified managed cluster. The - operation returns properties of each agent pool. - :param resource_group_name: The name of the resource group. :type resource_group_name: str :param resource_name: The name of the managed cluster resource. @@ -118,10 +115,7 @@ def internal_paging(next_link=None): def get( self, resource_group_name, resource_name, agent_pool_name, custom_headers=None, raw=False, **operation_config): - """Gets the agent pool. - - Gets the details of the agent pool by managed cluster and resource - group. + """Gets the specified managed cluster agent pool. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -238,9 +232,7 @@ def _create_or_update_initial( def create_or_update( self, resource_group_name, resource_name, agent_pool_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): - """Creates or updates an agent pool. - - Creates or updates an agent pool in the specified managed cluster. + """Creates or updates an agent pool in the specified managed cluster. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -248,8 +240,7 @@ def create_or_update( :type resource_name: str :param agent_pool_name: The name of the agent pool. :type agent_pool_name: str - :param parameters: Parameters supplied to the Create or Update an - agent pool operation. + :param parameters: The agent pool to create or update. :type parameters: ~azure.mgmt.containerservice.v2021_05_01.models.AgentPool :param dict custom_headers: headers that will be added to the request @@ -334,9 +325,7 @@ def _delete_initial( def delete( self, resource_group_name, resource_name, agent_pool_name, custom_headers=None, raw=False, polling=True, **operation_config): - """Deletes an agent pool. - - Deletes the agent pool in the specified managed cluster. + """Deletes an agent pool in the specified managed cluster. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -380,10 +369,7 @@ def get_long_running_output(response): def get_upgrade_profile( self, resource_group_name, resource_name, agent_pool_name, custom_headers=None, raw=False, **operation_config): - """Gets upgrade profile for an agent pool. - - Gets the details of the upgrade profile for an agent pool with a - specified resource group and managed cluster name. + """Gets the upgrade profile for an agent pool. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -448,9 +434,12 @@ def get_upgrade_profile( def get_available_agent_pool_versions( self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): - """Gets a list of supported versions for the specified agent pool. + """Gets a list of supported Kubernetes versions for the specified agent + pool. - Gets a list of supported versions for the specified agent pool. + See [supported Kubernetes + versions](https://docs.microsoft.com/azure/aks/supported-kubernetes-versions) + for more details about the version lifecycle. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -559,9 +548,12 @@ def _upgrade_node_image_version_initial( def upgrade_node_image_version( self, resource_group_name, resource_name, agent_pool_name, custom_headers=None, raw=False, polling=True, **operation_config): - """Upgrade node image version of an agent pool to the latest. + """Upgrades the node image version of an agent pool to the latest. - Upgrade node image version of an agent pool to the latest. + Upgrading the node image version of an agent pool applies the newest OS + and runtime updates to the nodes. AKS provides one new image per week + with the latest updates. For more details on node image versions, see: + https://docs.microsoft.com/azure/aks/node-image-upgrade. :param resource_group_name: The name of the resource group. :type resource_group_name: str diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_maintenance_configurations_operations.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_maintenance_configurations_operations.py index 9a2f30f55082..c9348ac17356 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_maintenance_configurations_operations.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_maintenance_configurations_operations.py @@ -46,10 +46,6 @@ def list_by_managed_cluster( """Gets a list of maintenance configurations in the specified managed cluster. - Gets a list of maintenance configurations in the specified managed - cluster. The operation returns properties of each maintenance - configuration. - :param resource_group_name: The name of the resource group. :type resource_group_name: str :param resource_name: The name of the managed cluster resource. @@ -120,10 +116,7 @@ def internal_paging(next_link=None): def get( self, resource_group_name, resource_name, config_name, custom_headers=None, raw=False, **operation_config): - """Gets the maintenance configuration. - - Gets the details of maintenance configurations by managed cluster and - resource group. + """Gets the specified maintenance configuration of a managed cluster. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -241,9 +234,7 @@ def _create_or_update_initial( def create_or_update( self, resource_group_name, resource_name, config_name, time_in_week=None, not_allowed_time=None, custom_headers=None, raw=False, polling=True, **operation_config): - """Creates or updates a maintenance configurations. - - Creates or updates a maintenance configuration in the specified managed + """Creates or updates a maintenance configuration in the specified managed cluster. :param resource_group_name: The name of the resource group. @@ -252,7 +243,10 @@ def create_or_update( :type resource_name: str :param config_name: The name of the maintenance configuration. :type config_name: str - :param time_in_week: Weekday time slots allowed to upgrade. + :param time_in_week: Time slots during the week when planned + maintenance is allowed to proceed. If two array entries specify the + same day of the week, the applied configuration is the union of times + in both entries. :type time_in_week: list[~azure.mgmt.containerservice.v2021_05_01.models.TimeInWeek] :param not_allowed_time: Time slots on which upgrade is not allowed. @@ -344,8 +338,6 @@ def delete( self, resource_group_name, resource_name, config_name, custom_headers=None, raw=False, polling=True, **operation_config): """Deletes a maintenance configuration. - Deletes the maintenance configuration in the specified managed cluster. - :param resource_group_name: The name of the resource group. :type resource_group_name: str :param resource_name: The name of the managed cluster resource. diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_managed_clusters_operations.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_managed_clusters_operations.py index 8fe243e5cf50..244fab8c9d81 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_managed_clusters_operations.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_managed_clusters_operations.py @@ -45,12 +45,10 @@ def get_os_options( self, location, resource_type=None, custom_headers=None, raw=False, **operation_config): """Gets supported OS options in the specified subscription. - Gets supported OS options in the specified subscription. - :param location: The name of a supported Azure region. :type location: str - :param resource_type: resource type for which the OS options needs to - be returned + :param resource_type: The resource type for which the OS options needs + to be returned :type resource_type: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the @@ -111,9 +109,6 @@ def list( self, custom_headers=None, raw=False, **operation_config): """Gets a list of managed clusters in the specified subscription. - Gets a list of managed clusters in the specified subscription. The - operation returns properties of each managed cluster. - :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the deserialized response @@ -181,9 +176,6 @@ def list_by_resource_group( """Lists managed clusters in the specified subscription and resource group. - Lists managed clusters in the specified subscription and resource - group. The operation returns properties of each managed cluster. - :param resource_group_name: The name of the resource group. :type resource_group_name: str :param dict custom_headers: headers that will be added to the request @@ -251,10 +243,7 @@ def internal_paging(next_link=None): def get_upgrade_profile( self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): - """Gets upgrade profile for a managed cluster. - - Gets the details of the upgrade profile for a managed cluster with a - specified resource group and name. + """Gets the upgrade profile of a managed cluster. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -318,12 +307,10 @@ def get_access_profile( self, resource_group_name, resource_name, role_name, custom_headers=None, raw=False, **operation_config): """Gets an access profile of a managed cluster. - Gets the accessProfile for the specified role name of the managed - cluster with a specified resource group and name. **WARNING**: This API - will be deprecated. Instead use - [ListClusterUserCredentials](https://docs.microsoft.com/en-us/rest/api/aks/managedclusters/listclusterusercredentials) + **WARNING**: This API will be deprecated. Instead use + [ListClusterUserCredentials](https://docs.microsoft.com/rest/api/aks/managedclusters/listclusterusercredentials) or - [ListClusterAdminCredentials](https://docs.microsoft.com/en-us/rest/api/aks/managedclusters/listclusteradmincredentials) + [ListClusterAdminCredentials](https://docs.microsoft.com/rest/api/aks/managedclusters/listclusteradmincredentials) . :param resource_group_name: The name of the resource group. @@ -390,10 +377,7 @@ def get_access_profile( def list_cluster_admin_credentials( self, resource_group_name, resource_name, server_fqdn=None, custom_headers=None, raw=False, **operation_config): - """Gets cluster admin credential of a managed cluster. - - Gets cluster admin credential of the managed cluster with a specified - resource group and name. + """Lists the admin credentials of a managed cluster. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -459,10 +443,7 @@ def list_cluster_admin_credentials( def list_cluster_user_credentials( self, resource_group_name, resource_name, server_fqdn=None, custom_headers=None, raw=False, **operation_config): - """Gets cluster user credential of a managed cluster. - - Gets cluster user credential of the managed cluster with a specified - resource group and name. + """Lists the user credentials of a managed cluster. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -528,10 +509,7 @@ def list_cluster_user_credentials( def list_cluster_monitoring_user_credentials( self, resource_group_name, resource_name, server_fqdn=None, custom_headers=None, raw=False, **operation_config): - """Gets cluster monitoring user credential of a managed cluster. - - Gets cluster monitoring user credential of the managed cluster with a - specified resource group and name. + """Lists the cluster monitoring user credentials of a managed cluster. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -599,9 +577,6 @@ def get( self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): """Gets a managed cluster. - Gets the details of the managed cluster with a specified resource group - and name. - :param resource_group_name: The name of the resource group. :type resource_group_name: str :param resource_name: The name of the managed cluster resource. @@ -715,15 +690,11 @@ def create_or_update( self, resource_group_name, resource_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): """Creates or updates a managed cluster. - Creates or updates a managed cluster with the specified configuration - for agents and Kubernetes version. - :param resource_group_name: The name of the resource group. :type resource_group_name: str :param resource_name: The name of the managed cluster resource. :type resource_name: str - :param parameters: Parameters supplied to the Create or Update a - Managed Cluster operation. + :param parameters: The managed cluster to create or update. :type parameters: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedCluster :param dict custom_headers: headers that will be added to the request @@ -822,8 +793,6 @@ def update_tags( self, resource_group_name, resource_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): """Updates tags on a managed cluster. - Updates a managed cluster with the specified tags. - :param resource_group_name: The name of the resource group. :type resource_group_name: str :param resource_name: The name of the managed cluster resource. @@ -912,8 +881,6 @@ def delete( self, resource_group_name, resource_name, custom_headers=None, raw=False, polling=True, **operation_config): """Deletes a managed cluster. - Deletes the managed cluster with a specified resource group and name. - :param resource_group_name: The name of the resource group. :type resource_group_name: str :param resource_name: The name of the managed cluster resource. @@ -997,9 +964,10 @@ def _reset_service_principal_profile_initial( def reset_service_principal_profile( self, resource_group_name, resource_name, client_id, secret=None, custom_headers=None, raw=False, polling=True, **operation_config): - """Reset Service Principal Profile of a managed cluster. + """Reset the Service Principal Profile of a managed cluster. - Update the service principal Profile for a managed cluster. + This action cannot be performed on a cluster that is not using a + service principal. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -1089,16 +1057,13 @@ def _reset_aad_profile_initial( def reset_aad_profile( self, resource_group_name, resource_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): - """Reset AAD Profile of a managed cluster. - - Update the AAD Profile for a managed cluster. + """Reset the AAD Profile of a managed cluster. :param resource_group_name: The name of the resource group. :type resource_group_name: str :param resource_name: The name of the managed cluster resource. :type resource_name: str - :param parameters: Parameters supplied to the Reset AAD Profile - operation for a Managed Cluster. + :param parameters: The AAD profile to set on the Managed Cluster :type parameters: ~azure.mgmt.containerservice.v2021_05_01.models.ManagedClusterAADProfile :param dict custom_headers: headers that will be added to the request @@ -1175,9 +1140,11 @@ def _rotate_cluster_certificates_initial( def rotate_cluster_certificates( self, resource_group_name, resource_name, custom_headers=None, raw=False, polling=True, **operation_config): - """Rotate certificates of a managed cluster. + """Rotates the certificates of a managed cluster. - Rotate certificates of a managed cluster. + See [Certificate + rotation](https://docs.microsoft.com/azure/aks/certificate-rotation) + for more details about rotating managed cluster certificates. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -1256,9 +1223,14 @@ def _stop_initial( def stop( self, resource_group_name, resource_name, custom_headers=None, raw=False, polling=True, **operation_config): - """Stop Managed Cluster. + """Stops a Managed Cluster. - Stops a Running Managed Cluster. + This can only be performed on Azure Virtual Machine Scale set backed + clusters. Stopping a cluster stops the control plane and agent nodes + entirely, while maintaining all object and cluster state. A cluster + does not accrue charges while it is stopped. See [stopping a + cluster](https://docs.microsoft.com/azure/aks/start-stop-cluster) for + more details about stopping a cluster. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -1337,9 +1309,11 @@ def _start_initial( def start( self, resource_group_name, resource_name, custom_headers=None, raw=False, polling=True, **operation_config): - """Start Managed Cluster. + """Starts a previously stopped Managed Cluster. - Starts a Stopped Managed Cluster. + See [starting a + cluster](https://docs.microsoft.com/azure/aks/start-stop-cluster) for + more details about starting a cluster. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -1430,17 +1404,17 @@ def _run_command_initial( def run_command( self, resource_group_name, resource_name, request_payload, custom_headers=None, raw=False, polling=True, **operation_config): - """Run Command against Managed Kubernetes Service. + """Submits a command to run against the Managed Cluster. - Submit a command to run against managed kubernetes service, it will - create a pod to run the command. + AKS will create a pod to run the command. This is primarily useful for + private clusters. For more information see [AKS Run + Command](https://docs.microsoft.com/azure/aks/private-clusters#aks-run-command-preview). :param resource_group_name: The name of the resource group. :type resource_group_name: str :param resource_name: The name of the managed cluster resource. :type resource_name: str - :param request_payload: Parameters supplied to the RunCommand - operation. + :param request_payload: The run command request :type request_payload: ~azure.mgmt.containerservice.v2021_05_01.models.RunCommandRequest :param dict custom_headers: headers that will be added to the request @@ -1485,15 +1459,14 @@ def get_long_running_output(response): def get_command_result( self, resource_group_name, resource_name, command_id, custom_headers=None, raw=False, **operation_config): - """Get command result. - - Get command result from previous runCommand invoke. + """Gets the results of a command which has been run on the Managed + Cluster. :param resource_group_name: The name of the resource group. :type resource_group_name: str :param resource_name: The name of the managed cluster resource. :type resource_name: str - :param command_id: Id of the command request. + :param command_id: Id of the command. :type command_id: str :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_operations.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_operations.py index a0767bb9e9c5..184f647c0cfb 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_operations.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_operations.py @@ -41,7 +41,7 @@ def __init__(self, client, config, serializer, deserializer): def list( self, custom_headers=None, raw=False, **operation_config): - """Gets a list of compute operations. + """Gets a list of operations. :param dict custom_headers: headers that will be added to the request :param bool raw: returns the direct response alongside the diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_private_endpoint_connections_operations.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_private_endpoint_connections_operations.py index 45f43e5e70f5..5a8374c25d7a 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_private_endpoint_connections_operations.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_private_endpoint_connections_operations.py @@ -46,9 +46,8 @@ def list( """Gets a list of private endpoint connections in the specified managed cluster. - Gets a list of private endpoint connections in the specified managed - cluster. The operation returns properties of each private endpoint - connection. + To learn more about private clusters, see: + https://docs.microsoft.com/azure/aks/private-clusters. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -111,10 +110,10 @@ def list( def get( self, resource_group_name, resource_name, private_endpoint_connection_name, custom_headers=None, raw=False, **operation_config): - """Gets the private endpoint connection. + """Gets the specified private endpoint connection. - Gets the details of the private endpoint connection by managed cluster - and resource group. + To learn more about private clusters, see: + https://docs.microsoft.com/azure/aks/private-clusters. :param resource_group_name: The name of the resource group. :type resource_group_name: str @@ -182,8 +181,6 @@ def update( self, resource_group_name, resource_name, private_endpoint_connection_name, private_link_service_connection_state, private_endpoint=None, custom_headers=None, raw=False, **operation_config): """Updates a private endpoint connection. - Updates a private endpoint connection in the specified managed cluster. - :param resource_group_name: The name of the resource group. :type resource_group_name: str :param resource_name: The name of the managed cluster resource. @@ -303,9 +300,6 @@ def delete( self, resource_group_name, resource_name, private_endpoint_connection_name, custom_headers=None, raw=False, polling=True, **operation_config): """Deletes a private endpoint connection. - Deletes the private endpoint connection in the specified managed - cluster. - :param resource_group_name: The name of the resource group. :type resource_group_name: str :param resource_name: The name of the managed cluster resource. diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_private_link_resources_operations.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_private_link_resources_operations.py index e4aeb6ac4bfb..6889c38c55cf 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_private_link_resources_operations.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_private_link_resources_operations.py @@ -43,8 +43,8 @@ def list( self, resource_group_name, resource_name, custom_headers=None, raw=False, **operation_config): """Gets a list of private link resources in the specified managed cluster. - Gets a list of private link resources in the specified managed cluster. - The operation returns properties of each private link resource. + To learn more about private clusters, see: + https://docs.microsoft.com/azure/aks/private-clusters. :param resource_group_name: The name of the resource group. :type resource_group_name: str diff --git a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_resolve_private_link_service_id_operations.py b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_resolve_private_link_service_id_operations.py index ee7f4649e33e..f73631b44273 100644 --- a/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_resolve_private_link_service_id_operations.py +++ b/sdk/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2021_05_01/operations/_resolve_private_link_service_id_operations.py @@ -43,14 +43,12 @@ def post( self, resource_group_name, resource_name, parameters, custom_headers=None, raw=False, **operation_config): """Gets the private link service ID for the specified managed cluster. - Gets the private link service ID the specified managed cluster. - :param resource_group_name: The name of the resource group. :type resource_group_name: str :param resource_name: The name of the managed cluster resource. :type resource_name: str - :param parameters: Parameters (name, groupId) supplied in order to - resolve a private link service ID. + :param parameters: Parameters required in order to resolve a private + link service ID. :type parameters: ~azure.mgmt.containerservice.v2021_05_01.models.PrivateLinkResource :param dict custom_headers: headers that will be added to the request