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

Agent Pools - Get

获取指定的托管群集代理池。

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/agentPools/{agentPoolName}?api-version=2025-04-01

URI 参数

名称 必需 类型 说明
agentPoolName
path True

string

minLength: 1
maxLength: 12
pattern: ^[a-z][a-z0-9]{0,11}$

代理池的名称。

resourceGroupName
path True

string

minLength: 1
maxLength: 90

资源组的名称。 此名称不区分大小写。

resourceName
path True

string

minLength: 1
maxLength: 63
pattern: ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$

托管群集资源的名称。

subscriptionId
path True

string (uuid)

目标订阅的 ID。 该值必须是 UUID。

api-version
query True

string

minLength: 1

要用于此操作的 API 版本。

响应

名称 类型 说明
200 OK

AgentPool

好的

Other Status Codes

CloudError

描述作失败的原因的错误响应。

安全性

azure_auth

Azure Active Directory OAuth2 流

类型: oauth2
流向: implicit
授权 URL: https://login.microsoftonline.com/common/oauth2/authorize

作用域

名称 说明
user_impersonation 模拟用户帐户

示例

Get Agent Pool

示例请求

GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1?api-version=2025-04-01

示例响应

{
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/agentPools/agentpool1",
  "name": "agentpool1",
  "properties": {
    "provisioningState": "Succeeded",
    "count": 3,
    "vmSize": "Standard_DS1_v2",
    "maxPods": 110,
    "osType": "Linux",
    "eTag": "ebwiyfneowv",
    "orchestratorVersion": "1.9.6",
    "currentOrchestratorVersion": "1.9.6",
    "nodeImageVersion": "AKSUbuntu:1604:2020.03.11",
    "upgradeSettings": {
      "maxSurge": "33%"
    }
  }
}

定义

名称 说明
AgentPool

代理池。

AgentPoolGatewayProfile

托管群集网关代理池的配置文件。

AgentPoolMode

代理池的模式。

AgentPoolNetworkProfile

代理池的网络设置。

AgentPoolSecurityProfile

代理池的安全设置。

AgentPoolStatus

包含有关代理池的只读信息。

AgentPoolType

代理池的类型。

AgentPoolUpgradeSettings

用于升级代理池的设置

AgentPoolWindowsProfile

Windows 代理池的特定配置文件。

CloudError

容器服务的错误响应。

CloudErrorBody

容器服务的错误响应。

code

指示群集是正在运行还是已停止

CreationData

从源资源创建目标资源时使用的数据。

GPUDriver

是否安装 GPU 驱动程序。 如果未指定,则默认为“安装”。

GPUInstanceProfile

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

GPUProfile

代理池的 GPU 设置。

IPTag

包含与对象关联的 IPTag。

KubeletConfig

代理节点的 Kubelet 配置。

KubeletDiskType

确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。

LinuxOSConfig

Linux 代理节点的 OS 配置。

ManualScaleProfile

计算机数的规范。

OSDiskType

要用于代理池中的计算机的 OS 磁盘类型。

OSSKU

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

OSType

作系统类型。 默认值为 Linux。

PodIPAllocationMode

Pod IP 分配模式

PortRange

端口范围。

PowerState

描述群集的电源状态

Protocol

端口的网络协议。

ScaleDownMode

介绍如何在代理池中添加或删除 VM。 请参阅 计费状态

ScaleProfile

有关如何缩放 VirtualMachines 代理池的规范。

ScaleSetEvictionPolicy

虚拟机规模集逐出策略。

ScaleSetPriority

虚拟机规模集优先级。

SysctlConfig

Linux 代理节点的 Sysctl 设置。

UndrainableNodeBehavior

定义升级期间不可透支节点的行为。 不透支节点的最常见原因是 Pod 中断预算(PDB),但其他问题(例如 Pod 终止宽限期超出剩余的每节点排空超时或 Pod 仍在运行状态)也可能导致无法执行的节点。

VirtualMachineNodes

