你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

New-AzAksNodePool

在指定的群集中创建新的节点池。

语法

defaultParameterSet

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>]

ParentObjectParameterSet

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 myResourceGroup -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 配置。 类型LinuxOSConfigKubeletConfig以及必须分别和Microsoft.Azure.Management.ContainerService.Models.LinuxOSConfigMicrosoft.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
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-AvailabilityZone

节点的可用性区域。 必须使用 VirtualMachineScaleSets AgentPoolType。

参数属性

类型:

String[]

默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ClusterName

托管集群资源的名称。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

defaultParameterSet
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ClusterObject

指定要在其中创建节点池的群集对象。

参数属性

类型:PSKubernetesCluster
默认值:None
支持通配符:False
不显示:False

参数集

ParentObjectParameterSet
Position:Named
必需:True
来自管道的值:True
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Confirm

在运行 cmdlet 之前,提示你进行确认。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False
别名:cf

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Count

节点池的默认节点数。

参数属性

类型:Int32
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

参数属性

类型:IAzureContextContainer
默认值:None
支持通配符:False
不显示:False
别名:AzContext, AzureRmContext, AzureCredential

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-EnableAutoScaling

是否启用自动缩放程序

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-EnableEncryptionAtHost

是否启用基于主机的 OS 和数据驱动器

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-EnableFIPS

是否使用已启用 FIPS 的 OS

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-EnableNodePublicIp

是否为节点启用公共 IP。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-EnableUltraSSD

是否启用 UltraSSD

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Force

即使节点池已存在,也创建节点池

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-GpuInstanceProfile

用于为支持的 GPU VM SKU 指定 GPU MIG 实例配置文件的 GpuInstanceProfile。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-HostGroupID

专用主机组的完全限定资源 ID,用于预配虚拟机,仅在创建方案中使用,不允许在设置后更改。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-KubeletConfig

代理池节点上的 Kubelet 配置。

参数属性

类型:KubeletConfig
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-KubernetesVersion

用于创建群集的 Kubernetes 版本。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-LinuxOSConfig

Linux 代理节点的 OS 配置。

参数属性

类型:LinuxOSConfig
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-MaxCount

自动缩放的最大节点数

参数属性

类型:Int32
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-MaxPodCount

可在节点上运行的 Pod 的最大数目。

参数属性

类型:Int32
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-MaxSurge

升级期间激增的最大节点数或百分比。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-MinCount

用于自动缩放的最小节点数。

参数属性

类型:Int32
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Mode

池模式

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Name

节点池的名称。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-NodeLabel

用于生成 Kubernetes 网络的节点池标签。

参数属性

类型:Hashtable
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-NodePublicIPPrefixID

节点池的公共 IP 前缀的资源 ID。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-NodeTaint

节点池创建和缩放期间添加到新节点的节点污点

参数属性

类型:

String[]

默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-OsDiskSize

节点池的默认节点数。

参数属性

类型:Int32
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-OsSKU

用于指定 OS SKU 的 OsSKU。 如果 OSType 为 Linux,则默认值为 Ubuntu。 当 Kubernetes <= 1.24 或 Windows2022(如果 OSType 为 Windows)时 >,默认值为 Windows2019。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-OsType

用于指定 os 类型的 OsType。 从 Linux 和 Windows 中进行选择。 默认为 Linux。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-PodSubnetID

启动时 Pod 将加入的子网的 ID。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-PPG

邻近放置组的 ID。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ResourceGroupName

资源组的名称。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

defaultParameterSet
Position:Named
必需:True
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ScaleSetEvictionPolicy

用于为低优先级虚拟机规模集指定逐出策略的 ScaleSetEvictionPolicy。 默认为 Delete。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-ScaleSetPriority

用于指定虚拟机规模集优先级的 ScaleSetPriority。 默认为常规。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-SpotMaxPrice

你愿意支付现成实例的最大价格(以美元为单位)。 可能的值是大于零或 -1 的任何小数值,指示要按需 up-to 的默认价格。

参数属性

类型:

Nullable<T>[Double]

默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-SubscriptionId

订阅的 ID。 默认情况下,cmdlet 在当前上下文中设置的订阅中执行。 如果用户指定另一个订阅,则当前 cmdlet 在用户指定的订阅中执行。 重写订阅仅在当前 cmdlet 的生命周期内生效。 它不会更改上下文中的订阅,并且不会影响后续 cmdlet。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):True
来自剩余参数的值:False

-Tag

要保留在代理池虚拟机规模集上的标记。

参数属性

类型:Hashtable
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-VmSetType

表示节点池的类型。 可能的值包括:“VirtualMachineScaleSets”、“AvailabilitySet”

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-VmSize

虚拟机的大小。 默认值由 AKS 资源提供程序根据配额和容量动态选择。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-VnetSubnetID

VNet SubnetID 指定 VNet 的子网标识符。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-WhatIf

显示 cmdlet 运行时会发生什么情况。 命令脚本未运行。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False
别名:无线

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

CommonParameters

此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters

输入

PSKubernetesCluster

输出

PSNodePool