你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
New-AzAksNodePool
在指定的群集中创建新的节点池。
语法
New-AzAksNodePool
-ResourceGroupName <String>
-ClusterName <String>
-Name <String>
[-Count <Int32>]
[-OsDiskSize <Int32>]
[-VmSize <String>]
[-VnetSubnetID <String>]
[-MaxPodCount <Int32>]
[-OsType <String>]
[-OsSKU <String>]
[-EnableNodePublicIp]
[-NodePublicIPPrefixID <String>]
[-ScaleSetPriority <String>]
[-ScaleSetEvictionPolicy <String>]
[-VmSetType <String>]
[-AvailabilityZone <String[]>]
[-Force]
[-EnableEncryptionAtHost]
[-EnableUltraSSD]
[-LinuxOSConfig <LinuxOSConfig>]
[-KubeletConfig <KubeletConfig>]
[-MaxSurge <String>]
[-PPG <String>]
[-SpotMaxPrice <Double>]
[-EnableFIPS]
[-GpuInstanceProfile <String>]
[-HostGroupID <String>]
[-PodSubnetID <String>]
[-KubernetesVersion <String>]
[-MinCount <Int32>]
[-MaxCount <Int32>]
[-EnableAutoScaling]
[-Mode <String>]
[-NodeLabel <Hashtable>]
[-Tag <Hashtable>]
[-NodeTaint <String[]>]
[-AksCustomHeader <Hashtable>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[-SubscriptionId <String>]
[<CommonParameters>]
New-AzAksNodePool
-Name <String>
-ClusterObject <PSKubernetesCluster>
[-Count <Int32>]
[-OsDiskSize <Int32>]
[-VmSize <String>]
[-VnetSubnetID <String>]
[-MaxPodCount <Int32>]
[-OsType <String>]
[-OsSKU <String>]
[-EnableNodePublicIp]
[-NodePublicIPPrefixID <String>]
[-ScaleSetPriority <String>]
[-ScaleSetEvictionPolicy <String>]
[-VmSetType <String>]
[-AvailabilityZone <String[]>]
[-Force]
[-EnableEncryptionAtHost]
[-EnableUltraSSD]
[-LinuxOSConfig <LinuxOSConfig>]
[-KubeletConfig <KubeletConfig>]
[-MaxSurge <String>]
[-PPG <String>]
[-SpotMaxPrice <Double>]
[-EnableFIPS]
[-GpuInstanceProfile <String>]
[-HostGroupID <String>]
[-PodSubnetID <String>]
[-KubernetesVersion <String>]
[-MinCount <Int32>]
[-MaxCount <Int32>]
[-EnableAutoScaling]
[-Mode <String>]
[-NodeLabel <Hashtable>]
[-Tag <Hashtable>]
[-NodeTaint <String[]>]
[-AksCustomHeader <Hashtable>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[-SubscriptionId <String>]
[<CommonParameters>]
说明
在指定的群集中创建新的节点池。
示例
示例 1:使用默认参数创建节点池
New-AzAksNodePool -ResourceGroupName myResouceGroup -ClusterName myCluster -Name mydefault
示例 2:在 AKS 上创建 Windows Server 容器
$cred = ConvertTo-SecureString -String "****" -AsPlainText -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
示例 3:使用 LinuxOSConfig 和 KubeletConfig 创建节点池。
创建 AKS 节点池时,可以指定 kubelet 和 OS 配置。 类型LinuxOSConfig
KubeletConfig
以及必须分别和Microsoft.Azure.Management.ContainerService.Models.LinuxOSConfig
Microsoft.Azure.Management.ContainerService.Models.KubeletConfig
分别。
$linuxOsConfigJsonStr = @'
{
"transparentHugePageEnabled": "madvise",
"transparentHugePageDefrag": "defer+madvise",
"swapFileSizeMB": 1500,
"sysctls": {
"netCoreSomaxconn": 163849,
"netIpv4TcpTwReuse": true,
"netIpv4IpLocalPortRange": "32000 60000"
}
}
'@
$linuxOsConfig = [Microsoft.Azure.Management.ContainerService.Models.LinuxOSConfig] ($linuxOsConfigJsonStr | ConvertFrom-Json)
$kubeletConfigStr = @'
{
"failSwapOn": false
}
'@
$kubeletConfig = [Microsoft.Azure.Management.ContainerService.Models.KubeletConfig] ($kubeletConfigStr | ConvertFrom-Json)
New-AzAksNodePool -ResourceGroupName myResourceGroup -ClusterName myAKSCluster -Name mypool -LinuxOSConfig $linuxOsConfig -KubeletConfig $kubeletConfig
参数
-AksCustomHeader
Aks 自定义标头
类型: | Hashtable |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-AvailabilityZone
节点的可用性区域。 必须使用 VirtualMachineScaleSets AgentPoolType。
类型: | String[] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ClusterName
托管群集资源的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-ClusterObject
指定要在其中创建节点池的群集对象。
类型: | PSKubernetesCluster |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-Confirm
提示你在运行 cmdlet 之前进行确认。
类型: | SwitchParameter |
别名: | cf |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Count
节点池的默认节点数。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DefaultProfile
用于与 Azure 通信的凭据、帐户、租户和订阅。
类型: | IAzureContextContainer |
别名: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-EnableAutoScaling
是否启用自动缩放程序
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-EnableEncryptionAtHost
是否启用基于主机的 OS 和数据驱动器
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-EnableFIPS
是否使用已启用 FIPS 的 OS
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-EnableNodePublicIp
是否为节点启用公共 IP。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-EnableUltraSSD
是否启用 UltraSSD
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Force
即使节点池已存在,也创建节点池
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-GpuInstanceProfile
用于为支持的 GPU VM SKU 指定 GPU MIG 实例配置文件的 GpuInstanceProfile。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-HostGroupID
专用主机组的完全限定资源 ID,用于预配虚拟机,仅在创建方案中使用,不允许在设置后更改。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-KubeletConfig
代理池节点上的 Kubelet 配置。
类型: | KubeletConfig |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-KubernetesVersion
用于创建群集的 Kubernetes 版本。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-LinuxOSConfig
Linux 代理节点的 OS 配置。
类型: | LinuxOSConfig |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MaxCount
自动缩放的最大节点数
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MaxPodCount
可在节点上运行的 Pod 的最大数目。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MaxSurge
升级期间激增的最大节点数或百分比。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-MinCount
用于自动缩放的最小节点数。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Mode
池模式
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Name
节点池的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-NodeLabel
用于生成 Kubernetes 网络的节点池标签。
类型: | Hashtable |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-NodePublicIPPrefixID
节点池的公共 IP 前缀的资源 ID。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-NodeTaint
节点池创建和缩放期间添加到新节点的节点污点
类型: | String[] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-OsDiskSize
节点池的默认节点数。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-OsSKU
用于指定 OS SKU 的 OsSKU。 如果 OSType 为 Linux,则默认值为 Ubuntu。 当 Kubernetes <= 1.24 或 Windows2022(如果 OSType 为 Windows)时 >,默认值为 Windows2019。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-OsType
用于指定 os 类型的 OsType。 从 Linux 和 Windows 中进行选择。 默认为 Linux。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-PodSubnetID
启动时 Pod 将加入的子网的 ID。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-PPG
邻近放置组的 ID。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ResourceGroupName
资源组的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-ScaleSetEvictionPolicy
用于为低优先级虚拟机规模集指定逐出策略的 ScaleSetEvictionPolicy。 默认为 Delete。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ScaleSetPriority
用于指定虚拟机规模集优先级的 ScaleSetPriority。 默认为常规。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-SpotMaxPrice
你愿意支付现成实例的最大价格(以美元为单位)。 可能的值是大于零或 -1 的任何小数值,指示默认价格是按需的。
类型: | Nullable<T>[Double] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-SubscriptionId
订阅 ID。 默认情况下,cmdlet 在当前上下文中设置的订阅中执行。 如果用户指定另一个订阅,则当前 cmdlet 在用户指定的订阅中执行。 重写订阅仅在当前 cmdlet 的生命周期内生效。 它不会更改上下文中的订阅,并且不会影响后续 cmdlet。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-Tag
要保留在代理池虚拟机规模集上的标记。
类型: | Hashtable |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-VmSetType
表示节点池的类型。 可能的值包括:“VirtualMachineScaleSets”、“AvailabilitySet”
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-VmSize
虚拟机的大小。 默认值为Standard_D2_v2。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-VnetSubnetID
VNet SubnetID 指定 VNet 的子网标识符。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-WhatIf
显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。
类型: | SwitchParameter |
别名: | wi |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |