New-AzAksCluster
Create a new managed Kubernetes cluster.
The cmdlet may call below Microsoft Graph API according to input parameters:
- POST /servicePrincipals
Syntax
New-AzAksCluster
[-NodeVmSetType <String>]
[-NodeVnetSubnetID <String>]
[-NodeMaxPodCount <Int32>]
[-NodeSetPriority <String>]
[-NodePoolMode <String>]
[-NodeScaleSetEvictionPolicy <String>]
[-AddOnNameToBeEnabled <String[]>]
[-WorkspaceResourceId <String>]
[-SubnetName <String>]
[-EnableRbac]
[-WindowsProfileAdminUserName <String>]
[-WindowsProfileAdminUserPassword <SecureString>]
[-NetworkPlugin <String>]
[-NetworkPolicy <String>]
[-PodCidr <String>]
[-ServiceCidr <String>]
[-DnsServiceIP <String>]
[-DockerBridgeCidr <String>]
[-NodePoolLabel <Hashtable>]
[-AksCustomHeader <Hashtable>]
[-LoadBalancerSku <String>]
[-Force]
[-GenerateSshKey]
[-EnableNodePublicIp]
[-NodePublicIPPrefixID <String>]
[-ResourceGroupName] <String>
[-Name] <String>
[[-ServicePrincipalIdAndSecret] <PSCredential>]
[-Location <String>]
[-LinuxProfileAdminUserName <String>]
[-DnsNamePrefix <String>]
[-KubernetesVersion <String>]
[-NodeName <String>]
[-NodeMinCount <Int32>]
[-NodeMaxCount <Int32>]
[-EnableNodeAutoScaling]
[-NodeCount <Int32>]
[-NodeOsDiskSize <Int32>]
[-NodeVmSize <String>]
[-SshKeyValue <String>]
[-AcrNameToAttach <String>]
[-AsJob]
[-Tag <Hashtable>]
[-LoadBalancerAllocatedOutboundPort <Int32>]
[-LoadBalancerManagedOutboundIpCount <Int32>]
[-LoadBalancerOutboundIp <String[]>]
[-LoadBalancerOutboundIpPrefix <String[]>]
[-LoadBalancerIdleTimeoutInMinute <Int32>]
[-ApiServerAccessAuthorizedIpRange <String[]>]
[-EnableApiServerAccessPrivateCluster]
[-ApiServerAccessPrivateDnsZone <String>]
[-EnableApiServerAccessPrivateClusterPublicFQDN]
[-FqdnSubdomain <String>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[-SubscriptionId <String>]
[<CommonParameters>]
Description
Create a new Azure Kubernetes Service(AKS) cluster.
Examples
New an AKS with default params.
New-AzAksCluster -ResourceGroupName myResourceGroup -Name myCluster
Create Windows Server container on an AKS.
To create Windows Server container on an AKS, you must specify at least four following parameters when creating the AKS, and the value for NetworkPlugin and NodeVmSetType must be azure and VirtualMachineScaleSets respectively.
-WindowsProfileAdminUserName *** -WindowsProfileAdminUserPassword *** -NetworkPlugin azure -NodeVmSetType VirtualMachineScaleSets
$cred = ConvertTo-SecureString -AsPlainText "Password!!123" -Force
New-AzAksCluster -ResourceGroupName myResourceGroup -Name myCluster -WindowsProfileAdminUserName azureuser -WindowsProfileAdminUserPassword $cred -NetworkPlugin azure -NodeVmSetType VirtualMachineScaleSets
New-AzAksNodePool -ResourceGroupName myResourceGroup -ClusterName myCluster -Name win1 -OsType Windows -VmSetType VirtualMachineScaleSets
Parameters
Grant the 'acrpull' role of the specified ACR to AKS Service Principal, e.g. myacr
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Add-on names to be enabled when cluster is created.
| Type: | String[] |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Aks custom headers used for building Kubernetes network.
| Type: | Hashtable |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
The IP ranges authorized to access the Kubernetes API server.
| Type: | String[] |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
The private DNS zone mode for the cluster.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Run cmdlet in the background
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Prompts you for confirmation before running the cmdlet.
| Type: | SwitchParameter |
| Aliases: | cf |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
The credentials, account, tenant, and subscription used for communication with Azure.
| Type: | IAzureContextContainer |
| Aliases: | AzContext, AzureRmContext, AzureCredential |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
The DNS name prefix for the cluster. The length must be <= 9 if users plan to add windows container.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
DNS service IP used for building Kubernetes network.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Docker bridge cidr used for building Kubernetes network.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Whether to create the cluster as a private cluster or not.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Whether to create additional public FQDN for private cluster or not.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Whether to enable auto-scaler
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Whether to enable public IP for nodes.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Whether to enable Kubernetes Role-Based Access
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Create cluster even if it already exists
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
The FQDN subdomain of the private cluster with custom private dns zone.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Generate ssh key file to {HOME}/.ssh/id_rsa.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
The version of Kubernetes to use for creating the cluster.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
User name for the Linux Virtual Machines.
| Type: | String |
| Aliases: | AdminUserName |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
The desired number of allocated SNAT ports per VM.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Desired outbound flow idle timeout in minutes.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Desired managed outbound IPs count for the cluster load balancer.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Desired outbound IP resources for the cluster load balancer.
| Type: | String[] |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Desired outbound IP Prefix resources for the cluster load balancer.
| Type: | String[] |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
The load balancer sku for the managed cluster.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Azure location for the cluster. Defaults to the location of the resource group.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Kubernetes managed cluster Name.
| Type: | String |
| Position: | 1 |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Network plugin used for building Kubernetes network.
| Type: | String |
| Position: | Named |
| Default value: | azure |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Network policy used for building Kubernetes network.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
The default number of nodes for the node pools.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Maximum number of nodes for auto-scaling
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Maximum number of pods that can run on node.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Minimum number of nodes for auto-scaling.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Unique name of the agent pool profile in the context of the subscription and resource group.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Size in GB of the OS disk for each node in the node pool. Minimum 30 GB.
| Type: | Int32 |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Node pool labels used for building Kubernetes network.
| Type: | Hashtable |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
NodePoolMode represents mode of an node pool.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
The resource Id of public IP prefix for node pool.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
ScaleSetEvictionPolicy to be used to specify eviction policy for low priority virtual machine scale set. Default to Delete.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
ScaleSetPriority to be used to specify virtual machine scale set priority. Default to regular.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
AgentPoolType represents types of an agent pool. Possible values include: 'VirtualMachineScaleSets', 'AvailabilitySet'
| Type: | String |
| Position: | Named |
| Default value: | VirtualMachineScaleSets |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
The size of the Virtual Machine. Default value is Standard_D2_v2.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
VNet SubnetID specifies the VNet's subnet identifier.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Pod cidr used for building Kubernetes network.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Resource Group Name.
| Type: | String |
| Position: | 0 |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Service cidr used for building Kubernetes network.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
The client id and client secret associated with the AAD application / service principal.
| Type: | PSCredential |
| Position: | 2 |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
SSH key file value or key file path. Defaults to {HOME}/.ssh/id_rsa.pub.
| Type: | String |
| Aliases: | SshKeyPath |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Subnet name of VirtualNode addon.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
The ID of the subscription. By default, cmdlets are executed in the subscription that is set in the current context. If the user specifies another subscription, the current cmdlet is executed in the subscription specified by the user. Overriding subscriptions only take effect during the lifecycle of the current cmdlet. It does not change the subscription in the context, and does not affect subsequent cmdlets.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Tags to be applied to the resource
| Type: | Hashtable |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Shows what would happen if the cmdlet runs. The cmdlet is not run.
| Type: | SwitchParameter |
| Aliases: | wi |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
The administrator username to use for Windows VMs.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
The administrator password to use for Windows VMs, its length must be at least 12, containing at least one lower case character, i.e. [a-z], one [A-Z] and one special character [!@#$%^&*()].
| Type: | SecureString |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Resource Id of the workspace of Monitoring addon.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Inputs
None
Outputs
الملاحظات
إرسال الملاحظات وعرضها المتعلقة بـ