相同 VM 大小的一组节点上的当前状态。

VirtualMachinesProfile

VirtualMachines 代理池上的规范。

WorkloadRuntime

确定节点可以运行的工作负荷的类型。

AgentPool

代理池。

名称 类型 默认值 说明
id

string

资源 ID。

name

string

资源组中唯一的资源的名称。 此名称可用于访问资源。

properties.availabilityZones

string[]

要用于节点的可用性区域列表。 仅当 AgentPoolType 属性为“VirtualMachineScaleSets”时,才能指定此值。

properties.capacityReservationGroupID

string (arm-id)

容量预留组的完全限定资源 ID,用于从虚拟机的保留组提供虚拟机。
AKS 会将指定的代理池与容量预留组相关联。

properties.count

integer (int32)

用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。

properties.creationData

CreationData

如果使用快照创建/升级节点池,则用于指定源快照 ID 的 CreationData。

properties.currentOrchestratorVersion

string

代理池运行的 Kubernetes 版本。
如果 orchestratorVersion 是一个完全指定的版本,<major.minor.patch>,则此字段将完全等于它。 如果 orchestratorVersion <major.minor>,则此字段将包含正在使用的完整 <major.minor.patch> 版本。

properties.eTag

string

用于实现乐观并发的唯一只读字符串。 更新资源时,eTag 值将更改。 使用后续请求的 eTag 值指定 if-match 或 if-none-match 标头,以便根据正常的 etag 约定启用乐观并发。

properties.enableAutoScaling

boolean

是否启用自动缩放程序

properties.enableEncryptionAtHost

boolean

是否启用基于主机的 OS 和数据驱动器加密。
这仅在某些 VM 大小和某些 Azure 区域中受支持。 有关详细信息,请参阅: https://docs.microsoft.com/azure/aks/enable-host-encryption

properties.enableFIPS

boolean

是否使用已启用 FIPS 的 OS。
有关更多详细信息 ,请参阅添加已启用 FIPS 的节点池

properties.enableNodePublicIP

boolean

是否为每个节点分配自己的公共 IP。
某些方案可能需要节点池中的节点接收其自己的专用公共 IP 地址。 游戏工作负载就是一种常见方案,此时控制台需要直接连接到云虚拟机才能尽量减少画面跳跃。 有关详细信息,请参阅 为每个节点分配公共 IP。 默认值为 false。

properties.enableUltraSSD

boolean

是否启用 UltraSSD

properties.gatewayProfile

AgentPoolGatewayProfile

特定于网关模式下托管代理池的配置文件。 如果代理池模式不是网关,则无法设置此字段。

properties.gpuInstanceProfile

GPUInstanceProfile

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

properties.gpuProfile

GPUProfile

代理池的 GPU 设置。

properties.hostGroupID

string (arm-id)

专用主机组的完全限定资源 ID,用于预配虚拟机,仅在创建方案中使用,不允许在设置后更改。
此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}。 有关详细信息,请参阅 Azure 专用主机

properties.kubeletConfig

KubeletConfig

代理节点的 Kubelet 配置。
代理池节点上的 Kubelet 配置。

properties.kubeletDiskType

KubeletDiskType

确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。

properties.linuxOSConfig

LinuxOSConfig

Linux 代理节点的 OS 配置。
Linux 代理节点的 OS 配置。

properties.maxCount

integer (int32)

自动缩放的最大节点数

properties.maxPods

integer (int32)

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

properties.messageOfTheDay

string

Linux 节点的当天消息(base64 编码)。
一个 base64 编码的字符串,将在解码后写入 /etc/motd。 这允许自定义 Linux 节点当天的消息。 它不得为 Windows 节点指定。 它必须是静态字符串(即,将打印为原始字符串,而不是作为脚本执行)。

properties.minCount

integer (int32)

自动缩放的最小节点数

properties.mode

AgentPoolMode

代理池的模式。
群集必须随时至少有一个“系统”代理池。 有关代理池限制和最佳做法的其他信息,请参阅:https://docs.microsoft.com/azure/aks/use-system-pools

properties.networkProfile

AgentPoolNetworkProfile

代理池的网络相关设置。

properties.nodeImageVersion

string

节点映像的版本

properties.nodeLabels

object

要跨代理池中的所有节点保留的节点标签。

properties.nodePublicIPPrefixID

string (arm-id)

VM 节点应使用 IP 的公共 IP 前缀 ID。
此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}

properties.nodeTaints

string[]

在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。

properties.orchestratorVersion

string

用户指定的 Kubernetes 版本。
支持修补程序版本 <major.minor.patch> (例如 1.20.13)和 <major.minor> (例如 1.20)。 指定 major.minor< 后>,会自动选择最新的受支持的 GA 修补程序版本。 <创建群集后使用相同的 major.minor> 更新群集(例如 1.14.x -> 1.14)不会触发升级,即使有较新的修补程序版本可用也是如此。 最佳做法是将 AKS 群集中的所有节点池升级到相同的 Kubernetes 版本。 节点池版本必须与控制平面具有相同的主版本。 节点池次要版本必须位于控制平面版本的两个次要版本中。 节点池版本不能大于控制平面版本。 有关详细信息,请参阅 升级节点池

properties.osDiskSizeGB

integer (int32)

minimum: 0
maximum: 2048

OS 磁盘大小(以 GB 为单位)用于为主/代理池中的每个计算机指定磁盘大小。 如果指定 0,它将根据指定的 vmSize 应用默认 osDisk 大小。

properties.osDiskType

OSDiskType

要用于代理池中的计算机的 OS 磁盘类型。
如果 VM 支持该 VM 并且缓存磁盘大于请求的 OSDiskSizeGB,则默认值为“临时”。 否则,默认为“Managed”。 创建后可能不会更改。 有关详细信息,请参阅 临时 OS

properties.osSKU

OSSKU

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

properties.osType

OSType

Linux

作系统类型。 默认值为 Linux。

properties.podIPAllocationMode

PodIPAllocationMode

Pod IP 分配模式
代理池中 Pod 的 IP 分配模式。 必须与 podSubnetId 一起使用。 默认值为“DynamicIndividual”。

properties.podSubnetID

string (arm-id)

启动时 Pod 将加入的子网的 ID。
如果省略,则会在节点子网上静态分配 Pod IP(有关详细信息,请参阅 vnetSubnetID)。 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}

properties.powerState

PowerState

代理池是正在运行还是已停止。
首次创建代理池时,它最初正在运行。 可以通过将此字段设置为“已停止”来停止代理池。 已停止的代理池会停止其所有 VM,不会产生计费费用。 仅当代理池正在运行并且预配状态为“成功”时,才能停止代理池

properties.provisioningState

string

当前部署或预配状态。

properties.proximityPlacementGroupID

string (arm-id)

邻近放置组的 ID。

properties.scaleDownMode

ScaleDownMode

缩放代理池时要使用的缩减模式。
这也会影响群集自动缩放程序的行为。 如果未指定,则默认为 Delete。

properties.scaleSetEvictionPolicy

ScaleSetEvictionPolicy

Delete

要使用的虚拟机规模集逐出策略。
除非 scaleSetPriority 为“Spot”,否则无法指定此项。 如果未指定,则默认值为“Delete”。

properties.scaleSetPriority

ScaleSetPriority

Regular

虚拟机规模集优先级。 如果未指定,则默认值为“Regular”。

properties.securityProfile

AgentPoolSecurityProfile

代理池的安全设置。

properties.spotMaxPrice

number

-1

你愿意支付现成实例的最大价格(以美元为单位)。 可能的值是大于零或 -1 的任何小数值,指示要按需 up-to 的默认价格。
可能的值是大于零或 -1 的任何小数值,表示愿意支付任何按需价格。 有关现成定价的更多详细信息,请参阅 现成 VM 定价

properties.status

AgentPoolStatus

包含有关代理池的只读信息。

properties.tags

object

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

properties.type

AgentPoolType

代理池的类型。

properties.upgradeSettings

AgentPoolUpgradeSettings

用于升级代理池的设置

properties.virtualMachineNodesStatus

VirtualMachineNodes[]

VirtualMachines 代理池中的节点的状态。

properties.virtualMachinesProfile

VirtualMachinesProfile

VirtualMachines 代理池上的规范。

properties.vmSize

string

代理池 VM 的大小。
VM 大小可用性因区域而异。 如果节点包含的计算资源(内存、cpu 等)Pod 不足,可能无法正常运行。 有关受限 VM 大小的更多详细信息,请参阅:https://docs.microsoft.com/azure/aks/quotas-skus-regions

properties.vnetSubnetID

string (arm-id)

代理池节点和(可选)Pod 将在启动时加入的子网的 ID。
如果未指定,将生成和使用 VNET 和子网。 如果未指定 podSubnetID,则这适用于节点和 Pod,否则它仅适用于节点。 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}

properties.windowsProfile

AgentPoolWindowsProfile

Windows 代理池的特定配置文件。

properties.workloadRuntime

WorkloadRuntime

确定节点可以运行的工作负荷的类型。

type

string

资源类型

AgentPoolGatewayProfile

托管群集网关代理池的配置文件。

名称 类型 默认值 说明
publicIPPrefixSize

integer (int32)

minimum: 28
maximum: 31
31

网关代理池为每个静态出口网关关联一个公共 IPPrefix,以提供公共出口。 用户应选择公共 IPPrefix 的大小。 代理池中的每个节点都分配有 IPPrefix 中的一个 IP。 因此,IPPrefix 大小充当网关代理池大小的上限。 由于 Azure 公共 IPPrefix 大小限制,有效值范围为 [28, 31] (/31 = 2 个节点/IP,/30 = 4 个节点/IP,/29 = 8 个节点/IP,/28 = 16 个节点/IP)。 默认值为 31。

AgentPoolMode

代理池的模式。

说明
Gateway

网关代理池专用于向 Pod 提供静态出口 IP。 如需了解详情,请访问 https://aka.ms/aks/static-egress-gateway

System

系统代理池主要用于托管关键系统 Pod,例如 CoreDNS 和 metrics-server。 系统代理池 osType 必须是 Linux。 系统代理池 VM SKU 必须至少具有 2vCPU 和 4GB 内存。

User

用户代理池主要用于托管应用程序 Pod。

AgentPoolNetworkProfile

代理池的网络设置。

名称 类型 说明
allowedHostPorts

PortRange[]

允许访问的端口范围。 允许指定的范围重叠。

applicationSecurityGroups

string[] (arm-id)

创建代理池时将关联的应用程序安全组的 ID。

nodePublicIPTags

IPTag[]

实例级公共 IP 的 IPTag。

AgentPoolSecurityProfile

代理池的安全设置。

名称 类型 说明
enableSecureBoot

boolean

安全启动是受信任的启动的一项功能,可确保只有已签名的作系统和驱动程序才能启动。 有关详细信息,请参阅 aka.ms/aks/trustedlaunch。 如果未指定,则默认值为 false。

enableVTPM

boolean

vTPM 是一项受信任的启动功能,用于为节点上本地保留的密钥和度量配置专用安全保管库。 有关详细信息,请参阅 aka.ms/aks/trustedlaunch。 如果未指定,则默认值为 false。

AgentPoolStatus

包含有关代理池的只读信息。

名称 类型 说明
provisioningError

CloudErrorBody

代理池的错误详细信息。
保留失败的详细信息。 如果没有错误,则省略此字段。

AgentPoolType

代理池的类型。

说明
AvailabilitySet

强烈建议不要使用此功能。

VirtualMachineScaleSets

创建虚拟机规模集支持的代理池。

VirtualMachines

创建由单个实例 VM 业务流程模式支持的代理池。

AgentPoolUpgradeSettings

用于升级代理池的设置

名称 类型 说明
drainTimeoutInMinutes

integer (int32)

minimum: 1
maximum: 1440

节点的清空超时
在逐出 Pod 时等待的时间量(以分钟为单位),以及每个节点的正常终止时间。 此逐出等待时间遵循等待 Pod 中断预算。 如果超过此时间,升级将失败。 如果未指定,则默认值为 30 分钟。

maxSurge

string

升级期间激增的最大节点数或百分比。
这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 10%。 有关详细信息,包括最佳做法,请参阅:https://learn.microsoft.com/en-us/azure/aks/upgrade-cluster

maxUnavailable

string

升级期间可同时不可用的最大节点数或百分比。
这可以设置为整数(例如'1')或百分比(例如'5%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 0。 有关详细信息,包括最佳做法,请参阅:https://learn.microsoft.com/en-us/azure/aks/upgrade-cluster

nodeSoakDurationInMinutes

integer (int32)

minimum: 0
maximum: 30

节点的浸泡持续时间
清空节点后以及重新映像节点并转到下一个节点之前等待的时间(以分钟为单位)。 如果未指定,则默认值为 0 分钟。

undrainableNodeBehavior

UndrainableNodeBehavior

定义升级期间不可透支节点的行为。 不透支节点的最常见原因是 Pod 中断预算(PDB),但其他问题(例如 Pod 终止宽限期超出剩余的每节点排空超时或 Pod 仍在运行状态)也可能导致无法执行的节点。

AgentPoolWindowsProfile

Windows 代理池的特定配置文件。

名称 类型 说明
disableOutboundNat

boolean

是否在 Windows 节点中禁用出站NAT
默认值为 false。 仅当群集 outboundType 为 NAT 网关且 Windows 代理池未启用节点公共 IP 时,才能禁用出站 NAT。

CloudError

容器服务的错误响应。

名称 类型 说明
error

CloudErrorBody

有关错误的详细信息。

CloudErrorBody

容器服务的错误响应。

名称 类型 说明
code

string

错误的标识符。 代码是固定的,旨在以编程方式使用。

details

CloudErrorBody[]

有关错误的其他详细信息的列表。

message

string

描述错误的消息,旨在适合在用户界面中显示。

target

string

特定错误的目标。 例如,错误属性的名称。

code

指示群集是正在运行还是已停止

说明
Running

群集正在运行。

Stopped

群集已停止。

CreationData

从源资源创建目标资源时使用的数据。

名称 类型 说明
sourceResourceId

string (arm-id)

这是用于创建目标对象的源对象的 ARM ID。

GPUDriver

是否安装 GPU 驱动程序。 如果未指定,则默认为“安装”。

说明
Install

安装驱动程序。

None

跳过驱动程序安装。

GPUInstanceProfile

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

说明
MIG1g
MIG2g
MIG3g
MIG4g
MIG7g

GPUProfile

代理池的 GPU 设置。

名称 类型 说明
driver

GPUDriver

是否安装 GPU 驱动程序。 如果未指定,则默认为“安装”。

IPTag

包含与对象关联的 IPTag。

名称 类型 说明
ipTagType

string

IP 标记类型。 示例:RoutingPreference。

tag

string

与公共 IP 关联的 IP 标记的值。 示例:Internet。

KubeletConfig

代理节点的 Kubelet 配置。

名称 类型 说明
allowedUnsafeSysctls

string[]

允许的不安全 sysctls 或不安全的 sysctl 模式列表(以结尾 *)。

containerLogMaxFiles

integer (int32)

minimum: 2

一个容器可以存在的最大容器日志文件数。 该数字必须≥ 2。

containerLogMaxSizeMB

integer (int32)

在轮换容器日志文件之前,容器日志文件的最大大小(例如 10Mi)。

cpuCfsQuota

boolean

如果为指定 CPU 限制的容器启用了 CPU CFS 配额强制实施。
默认值为 true。

cpuCfsQuotaPeriod

string

CPU CFS 配额周期值。
默认值为“100ms”。 有效值是包含可选分数和单位后缀的小数序列。 例如:“300ms”、“2h45m”。 支持的单位为“ns”、“us”、“ms”、“s”、“m”和“h”。

cpuManagerPolicy

string

要使用的 CPU 管理器策略。
默认值为“none”。 有关详细信息,请参阅 Kubernetes CPU 管理策略 。 允许的值为“none”和“static”。

failSwapOn

boolean

如果设置为 true,则如果在节点上启用了交换,则 Kubelet 将无法启动。

imageGcHighThreshold

integer (int32)

磁盘使用率的百分比,之后映像垃圾回收始终运行。
如果要禁用映像垃圾回收,则设置为 100。 默认值为 85%

imageGcLowThreshold

integer (int32)

从不运行映像垃圾回收之前磁盘使用量的百分比。
这不能设置为高于 imageGcHighThreshold。 默认值为 80%

podMaxPids

integer (int32)

每个 Pod 的最大进程数。

topologyManagerPolicy

string

要使用的拓扑管理器策略。
有关详细信息,请参阅 Kubernetes 拓扑管理器。 默认值为“none”。 允许的值为“none”、“best-effort”、“restricted”和“single-numa-node”。

KubeletDiskType

确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。

说明
OS

Kubelet 将对其数据使用 OS 磁盘。

Temporary

Kubelet 会将临时磁盘用于其数据。

LinuxOSConfig

Linux 代理节点的 OS 配置。

名称 类型 说明
swapFileSizeMB

integer (int32)

将在每个节点上创建的交换文件的大小(以 MB 为单位)。

sysctls

SysctlConfig

Linux 代理节点的 Sysctl 设置。

transparentHugePageDefrag

string

内核是否应积极利用内存压缩,使更多的大页可用。
有效值为“always”、“defer”、“defer+madvise”、“madvise”和“never”。 默认值为“madvise”。 有关详细信息,请参阅 透明巨页

transparentHugePageEnabled

string

是否启用透明巨页。
有效值为“always”、“madvise”和“never”。 默认值为“always”。 有关详细信息,请参阅 透明巨页

ManualScaleProfile

计算机数的规范。

名称 类型 说明
count

integer (int32)

节点数。

size

string

AKS 在创建和缩放时将使用的 VM 大小,例如“Standard_E4s_v3”、“Standard_E16s_v3”或“Standard_D16s_v5”。

OSDiskType

要用于代理池中的计算机的 OS 磁盘类型。

说明
Ephemeral

临时 OS 磁盘仅存储在主机上,就像临时磁盘一样。 这样可以降低读取/写入延迟,以及更快的节点缩放和群集升级。

Managed

如果 VM 需要重新定位到另一台主机,Azure 会将虚拟机的作系统磁盘复制到 Azure 存储,以避免数据丢失。 由于容器未设计为保留本地状态,因此此行为提供有限的值,同时提供一些缺点,包括节点预配速度较慢以及读取/写入延迟较高。

OSSKU

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

说明
AzureLinux

将 AzureLinux 用作节点映像的 OS。 Azure Linux 是由 Microsoft 生成的容器优化的 Linux 发行版,有关详细信息,请访问 https://aka.ms/azurelinux

CBLMariner

弃用的 OSSKU。 Microsoft建议新部署改为选择“AzureLinux”。

Ubuntu

将 Ubuntu 用作节点映像的 OS。

Ubuntu2204

使用 Ubuntu2204 作为节点映像的作系统,但是,并非所有节点池都支持 Ubuntu 22.04。 有关限制和支持的 kubernetes 版本,请参阅 https://aka.ms/aks/supported-ubuntu-versions

Windows2019

将 Windows2019 用作节点映像的 OS。 系统节点池不支持。 Windows2019 仅支持 Windows2019 容器;它无法运行 Windows2022 容器,反之亦然。

Windows2022

将 Windows2022 用作节点映像的 OS。 系统节点池不支持。 Windows2022 仅支持 Windows2022 容器;它无法运行 Windows2019 容器,反之亦然。

OSType

作系统类型。 默认值为 Linux。

说明
Linux

使用 Linux。

Windows

使用 Windows。

PodIPAllocationMode

Pod IP 分配模式

说明
DynamicIndividual

每个节点都分配了一个可分配给 Pod 的非连续 IP 地址列表。 这更适合最大化大小为 /16 或更小的中小型子网。 如果客户未显式指定 podIPAllocationMode,则具有动态 IP 分配的 Azure CNI 群集默认为此模式

StaticBlock

每个节点是静态分配的 CIDR 块大小 /28 = 每个块 16 个 IP,以满足每个节点的 maxPods。 >= (maxPods / 16) 的 CIDR 块数。 该块(而不是单个 IP)根据 Azure Vnet 专用 IP 限制 65K 进行计数。 因此,块模式适用于运行大于群集中 65K Pod 的当前限制的较大工作负荷。 此模式更适合使用更大子网 /15 或更大的子网进行缩放

PortRange

端口范围。

名称 类型 说明
portEnd

integer (int32)

minimum: 1
maximum: 65535

范围中包含的最大端口。 它的范围应从 1 到 65535,并且大于或等于 portStart。

portStart

integer (int32)

minimum: 1
maximum: 65535

范围中包含的最小端口。 它的范围应从 1 到 65535,并且小于或等于 portEnd。

protocol

Protocol

端口的网络协议。

PowerState

描述群集的电源状态

名称 类型 说明
code

code

指示群集是正在运行还是已停止

Protocol

端口的网络协议。

说明
TCP

TCP 协议。

UDP

UDP 协议。

ScaleDownMode

介绍如何在代理池中添加或删除 VM。 请参阅 计费状态

说明
Deallocate

尝试在纵向扩展期间启动已解除分配的实例(如果存在),并在纵向缩减期间解除分配实例。

Delete

在纵向扩展期间创建新实例,并在纵向缩减期间删除实例。

ScaleProfile

有关如何缩放 VirtualMachines 代理池的规范。

名称 类型 说明
manual

ManualScaleProfile[]

有关如何将 VirtualMachines 代理池缩放为固定大小的规范。

ScaleSetEvictionPolicy

虚拟机规模集逐出策略。

说明
Deallocate

节点池的基础规模集中的节点在逐出时设置为已停止解除分配的状态。 针对计算配额的已停止解除分配状态计数中的节点,并可能导致群集缩放或升级出现问题。

Delete

在逐出节点池的基础规模集中的节点时,将删除这些节点。

ScaleSetPriority

虚拟机规模集优先级。

说明
Regular

将使用常规 VM。

Spot

将使用现成优先级 VM。 没有现成节点的 SLA。 有关详细信息,请参阅 AKS 上的现场

SysctlConfig

Linux 代理节点的 Sysctl 设置。

名称 类型 说明
fsAioMaxNr

integer (int32)

Sysctl 设置 fs.aio-max-nr。

fsFileMax

integer (int32)

Sysctl 设置 fs.file-max。

fsInotifyMaxUserWatches

integer (int32)

Sysctl 设置 fs.inotify.max_user_watches。

fsNrOpen

integer (int32)

Sysctl 设置fs.nr_open。

kernelThreadsMax

integer (int32)

Sysctl 设置 kernel.threads-max。

netCoreNetdevMaxBacklog

integer (int32)

Sysctl 设置net.core.netdev_max_backlog。

netCoreOptmemMax

integer (int32)

Sysctl 设置net.core.optmem_max。

netCoreRmemDefault

integer (int32)

Sysctl 设置net.core.rmem_default。

netCoreRmemMax

integer (int32)

Sysctl 设置net.core.rmem_max。

netCoreSomaxconn

integer (int32)

Sysctl 设置 net.core.somaxconn。

netCoreWmemDefault

integer (int32)

Sysctl 设置net.core.wmem_default。

netCoreWmemMax

integer (int32)

Sysctl 设置net.core.wmem_max。

netIpv4IpLocalPortRange

string

Sysctl 设置net.ipv4.ip_local_port_range。

netIpv4NeighDefaultGcThresh1

integer (int32)

Sysctl 设置net.ipv4.neigh.default.gc_thresh1。

netIpv4NeighDefaultGcThresh2

integer (int32)

Sysctl 设置net.ipv4.neigh.default.gc_thresh2。

netIpv4NeighDefaultGcThresh3

integer (int32)

Sysctl 设置net.ipv4.neigh.default.gc_thresh3。

netIpv4TcpFinTimeout

integer (int32)

Sysctl 设置net.ipv4.tcp_fin_timeout。

netIpv4TcpKeepaliveProbes

integer (int32)

Sysctl 设置net.ipv4.tcp_keepalive_probes。

netIpv4TcpKeepaliveTime

integer (int32)

Sysctl 设置net.ipv4.tcp_keepalive_time。

netIpv4TcpMaxSynBacklog

integer (int32)

Sysctl 设置net.ipv4.tcp_max_syn_backlog。

netIpv4TcpMaxTwBuckets

integer (int32)

Sysctl 设置net.ipv4.tcp_max_tw_buckets。

netIpv4TcpTwReuse

boolean

Sysctl 设置net.ipv4.tcp_tw_reuse。

netIpv4TcpkeepaliveIntvl

integer (int32)

minimum: 10
maximum: 90

Sysctl 设置net.ipv4.tcp_keepalive_intvl。

netNetfilterNfConntrackBuckets

integer (int32)

minimum: 65536
maximum: 524288

Sysctl 设置net.netfilter.nf_conntrack_buckets。

netNetfilterNfConntrackMax

integer (int32)

minimum: 131072
maximum: 2097152

Sysctl 设置net.netfilter.nf_conntrack_max。

vmMaxMapCount

integer (int32)

Sysctl 设置 vm.max_map_count。

vmSwappiness

integer (int32)

Sysctl 设置 vm.swappiness。

vmVfsCachePressure

integer (int32)

Sysctl 设置vm.vfs_cache_pressure。

UndrainableNodeBehavior

定义升级期间不可透支节点的行为。 不透支节点的最常见原因是 Pod 中断预算(PDB),但其他问题(例如 Pod 终止宽限期超出剩余的每节点排空超时或 Pod 仍在运行状态)也可能导致无法执行的节点。

说明
Cordon

AKS 将封锁被阻止的节点,并在升级期间将其替换为激增节点。 被阻止的节点将被封锁并替换为激增节点。 被阻止的节点将具有标签“kubernetes.azure.com/upgrade-status:Quarantined”。 将为每个阻塞的节点保留激增节点。 将尽最大努力删除所有其他激增节点。 如果有足够的激增节点来替换被阻止的节点,则升级操作和托管群集将处于失败状态。 否则,升级操作和托管群集将处于取消状态。

Schedule

AKS 将标记已阻止的节点,但阻止的节点不会升级。 将尽最大努力删除所有激增节点。 如果有任何阻止的节点,则升级操作和托管群集将处于失败状态。

VirtualMachineNodes

相同 VM 大小的一组节点上的当前状态。

名称 类型 说明
count

integer (int32)

节点数。

size

string

用于托管此节点组的代理的 VM 大小。

VirtualMachinesProfile

VirtualMachines 代理池上的规范。

名称 类型 说明
scale

ScaleProfile

有关如何缩放 VirtualMachines 代理池的规范。

WorkloadRuntime

确定节点可以运行的工作负荷的类型。

说明
OCIContainer

节点将使用 Kubelet 运行标准 OCI 容器工作负荷。

WasmWasi

节点将使用 Krustlet 通过 WASI 提供程序运行 WASM 工作负荷(预览版)。