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

Microsoft.ContainerService managedClusters/agentPools 2025-02-02-预览版

Bicep 资源定义

可以使用目标作部署 managedClusters/agentPools 资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.ContainerService/managedClusters/agentPools 资源,请将以下 Bicep 添加到模板。

resource symbolicname 'Microsoft.ContainerService/managedClusters/agentPools@2025-02-02-preview' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    artifactStreamingProfile: {
      enabled: bool
    }
    availabilityZones: [
      'string'
    ]
    capacityReservationGroupID: 'string'
    count: int
    creationData: {
      sourceResourceId: 'string'
    }
    enableAutoScaling: bool
    enableCustomCATrust: bool
    enableEncryptionAtHost: bool
    enableFIPS: bool
    enableNodePublicIP: bool
    enableUltraSSD: bool
    gatewayProfile: {
      publicIPPrefixSize: int
    }
    gpuInstanceProfile: 'string'
    gpuProfile: {
      driverType: 'string'
      installGPUDriver: bool
    }
    hostGroupID: 'string'
    kubeletConfig: {
      allowedUnsafeSysctls: [
        'string'
      ]
      containerLogMaxFiles: int
      containerLogMaxSizeMB: int
      cpuCfsQuota: bool
      cpuCfsQuotaPeriod: 'string'
      cpuManagerPolicy: 'string'
      failSwapOn: bool
      imageGcHighThreshold: int
      imageGcLowThreshold: int
      podMaxPids: int
      seccompDefault: 'string'
      topologyManagerPolicy: 'string'
    }
    kubeletDiskType: 'string'
    linuxOSConfig: {
      swapFileSizeMB: int
      sysctls: {
        fsAioMaxNr: int
        fsFileMax: int
        fsInotifyMaxUserWatches: int
        fsNrOpen: int
        kernelThreadsMax: int
        netCoreNetdevMaxBacklog: int
        netCoreOptmemMax: int
        netCoreRmemDefault: int
        netCoreRmemMax: int
        netCoreSomaxconn: int
        netCoreWmemDefault: int
        netCoreWmemMax: int
        netIpv4IpLocalPortRange: 'string'
        netIpv4NeighDefaultGcThresh1: int
        netIpv4NeighDefaultGcThresh2: int
        netIpv4NeighDefaultGcThresh3: int
        netIpv4TcpFinTimeout: int
        netIpv4TcpkeepaliveIntvl: int
        netIpv4TcpKeepaliveProbes: int
        netIpv4TcpKeepaliveTime: int
        netIpv4TcpMaxSynBacklog: int
        netIpv4TcpMaxTwBuckets: int
        netIpv4TcpTwReuse: bool
        netNetfilterNfConntrackBuckets: int
        netNetfilterNfConntrackMax: int
        vmMaxMapCount: int
        vmSwappiness: int
        vmVfsCachePressure: int
      }
      transparentHugePageDefrag: 'string'
      transparentHugePageEnabled: 'string'
    }
    maxCount: int
    maxPods: int
    messageOfTheDay: 'string'
    minCount: int
    mode: 'string'
    networkProfile: {
      allowedHostPorts: [
        {
          portEnd: int
          portStart: int
          protocol: 'string'
        }
      ]
      applicationSecurityGroups: [
        'string'
      ]
      nodePublicIPTags: [
        {
          ipTagType: 'string'
          tag: 'string'
        }
      ]
    }
    nodeInitializationTaints: [
      'string'
    ]
    nodeLabels: {
      {customized property}: 'string'
    }
    nodePublicIPPrefixID: 'string'
    nodeTaints: [
      'string'
    ]
    orchestratorVersion: 'string'
    osDiskSizeGB: int
    osDiskType: 'string'
    osSKU: 'string'
    osType: 'string'
    podIPAllocationMode: 'string'
    podSubnetID: 'string'
    powerState: {
      code: 'string'
    }
    proximityPlacementGroupID: 'string'
    scaleDownMode: 'string'
    scaleSetEvictionPolicy: 'string'
    scaleSetPriority: 'string'
    securityProfile: {
      enableSecureBoot: bool
      enableVTPM: bool
      sshAccess: 'string'
    }
    spotMaxPrice: int
    status: {}
    tags: {
      {customized property}: 'string'
    }
    type: 'string'
    upgradeSettings: {
      drainTimeoutInMinutes: int
      maxBlockedNodes: 'string'
      maxSurge: 'string'
      maxUnavailable: 'string'
      nodeSoakDurationInMinutes: int
      undrainableNodeBehavior: 'string'
    }
    virtualMachineNodesStatus: [
      {
        count: int
        size: 'string'
      }
    ]
    virtualMachinesProfile: {
      scale: {
        autoscale: any(...)
        manual: [
          {
            count: int
            size: 'string'
          }
        ]
      }
    }
    vmSize: 'string'
    vnetSubnetID: 'string'
    windowsProfile: {
      disableOutboundNat: bool
    }
    workloadRuntime: 'string'
  }
}

属性值

Microsoft.ContainerService/managedClusters/agentPools

名称 DESCRIPTION 价值
姓名 资源名称 字符串

约束:
最小长度 = 1
最大长度 = 12
模式 = ^[a-z][a-z0-9]{0,11}$ (必需)
父级 在 Bicep 中,可以为子资源指定父资源。 仅当子资源在父资源外部声明时,才需要添加此属性。

有关详细信息,请参阅 父资源外部的子资源
类型资源的符号名称: managedClusters
属性 代理池的属性。 ManagedClusterAgentPoolProfile属性

AgentPoolArtifactStreamingProfile

名称 DESCRIPTION 价值
启用 项目流式处理通过按需映像加载加快节点上容器的冷启动速度。 若要使用此功能,容器映像还必须在 ACR 上启用项目流式处理。 如果未指定,则默认值为 false。 布尔

AgentPoolGateway配置文件

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

约束:
最小值 = 28
最大值 = 31

AgentPoolGPUPro文件

名称 DESCRIPTION 价值
driverType 指定要在创建 Windows 代理池时安装的 GPU 驱动程序的类型。 如果未提供,AKS 会根据系统兼容性选择驱动程序。 创建 AgentPool 后,无法更改此更改。 这不能在 Linux AgentPools 上设置。 对于 Linux AgentPools,根据系统兼容性选择驱动程序。 “CUDA”
“GRID”
安装 GPUDriver 如果代理池的 vmSize 包含 GPU,则默认值为 true,否则为 false。 仅当 VM 具有关联的 GPU 资源时,才能将 GPU 驱动程序安装设置为 true。 将此字段设置为 false 可防止自动安装 GPU 驱动程序。 在这种情况下,为了使 GPU 可用,用户必须自行执行 GPU 驱动程序安装。 布尔

AgentPoolNetworkProfile

名称 DESCRIPTION 价值
allowedHostPorts 允许访问的端口范围。 允许指定的范围重叠。 端口范围
applicationSecurity组 创建代理池时将关联的应用程序安全组的 ID。 字符串[]
nodePublicIP 标签 实例级公共 IP 的 IPTag。 IPTag 标签

AgentPoolSecurityProfile

名称 DESCRIPTION 价值
启用安全引导 安全启动是受信任的启动的一项功能,可确保只有已签名的作系统和驱动程序才能启动。 有关详细信息,请参阅 aka.ms/aks/trustedlaunch。 如果未指定,则默认值为 false。 布尔
启用 VTPM vTPM 是一项受信任的启动功能,用于为节点上本地保留的密钥和度量配置专用安全保管库。 有关详细信息,请参阅 aka.ms/aks/trustedlaunch。 如果未指定,则默认值为 false。 布尔
sshAccess 代理池的 SSH 访问方法。 “Disabled”
“LocalUser”

AgentPoolStatus

名称 DESCRIPTION 价值

AgentPoolUpgradeSettings

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

约束:
最小值 = 1
最大值 = 1440
最大阻塞节点数 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 maxSurge。 这必须始终大于或等于 maxSurge。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster 字符串
最大浪涌 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 10%。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster 字符串
max不可用 这可以设置为整数(例如'1')或百分比(例如'5%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 0。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster 字符串
nodeSoakDurationInMinutes 清空节点后以及重新映像节点并转到下一个节点之前等待的时间(以分钟为单位)。 如果未指定,则默认值为 0 分钟。 int

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

AgentPoolWindows配置文件

名称 DESCRIPTION 价值
disableOutboundNat 默认值为 false。 仅当群集 outboundType 为 NAT 网关且 Windows 代理池未启用节点公共 IP 时,才能禁用出站 NAT。 布尔

CreationData (创建数据)

名称 DESCRIPTION 价值
源资源 ID 这是用于创建目标对象的源对象的 ARM ID。 字符串

IPTag 标签

名称 DESCRIPTION 价值
ipTag类型 IP 标记类型。 示例:RoutingPreference。 字符串
标签 与公共 IP 关联的 IP 标记的值。 示例:Internet。 字符串

KubeletConfig 实例

名称 DESCRIPTION 价值
allowedUnsafeSysctls 允许的不安全 sysctls 或不安全的 sysctl 模式列表(以结尾 *)。 字符串[]
containerLogMax文件 一个容器可以存在的最大容器日志文件数。 该数字必须≥ 2。 int

约束:
最小值 = 2
容器日志最大大小MB 在轮换容器日志文件之前,容器日志文件的最大大小(例如 10Mi)。 整数 (int)
cpuCfs配额 默认值为 true。 布尔
cpuCfsQuotaPeriod 默认值为“100ms”。 有效值是包含可选分数和单位后缀的小数序列。 例如:“300ms”、“2h45m”。 支持的单位为“ns”、“us”、“ms”、“s”、“m”和“h”。 字符串
cpuManagerPolicy 默认值为“none”。 有关详细信息,请参阅 Kubernetes CPU 管理策略 。 允许的值为“none”和“static”。 字符串
failSwapOn 如果设置为 true,则如果在节点上启用了交换,则 Kubelet 将无法启动。 布尔
imageGcHighThreshold 如果要禁用映像垃圾回收,则设置为 100。 默认值为 85% 整数 (int)
imageGcLowThreshold 这不能设置为高于 imageGcHighThreshold。 默认值为 80% 整数 (int)
podMaxPids 每个 Pod 的最大进程数。 整数 (int)
seccomp默认 指定应用于所有工作负荷的默认 seccomp 配置文件。 如果未指定,则默认使用“未完成”。 “RuntimeDefault”
“Unconfined”
topologyManagerPolicy 有关详细信息,请参阅 Kubernetes 拓扑管理器。 默认值为“none”。 允许的值为“none”、“best-effort”、“restricted”和“single-numa-node”。 字符串

LinuxOSConfig

名称 DESCRIPTION 价值
swapFileSizeMB 将在每个节点上创建的交换文件的大小(以 MB 为单位)。 整数 (int)
sysctl 参数 Linux 代理节点的 Sysctl 设置。 SysctlConfig 配置
transparentHugePage碎片整理 有效值为“always”、“defer”、“defer+madvise”、“madvise”和“never”。 默认值为“madvise”。 有关详细信息,请参阅 透明巨页 字符串
transparentHugePage已启用 有效值为“always”、“madvise”和“never”。 默认值为“always”。 有关详细信息,请参阅 透明巨页 字符串

ManagedClusterAgentPoolProfile属性

名称 DESCRIPTION 价值
artifactStreamingProfile 用于在 AKS 上使用项目流式传输的配置。 AgentPoolArtifactStreamingProfile
可用性区域 要用于节点的可用性区域列表。 仅当 AgentPoolType 属性为“VirtualMachineScaleSets”时,才能指定此值。 字符串[]
capacityReservationGroupID (容量预留组 ID) AKS 会将指定的代理池与容量预留组相关联。 字符串
计数 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 整数 (int)
creationData (创建数据) 如果使用快照创建/升级节点池,则用于指定源快照 ID 的 CreationData。 CreationData (创建数据)
enableAutoScaling 是否启用自动缩放程序 布尔
enableCustomCATrust 如果设置为 true,AKS 会将一个标签添加到节点,指示已启用该功能,并将守护程序集与主机服务一起部署到节点信任存储中,以便从用户提供的 base64 编码证书列表将自定义证书颁发机构同步到节点信任存储中。 默认为 false。 布尔
enableEncryptionAtHost 这仅在某些 VM 大小和某些 Azure 区域中受支持。 有关详细信息,请参阅:/azure/aks/enable-host-encryption 布尔
启用 FIPS 有关更多详细信息 ,请参阅添加已启用 FIPS 的节点池 布尔
启用节点公共 IP 某些方案可能需要节点池中的节点接收其自己的专用公共 IP 地址。 游戏工作负载就是一种常见方案,此时控制台需要直接连接到云虚拟机才能尽量减少画面跳跃。 有关详细信息,请参阅 为每个节点分配公共 IP。 默认值为 false。 布尔
enableUltraSSD 是否启用 UltraSSD 布尔
gateway简介 特定于网关模式下托管代理池的配置文件。 如果代理池模式不是网关,则无法设置此字段。 AgentPoolGateway配置文件
gpuInstance配置文件 用于为支持的 GPU VM SKU 指定 GPU MIG 实例配置文件的 GPUInstanceProfile。 “MIG1g”
“MIG2g”
“MIG3g”
“MIG4g”
“MIG7g”
gpu配置文件 代理池的 GPU 设置。 AgentPoolGPUPro文件
主机组 ID 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}。 有关详细信息,请参阅 Azure 专用主机 字符串
kubelet配置 代理池节点上的 Kubelet 配置。 KubeletConfig 实例
kubeletDiskType 确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。 “OS”
“临时”
linuxOSConfig Linux 代理节点的 OS 配置。 LinuxOSConfig
最大计数 自动缩放的最大节点数 整数 (int)
最大 Pod 可在节点上运行的 Pod 的最大数目。 整数 (int)
每日消息 一个 base64 编码的字符串,将在解码后写入 /etc/motd。 这允许自定义 Linux 节点当天的消息。 它不得为 Windows 节点指定。 它必须是静态字符串(即,将打印为原始字符串,而不是作为脚本执行)。 字符串
最小计数 自动缩放的最小节点数 整数 (int)
模式 群集必须随时至少有一个“系统”代理池。 有关代理池限制和最佳做法的其他信息,请参阅:/azure/aks/use-system-pools “Gateway”
“System”
“User”
网络简介 代理池的网络相关设置。 AgentPoolNetworkProfile
nodeInitialization污点 这些污点不会被 AKS 协调,并且可以通过 kubectl 调用删除。 创建节点池后,可以修改此字段,但在需要重新执行的其他作(例如节点映像升级)之前,不会使用新的污点重新创建节点。 这些污点允许在节点准备好接受工作负载之前运行所需的配置,例如“key1=value1:NoSchedule”,然后可以使用 kubectl taint nodes node1 key1=value1:NoSchedule- 字符串[]
nodeLabels (节点标签) 要跨代理池中的所有节点保留的节点标签。 ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodePublicIPPrefixID 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} 字符串
node污点 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 字符串[]
orchestratorVersion 支持修补程序版本 <major.minor.patch> 和 <major.minor> 。 指定 major.minor< 后>,会自动选择最新支持的修补程序版本。 创建代理池后,使用相同的 major.minor< 更新代理池>不会触发升级,即使有较新的修补程序版本可用也是如此。 最佳做法是将 AKS 群集中的所有节点池升级到相同的 Kubernetes 版本。 节点池版本必须与控制平面具有相同的主版本。 节点池次要版本必须位于控制平面版本的两个次要版本中。 节点池版本不能大于控制平面版本。 有关详细信息,请参阅 升级节点池 字符串
osDiskSizeGB OS 磁盘大小(以 GB 为单位)用于为主/代理池中的每个计算机指定磁盘大小。 如果指定 0,它将根据指定的 vmSize 应用默认 osDisk 大小。 int

约束:
最小值 = 0
最大值 = 2048
osDiskType 如果 VM 支持该 VM 并且缓存磁盘大于请求的 OSDiskSizeGB,则默认值为“临时”。 否则,默认为“Managed”。 创建后可能不会更改。 有关详细信息,请参阅 临时 OS “临时”
“Managed”
osSKU 指定代理池使用的 OS SKU。 如果未指定,则默认值为 Ubuntu(如果 OSType=Linux)或 Windows2019(如果 OSType=Windows)。 在 Windows2019 弃用后,默认的 Windows OSSKU 将更改为 Windows2022。 “AzureLinux”
“CBLMariner”
“水手”
“Ubuntu”
“Windows2019”
“Windows2022”
“WindowsAnnual”
操作系统类型 作系统类型。 默认值为 Linux。 “Linux”
“Windows”
podIPAllocationMode 代理池中 Pod 的 IP 分配模式。 必须与 podSubnetId 一起使用。 默认值为“DynamicIndividual”。 “DynamicIndividual”
“StaticBlock”
podSubnetID 如果省略,则会在节点子网上静态分配 Pod IP(有关详细信息,请参阅 vnetSubnetID)。 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} 字符串
powerState 首次创建代理池时,它最初正在运行。 可以通过将此字段设置为“已停止”来停止代理池。 已停止的代理池会停止其所有 VM,不会产生计费费用。 仅当代理池正在运行并且预配状态为“成功”时,才能停止代理池 PowerState 公司
proximityPlacementGroupID 邻近放置组的 ID。 字符串
scaleDownMode 这也会影响群集自动缩放程序的行为。 如果未指定,则默认为 Delete。 “Deallocate”
“Delete”
scaleSetEvictionPolicy 除非 scaleSetPriority 为“Spot”,否则无法指定此项。 如果未指定,则默认值为“Delete”。 “Deallocate”
“Delete”
scaleSetPriority 虚拟机规模集优先级。 如果未指定,则默认值为“Regular”。 “Regular”
“Spot”
securityProfile 代理池的安全设置。 AgentPoolSecurityProfile
现货最大价格 可能的值是大于零或 -1 的任何小数值,表示愿意支付任何按需价格。 有关现成定价的更多详细信息,请参阅 现成 VM 定价 整数 (int)
状态 包含有关代理池的只读信息。 AgentPoolStatus
标签 要保留在代理池虚拟机规模集上的标记。 ManagedClusterAgentPoolProfileProperties标签
类型 代理池的类型。 “AvailabilitySet”
“VirtualMachines”
“VirtualMachineScaleSets”
upgradeSettings 用于升级代理池的设置 AgentPoolUpgradeSettings
virtualMachineNodesStatus VirtualMachines 代理池中的节点的状态。 VirtualMachineNodes[]
virtualMachines配置文件 VirtualMachines 代理池上的规范。 VirtualMachines配置文件
vmSize VM 大小可用性因区域而异。 如果节点包含的计算资源(内存、cpu 等)Pod 不足,可能无法正常运行。 有关受限 VM 大小的更多详细信息,请参阅:/azure/aks/quotas-skus-regions 字符串
vnetSubnetID 如果未指定,将生成和使用 VNET 和子网。 如果未指定 podSubnetID,则这适用于节点和 Pod,否则它仅适用于节点。 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} 字符串
windows配置文件 Windows 代理池的特定配置文件。 AgentPoolWindows配置文件
workloadRuntime (工作负载运行时) 确定节点可以运行的工作负荷的类型。 “KataMshvVmIsolation”
“OCIContainer”
“WasmWasi”

ManagedClusterAgentPoolProfilePropertiesNodeLabels

名称 DESCRIPTION 价值

ManagedClusterAgentPoolProfileProperties标签

名称 DESCRIPTION 价值

手动缩放配置文件

名称 DESCRIPTION 价值
计数 节点数。 整数 (int)
大小 AKS 在创建和缩放时将使用的 VM 大小,例如“Standard_E4s_v3”、“Standard_E16s_v3”或“Standard_D16s_v5”。 字符串

端口范围

名称 DESCRIPTION 价值
预示 着 范围中包含的最大端口。 它的范围应从 1 到 65535,并且大于或等于 portStart。 int

约束:
最小值 = 1
最大值 = 65535
端口开始 范围中包含的最小端口。 它的范围应从 1 到 65535,并且小于或等于 portEnd。 int

约束:
最小值 = 1
最大值 = 65535
协议 端口的网络协议。 “TCP”
“UDP”

PowerState 公司

名称 DESCRIPTION 价值
代码 指示群集是正在运行还是已停止 “Running”
“Stopped”

ScaleProfile

名称 DESCRIPTION 价值
自动缩放 有关如何在预定义大小范围内自动缩放 VirtualMachines 代理池的规范。 任何
手动 有关如何将 VirtualMachines 代理池缩放为固定大小的规范。 ManualScaleProfile[]

SysctlConfig 配置

名称 DESCRIPTION 价值
fsAioMaxNr Sysctl 设置 fs.aio-max-nr。 整数 (int)
fsFileMax Sysctl 设置 fs.file-max。 整数 (int)
fsInotifyMaxUserWatches Sysctl 设置 fs.inotify.max_user_watches。 整数 (int)
fsNrOpen Sysctl 设置fs.nr_open。 整数 (int)
内核线程最大值 Sysctl 设置 kernel.threads-max。 整数 (int)
netCoreNetdevMax积压 Sysctl 设置net.core.netdev_max_backlog。 整数 (int)
netCoreOptmemMax Sysctl 设置net.core.optmem_max。 整数 (int)
netCoreRmem默认 Sysctl 设置net.core.rmem_default。 整数 (int)
netCoreRmemMax Sysctl 设置net.core.rmem_max。 整数 (int)
netCoreSomaxconn Sysctl 设置 net.core.somaxconn。 整数 (int)
netCoreWmem默认 Sysctl 设置net.core.wmem_default。 整数 (int)
netCoreWmemMax Sysctl 设置net.core.wmem_max。 整数 (int)
netIpv4IpLocalPortRange Sysctl 设置net.ipv4.ip_local_port_range。 字符串
netIpv4NeighDefaultGcThresh1 Sysctl 设置net.ipv4.neigh.default.gc_thresh1。 整数 (int)
netIpv4NeighDefaultGcThresh2 Sysctl 设置net.ipv4.neigh.default.gc_thresh2。 整数 (int)
netIpv4NeighDefaultGcThresh3 Sysctl 设置net.ipv4.neigh.default.gc_thresh3。 整数 (int)
netIpv4TcpFinTimeout Sysctl 设置net.ipv4.tcp_fin_timeout。 整数 (int)
netIpv4TcpkeepaliveIntvl Sysctl 设置net.ipv4.tcp_keepalive_intvl。 int

约束:
最小值 = 10
最大值 = 90
netIpv4TcpKeepalive探针 Sysctl 设置net.ipv4.tcp_keepalive_probes。 整数 (int)
netIpv4TcpKeepaliveTime Sysctl 设置net.ipv4.tcp_keepalive_time。 整数 (int)
netIpv4TcpMaxSynBacklog Sysctl 设置net.ipv4.tcp_max_syn_backlog。 整数 (int)
netIpv4TcpMaxTwBuckets Sysctl 设置net.ipv4.tcp_max_tw_buckets。 整数 (int)
netIpv4TcpTw重用 Sysctl 设置net.ipv4.tcp_tw_reuse。 布尔
netNetfilterNfConntrackBuckets Sysctl 设置net.netfilter.nf_conntrack_buckets。 int

约束:
最小值 = 65536
最大值 = 524288
netNetfilterNfConntrackMax Sysctl 设置net.netfilter.nf_conntrack_max。 int

约束:
最小值 = 131072
最大值 = 2097152
vmMaxMapCount Sysctl 设置 vm.max_map_count。 整数 (int)
vmSwappiness Sysctl 设置 vm.swappiness。 整数 (int)
vmVfsCachePressure Sysctl 设置vm.vfs_cache_pressure。 整数 (int)

VirtualMachine节点

名称 DESCRIPTION 价值
计数 节点数。 整数 (int)
大小 用于托管此节点组的代理的 VM 大小。 字符串

VirtualMachines配置文件

名称 DESCRIPTION 价值
缩放 有关如何缩放 VirtualMachines 代理池的规范。 ScaleProfile

ARM 模板资源定义

可以使用目标作部署 managedClusters/agentPools 资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.ContainerService/managedClusters/agentPools 资源,请将以下 JSON 添加到模板。

{
  "type": "Microsoft.ContainerService/managedClusters/agentPools",
  "apiVersion": "2025-02-02-preview",
  "name": "string",
  "properties": {
    "artifactStreamingProfile": {
      "enabled": "bool"
    },
    "availabilityZones": [ "string" ],
    "capacityReservationGroupID": "string",
    "count": "int",
    "creationData": {
      "sourceResourceId": "string"
    },
    "enableAutoScaling": "bool",
    "enableCustomCATrust": "bool",
    "enableEncryptionAtHost": "bool",
    "enableFIPS": "bool",
    "enableNodePublicIP": "bool",
    "enableUltraSSD": "bool",
    "gatewayProfile": {
      "publicIPPrefixSize": "int"
    },
    "gpuInstanceProfile": "string",
    "gpuProfile": {
      "driverType": "string",
      "installGPUDriver": "bool"
    },
    "hostGroupID": "string",
    "kubeletConfig": {
      "allowedUnsafeSysctls": [ "string" ],
      "containerLogMaxFiles": "int",
      "containerLogMaxSizeMB": "int",
      "cpuCfsQuota": "bool",
      "cpuCfsQuotaPeriod": "string",
      "cpuManagerPolicy": "string",
      "failSwapOn": "bool",
      "imageGcHighThreshold": "int",
      "imageGcLowThreshold": "int",
      "podMaxPids": "int",
      "seccompDefault": "string",
      "topologyManagerPolicy": "string"
    },
    "kubeletDiskType": "string",
    "linuxOSConfig": {
      "swapFileSizeMB": "int",
      "sysctls": {
        "fsAioMaxNr": "int",
        "fsFileMax": "int",
        "fsInotifyMaxUserWatches": "int",
        "fsNrOpen": "int",
        "kernelThreadsMax": "int",
        "netCoreNetdevMaxBacklog": "int",
        "netCoreOptmemMax": "int",
        "netCoreRmemDefault": "int",
        "netCoreRmemMax": "int",
        "netCoreSomaxconn": "int",
        "netCoreWmemDefault": "int",
        "netCoreWmemMax": "int",
        "netIpv4IpLocalPortRange": "string",
        "netIpv4NeighDefaultGcThresh1": "int",
        "netIpv4NeighDefaultGcThresh2": "int",
        "netIpv4NeighDefaultGcThresh3": "int",
        "netIpv4TcpFinTimeout": "int",
        "netIpv4TcpkeepaliveIntvl": "int",
        "netIpv4TcpKeepaliveProbes": "int",
        "netIpv4TcpKeepaliveTime": "int",
        "netIpv4TcpMaxSynBacklog": "int",
        "netIpv4TcpMaxTwBuckets": "int",
        "netIpv4TcpTwReuse": "bool",
        "netNetfilterNfConntrackBuckets": "int",
        "netNetfilterNfConntrackMax": "int",
        "vmMaxMapCount": "int",
        "vmSwappiness": "int",
        "vmVfsCachePressure": "int"
      },
      "transparentHugePageDefrag": "string",
      "transparentHugePageEnabled": "string"
    },
    "maxCount": "int",
    "maxPods": "int",
    "messageOfTheDay": "string",
    "minCount": "int",
    "mode": "string",
    "networkProfile": {
      "allowedHostPorts": [
        {
          "portEnd": "int",
          "portStart": "int",
          "protocol": "string"
        }
      ],
      "applicationSecurityGroups": [ "string" ],
      "nodePublicIPTags": [
        {
          "ipTagType": "string",
          "tag": "string"
        }
      ]
    },
    "nodeInitializationTaints": [ "string" ],
    "nodeLabels": {
      "{customized property}": "string"
    },
    "nodePublicIPPrefixID": "string",
    "nodeTaints": [ "string" ],
    "orchestratorVersion": "string",
    "osDiskSizeGB": "int",
    "osDiskType": "string",
    "osSKU": "string",
    "osType": "string",
    "podIPAllocationMode": "string",
    "podSubnetID": "string",
    "powerState": {
      "code": "string"
    },
    "proximityPlacementGroupID": "string",
    "scaleDownMode": "string",
    "scaleSetEvictionPolicy": "string",
    "scaleSetPriority": "string",
    "securityProfile": {
      "enableSecureBoot": "bool",
      "enableVTPM": "bool",
      "sshAccess": "string"
    },
    "spotMaxPrice": "int",
    "status": {
    },
    "tags": {
      "{customized property}": "string"
    },
    "type": "string",
    "upgradeSettings": {
      "drainTimeoutInMinutes": "int",
      "maxBlockedNodes": "string",
      "maxSurge": "string",
      "maxUnavailable": "string",
      "nodeSoakDurationInMinutes": "int",
      "undrainableNodeBehavior": "string"
    },
    "virtualMachineNodesStatus": [
      {
        "count": "int",
        "size": "string"
      }
    ],
    "virtualMachinesProfile": {
      "scale": {
        "autoscale": {},
        "manual": [
          {
            "count": "int",
            "size": "string"
          }
        ]
      }
    },
    "vmSize": "string",
    "vnetSubnetID": "string",
    "windowsProfile": {
      "disableOutboundNat": "bool"
    },
    "workloadRuntime": "string"
  }
}

属性值

Microsoft.ContainerService/managedClusters/agentPools

名称 DESCRIPTION 价值
apiVersion API 版本 “2025-02-02-预览”
姓名 资源名称 字符串

约束:
最小长度 = 1
最大长度 = 12
模式 = ^[a-z][a-z0-9]{0,11}$ (必需)
属性 代理池的属性。 ManagedClusterAgentPoolProfile属性
类型 资源类型 “Microsoft.ContainerService/managedClusters/agentPools”

AgentPoolArtifactStreamingProfile

名称 DESCRIPTION 价值
启用 项目流式处理通过按需映像加载加快节点上容器的冷启动速度。 若要使用此功能,容器映像还必须在 ACR 上启用项目流式处理。 如果未指定,则默认值为 false。 布尔

AgentPoolGateway配置文件

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

约束:
最小值 = 28
最大值 = 31

AgentPoolGPUPro文件

名称 DESCRIPTION 价值
driverType 指定要在创建 Windows 代理池时安装的 GPU 驱动程序的类型。 如果未提供,AKS 会根据系统兼容性选择驱动程序。 创建 AgentPool 后,无法更改此更改。 这不能在 Linux AgentPools 上设置。 对于 Linux AgentPools,根据系统兼容性选择驱动程序。 “CUDA”
“GRID”
安装 GPUDriver 如果代理池的 vmSize 包含 GPU,则默认值为 true,否则为 false。 仅当 VM 具有关联的 GPU 资源时,才能将 GPU 驱动程序安装设置为 true。 将此字段设置为 false 可防止自动安装 GPU 驱动程序。 在这种情况下,为了使 GPU 可用,用户必须自行执行 GPU 驱动程序安装。 布尔

AgentPoolNetworkProfile

名称 DESCRIPTION 价值
allowedHostPorts 允许访问的端口范围。 允许指定的范围重叠。 端口范围
applicationSecurity组 创建代理池时将关联的应用程序安全组的 ID。 字符串[]
nodePublicIP 标签 实例级公共 IP 的 IPTag。 IPTag 标签

AgentPoolSecurityProfile

名称 DESCRIPTION 价值
启用安全引导 安全启动是受信任的启动的一项功能,可确保只有已签名的作系统和驱动程序才能启动。 有关详细信息,请参阅 aka.ms/aks/trustedlaunch。 如果未指定,则默认值为 false。 布尔
启用 VTPM vTPM 是一项受信任的启动功能,用于为节点上本地保留的密钥和度量配置专用安全保管库。 有关详细信息,请参阅 aka.ms/aks/trustedlaunch。 如果未指定,则默认值为 false。 布尔
sshAccess 代理池的 SSH 访问方法。 “Disabled”
“LocalUser”

AgentPoolStatus

名称 DESCRIPTION 价值

AgentPoolUpgradeSettings

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

约束:
最小值 = 1
最大值 = 1440
最大阻塞节点数 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 maxSurge。 这必须始终大于或等于 maxSurge。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster 字符串
最大浪涌 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 10%。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster 字符串
max不可用 这可以设置为整数(例如'1')或百分比(例如'5%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 0。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster 字符串
nodeSoakDurationInMinutes 清空节点后以及重新映像节点并转到下一个节点之前等待的时间(以分钟为单位)。 如果未指定,则默认值为 0 分钟。 int

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

AgentPoolWindows配置文件

名称 DESCRIPTION 价值
disableOutboundNat 默认值为 false。 仅当群集 outboundType 为 NAT 网关且 Windows 代理池未启用节点公共 IP 时,才能禁用出站 NAT。 布尔

CreationData (创建数据)

名称 DESCRIPTION 价值
源资源 ID 这是用于创建目标对象的源对象的 ARM ID。 字符串

IPTag 标签

名称 DESCRIPTION 价值
ipTag类型 IP 标记类型。 示例:RoutingPreference。 字符串
标签 与公共 IP 关联的 IP 标记的值。 示例:Internet。 字符串

KubeletConfig 实例

名称 DESCRIPTION 价值
allowedUnsafeSysctls 允许的不安全 sysctls 或不安全的 sysctl 模式列表(以结尾 *)。 字符串[]
containerLogMax文件 一个容器可以存在的最大容器日志文件数。 该数字必须≥ 2。 int

约束:
最小值 = 2
容器日志最大大小MB 在轮换容器日志文件之前,容器日志文件的最大大小(例如 10Mi)。 整数 (int)
cpuCfs配额 默认值为 true。 布尔
cpuCfsQuotaPeriod 默认值为“100ms”。 有效值是包含可选分数和单位后缀的小数序列。 例如:“300ms”、“2h45m”。 支持的单位为“ns”、“us”、“ms”、“s”、“m”和“h”。 字符串
cpuManagerPolicy 默认值为“none”。 有关详细信息,请参阅 Kubernetes CPU 管理策略 。 允许的值为“none”和“static”。 字符串
failSwapOn 如果设置为 true,则如果在节点上启用了交换,则 Kubelet 将无法启动。 布尔
imageGcHighThreshold 如果要禁用映像垃圾回收,则设置为 100。 默认值为 85% 整数 (int)
imageGcLowThreshold 这不能设置为高于 imageGcHighThreshold。 默认值为 80% 整数 (int)
podMaxPids 每个 Pod 的最大进程数。 整数 (int)
seccomp默认 指定应用于所有工作负荷的默认 seccomp 配置文件。 如果未指定,则默认使用“未完成”。 “RuntimeDefault”
“Unconfined”
topologyManagerPolicy 有关详细信息,请参阅 Kubernetes 拓扑管理器。 默认值为“none”。 允许的值为“none”、“best-effort”、“restricted”和“single-numa-node”。 字符串

LinuxOSConfig

名称 DESCRIPTION 价值
swapFileSizeMB 将在每个节点上创建的交换文件的大小(以 MB 为单位)。 整数 (int)
sysctl 参数 Linux 代理节点的 Sysctl 设置。 SysctlConfig 配置
transparentHugePage碎片整理 有效值为“always”、“defer”、“defer+madvise”、“madvise”和“never”。 默认值为“madvise”。 有关详细信息,请参阅 透明巨页 字符串
transparentHugePage已启用 有效值为“always”、“madvise”和“never”。 默认值为“always”。 有关详细信息,请参阅 透明巨页 字符串

ManagedClusterAgentPoolProfile属性

名称 DESCRIPTION 价值
artifactStreamingProfile 用于在 AKS 上使用项目流式传输的配置。 AgentPoolArtifactStreamingProfile
可用性区域 要用于节点的可用性区域列表。 仅当 AgentPoolType 属性为“VirtualMachineScaleSets”时,才能指定此值。 字符串[]
capacityReservationGroupID (容量预留组 ID) AKS 会将指定的代理池与容量预留组相关联。 字符串
计数 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 整数 (int)
creationData (创建数据) 如果使用快照创建/升级节点池,则用于指定源快照 ID 的 CreationData。 CreationData (创建数据)
enableAutoScaling 是否启用自动缩放程序 布尔
enableCustomCATrust 如果设置为 true,AKS 会将一个标签添加到节点,指示已启用该功能,并将守护程序集与主机服务一起部署到节点信任存储中,以便从用户提供的 base64 编码证书列表将自定义证书颁发机构同步到节点信任存储中。 默认为 false。 布尔
enableEncryptionAtHost 这仅在某些 VM 大小和某些 Azure 区域中受支持。 有关详细信息,请参阅:/azure/aks/enable-host-encryption 布尔
启用 FIPS 有关更多详细信息 ,请参阅添加已启用 FIPS 的节点池 布尔
启用节点公共 IP 某些方案可能需要节点池中的节点接收其自己的专用公共 IP 地址。 游戏工作负载就是一种常见方案,此时控制台需要直接连接到云虚拟机才能尽量减少画面跳跃。 有关详细信息,请参阅 为每个节点分配公共 IP。 默认值为 false。 布尔
enableUltraSSD 是否启用 UltraSSD 布尔
gateway简介 特定于网关模式下托管代理池的配置文件。 如果代理池模式不是网关,则无法设置此字段。 AgentPoolGateway配置文件
gpuInstance配置文件 用于为支持的 GPU VM SKU 指定 GPU MIG 实例配置文件的 GPUInstanceProfile。 “MIG1g”
“MIG2g”
“MIG3g”
“MIG4g”
“MIG7g”
gpu配置文件 代理池的 GPU 设置。 AgentPoolGPUPro文件
主机组 ID 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}。 有关详细信息,请参阅 Azure 专用主机 字符串
kubelet配置 代理池节点上的 Kubelet 配置。 KubeletConfig 实例
kubeletDiskType 确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。 “OS”
“临时”
linuxOSConfig Linux 代理节点的 OS 配置。 LinuxOSConfig
最大计数 自动缩放的最大节点数 整数 (int)
最大 Pod 可在节点上运行的 Pod 的最大数目。 整数 (int)
每日消息 一个 base64 编码的字符串,将在解码后写入 /etc/motd。 这允许自定义 Linux 节点当天的消息。 它不得为 Windows 节点指定。 它必须是静态字符串(即,将打印为原始字符串,而不是作为脚本执行)。 字符串
最小计数 自动缩放的最小节点数 整数 (int)
模式 群集必须随时至少有一个“系统”代理池。 有关代理池限制和最佳做法的其他信息,请参阅:/azure/aks/use-system-pools “Gateway”
“System”
“User”
网络简介 代理池的网络相关设置。 AgentPoolNetworkProfile
nodeInitialization污点 这些污点不会被 AKS 协调,并且可以通过 kubectl 调用删除。 创建节点池后,可以修改此字段,但在需要重新执行的其他作(例如节点映像升级)之前,不会使用新的污点重新创建节点。 这些污点允许在节点准备好接受工作负载之前运行所需的配置,例如“key1=value1:NoSchedule”,然后可以使用 kubectl taint nodes node1 key1=value1:NoSchedule- 字符串[]
nodeLabels (节点标签) 要跨代理池中的所有节点保留的节点标签。 ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodePublicIPPrefixID 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} 字符串
node污点 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 字符串[]
orchestratorVersion 支持修补程序版本 <major.minor.patch> 和 <major.minor> 。 指定 major.minor< 后>,会自动选择最新支持的修补程序版本。 创建代理池后,使用相同的 major.minor< 更新代理池>不会触发升级,即使有较新的修补程序版本可用也是如此。 最佳做法是将 AKS 群集中的所有节点池升级到相同的 Kubernetes 版本。 节点池版本必须与控制平面具有相同的主版本。 节点池次要版本必须位于控制平面版本的两个次要版本中。 节点池版本不能大于控制平面版本。 有关详细信息,请参阅 升级节点池 字符串
osDiskSizeGB OS 磁盘大小(以 GB 为单位)用于为主/代理池中的每个计算机指定磁盘大小。 如果指定 0,它将根据指定的 vmSize 应用默认 osDisk 大小。 int

约束:
最小值 = 0
最大值 = 2048
osDiskType 如果 VM 支持该 VM 并且缓存磁盘大于请求的 OSDiskSizeGB,则默认值为“临时”。 否则,默认为“Managed”。 创建后可能不会更改。 有关详细信息,请参阅 临时 OS “临时”
“Managed”
osSKU 指定代理池使用的 OS SKU。 如果未指定,则默认值为 Ubuntu(如果 OSType=Linux)或 Windows2019(如果 OSType=Windows)。 在 Windows2019 弃用后,默认的 Windows OSSKU 将更改为 Windows2022。 “AzureLinux”
“CBLMariner”
“水手”
“Ubuntu”
“Windows2019”
“Windows2022”
“WindowsAnnual”
操作系统类型 作系统类型。 默认值为 Linux。 “Linux”
“Windows”
podIPAllocationMode 代理池中 Pod 的 IP 分配模式。 必须与 podSubnetId 一起使用。 默认值为“DynamicIndividual”。 “DynamicIndividual”
“StaticBlock”
podSubnetID 如果省略,则会在节点子网上静态分配 Pod IP(有关详细信息,请参阅 vnetSubnetID)。 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} 字符串
powerState 首次创建代理池时,它最初正在运行。 可以通过将此字段设置为“已停止”来停止代理池。 已停止的代理池会停止其所有 VM,不会产生计费费用。 仅当代理池正在运行并且预配状态为“成功”时,才能停止代理池 PowerState 公司
proximityPlacementGroupID 邻近放置组的 ID。 字符串
scaleDownMode 这也会影响群集自动缩放程序的行为。 如果未指定,则默认为 Delete。 “Deallocate”
“Delete”
scaleSetEvictionPolicy 除非 scaleSetPriority 为“Spot”,否则无法指定此项。 如果未指定,则默认值为“Delete”。 “Deallocate”
“Delete”
scaleSetPriority 虚拟机规模集优先级。 如果未指定,则默认值为“Regular”。 “Regular”
“Spot”
securityProfile 代理池的安全设置。 AgentPoolSecurityProfile
现货最大价格 可能的值是大于零或 -1 的任何小数值,表示愿意支付任何按需价格。 有关现成定价的更多详细信息,请参阅 现成 VM 定价 整数 (int)
状态 包含有关代理池的只读信息。 AgentPoolStatus
标签 要保留在代理池虚拟机规模集上的标记。 ManagedClusterAgentPoolProfileProperties标签
类型 代理池的类型。 “AvailabilitySet”
“VirtualMachines”
“VirtualMachineScaleSets”
upgradeSettings 用于升级代理池的设置 AgentPoolUpgradeSettings
virtualMachineNodesStatus VirtualMachines 代理池中的节点的状态。 VirtualMachineNodes[]
virtualMachines配置文件 VirtualMachines 代理池上的规范。 VirtualMachines配置文件
vmSize VM 大小可用性因区域而异。 如果节点包含的计算资源(内存、cpu 等)Pod 不足,可能无法正常运行。 有关受限 VM 大小的更多详细信息,请参阅:/azure/aks/quotas-skus-regions 字符串
vnetSubnetID 如果未指定,将生成和使用 VNET 和子网。 如果未指定 podSubnetID,则这适用于节点和 Pod,否则它仅适用于节点。 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} 字符串
windows配置文件 Windows 代理池的特定配置文件。 AgentPoolWindows配置文件
workloadRuntime (工作负载运行时) 确定节点可以运行的工作负荷的类型。 “KataMshvVmIsolation”
“OCIContainer”
“WasmWasi”

ManagedClusterAgentPoolProfilePropertiesNodeLabels

名称 DESCRIPTION 价值

ManagedClusterAgentPoolProfileProperties标签

名称 DESCRIPTION 价值

手动缩放配置文件

名称 DESCRIPTION 价值
计数 节点数。 整数 (int)
大小 AKS 在创建和缩放时将使用的 VM 大小,例如“Standard_E4s_v3”、“Standard_E16s_v3”或“Standard_D16s_v5”。 字符串

端口范围

名称 DESCRIPTION 价值
预示 着 范围中包含的最大端口。 它的范围应从 1 到 65535,并且大于或等于 portStart。 int

约束:
最小值 = 1
最大值 = 65535
端口开始 范围中包含的最小端口。 它的范围应从 1 到 65535,并且小于或等于 portEnd。 int

约束:
最小值 = 1
最大值 = 65535
协议 端口的网络协议。 “TCP”
“UDP”

PowerState 公司

名称 DESCRIPTION 价值
代码 指示群集是正在运行还是已停止 “Running”
“Stopped”

ScaleProfile

名称 DESCRIPTION 价值
自动缩放 有关如何在预定义大小范围内自动缩放 VirtualMachines 代理池的规范。 任何
手动 有关如何将 VirtualMachines 代理池缩放为固定大小的规范。 ManualScaleProfile[]

SysctlConfig 配置

名称 DESCRIPTION 价值
fsAioMaxNr Sysctl 设置 fs.aio-max-nr。 整数 (int)
fsFileMax Sysctl 设置 fs.file-max。 整数 (int)
fsInotifyMaxUserWatches Sysctl 设置 fs.inotify.max_user_watches。 整数 (int)
fsNrOpen Sysctl 设置fs.nr_open。 整数 (int)
内核线程最大值 Sysctl 设置 kernel.threads-max。 整数 (int)
netCoreNetdevMax积压 Sysctl 设置net.core.netdev_max_backlog。 整数 (int)
netCoreOptmemMax Sysctl 设置net.core.optmem_max。 整数 (int)
netCoreRmem默认 Sysctl 设置net.core.rmem_default。 整数 (int)
netCoreRmemMax Sysctl 设置net.core.rmem_max。 整数 (int)
netCoreSomaxconn Sysctl 设置 net.core.somaxconn。 整数 (int)
netCoreWmem默认 Sysctl 设置net.core.wmem_default。 整数 (int)
netCoreWmemMax Sysctl 设置net.core.wmem_max。 整数 (int)
netIpv4IpLocalPortRange Sysctl 设置net.ipv4.ip_local_port_range。 字符串
netIpv4NeighDefaultGcThresh1 Sysctl 设置net.ipv4.neigh.default.gc_thresh1。 整数 (int)
netIpv4NeighDefaultGcThresh2 Sysctl 设置net.ipv4.neigh.default.gc_thresh2。 整数 (int)
netIpv4NeighDefaultGcThresh3 Sysctl 设置net.ipv4.neigh.default.gc_thresh3。 整数 (int)
netIpv4TcpFinTimeout Sysctl 设置net.ipv4.tcp_fin_timeout。 整数 (int)
netIpv4TcpkeepaliveIntvl Sysctl 设置net.ipv4.tcp_keepalive_intvl。 int

约束:
最小值 = 10
最大值 = 90
netIpv4TcpKeepalive探针 Sysctl 设置net.ipv4.tcp_keepalive_probes。 整数 (int)
netIpv4TcpKeepaliveTime Sysctl 设置net.ipv4.tcp_keepalive_time。 整数 (int)
netIpv4TcpMaxSynBacklog Sysctl 设置net.ipv4.tcp_max_syn_backlog。 整数 (int)
netIpv4TcpMaxTwBuckets Sysctl 设置net.ipv4.tcp_max_tw_buckets。 整数 (int)
netIpv4TcpTw重用 Sysctl 设置net.ipv4.tcp_tw_reuse。 布尔
netNetfilterNfConntrackBuckets Sysctl 设置net.netfilter.nf_conntrack_buckets。 int

约束:
最小值 = 65536
最大值 = 524288
netNetfilterNfConntrackMax Sysctl 设置net.netfilter.nf_conntrack_max。 int

约束:
最小值 = 131072
最大值 = 2097152
vmMaxMapCount Sysctl 设置 vm.max_map_count。 整数 (int)
vmSwappiness Sysctl 设置 vm.swappiness。 整数 (int)
vmVfsCachePressure Sysctl 设置vm.vfs_cache_pressure。 整数 (int)

VirtualMachine节点

名称 DESCRIPTION 价值
计数 节点数。 整数 (int)
大小 用于托管此节点组的代理的 VM 大小。 字符串

VirtualMachines配置文件

名称 DESCRIPTION 价值
缩放 有关如何缩放 VirtualMachines 代理池的规范。 ScaleProfile

用法示例

Azure 快速入门模板

以下 Azure 快速入门模板 部署此资源类型。

模板 DESCRIPTION
为 Azure ML 部署 AKS 群集

部署到 Azure
使用此模板可以部署可附加到 Azure ML 的符合条目的 AKS 群集

Terraform (AzAPI 提供程序)资源定义

可以使用目标作部署 managedClusters/agentPools 资源类型:

  • 资源组

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.ContainerService/managedClusters/agentPools 资源,请将以下 Terraform 添加到模板。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ContainerService/managedClusters/agentPools@2025-02-02-preview"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      artifactStreamingProfile = {
        enabled = bool
      }
      availabilityZones = [
        "string"
      ]
      capacityReservationGroupID = "string"
      count = int
      creationData = {
        sourceResourceId = "string"
      }
      enableAutoScaling = bool
      enableCustomCATrust = bool
      enableEncryptionAtHost = bool
      enableFIPS = bool
      enableNodePublicIP = bool
      enableUltraSSD = bool
      gatewayProfile = {
        publicIPPrefixSize = int
      }
      gpuInstanceProfile = "string"
      gpuProfile = {
        driverType = "string"
        installGPUDriver = bool
      }
      hostGroupID = "string"
      kubeletConfig = {
        allowedUnsafeSysctls = [
          "string"
        ]
        containerLogMaxFiles = int
        containerLogMaxSizeMB = int
        cpuCfsQuota = bool
        cpuCfsQuotaPeriod = "string"
        cpuManagerPolicy = "string"
        failSwapOn = bool
        imageGcHighThreshold = int
        imageGcLowThreshold = int
        podMaxPids = int
        seccompDefault = "string"
        topologyManagerPolicy = "string"
      }
      kubeletDiskType = "string"
      linuxOSConfig = {
        swapFileSizeMB = int
        sysctls = {
          fsAioMaxNr = int
          fsFileMax = int
          fsInotifyMaxUserWatches = int
          fsNrOpen = int
          kernelThreadsMax = int
          netCoreNetdevMaxBacklog = int
          netCoreOptmemMax = int
          netCoreRmemDefault = int
          netCoreRmemMax = int
          netCoreSomaxconn = int
          netCoreWmemDefault = int
          netCoreWmemMax = int
          netIpv4IpLocalPortRange = "string"
          netIpv4NeighDefaultGcThresh1 = int
          netIpv4NeighDefaultGcThresh2 = int
          netIpv4NeighDefaultGcThresh3 = int
          netIpv4TcpFinTimeout = int
          netIpv4TcpkeepaliveIntvl = int
          netIpv4TcpKeepaliveProbes = int
          netIpv4TcpKeepaliveTime = int
          netIpv4TcpMaxSynBacklog = int
          netIpv4TcpMaxTwBuckets = int
          netIpv4TcpTwReuse = bool
          netNetfilterNfConntrackBuckets = int
          netNetfilterNfConntrackMax = int
          vmMaxMapCount = int
          vmSwappiness = int
          vmVfsCachePressure = int
        }
        transparentHugePageDefrag = "string"
        transparentHugePageEnabled = "string"
      }
      maxCount = int
      maxPods = int
      messageOfTheDay = "string"
      minCount = int
      mode = "string"
      networkProfile = {
        allowedHostPorts = [
          {
            portEnd = int
            portStart = int
            protocol = "string"
          }
        ]
        applicationSecurityGroups = [
          "string"
        ]
        nodePublicIPTags = [
          {
            ipTagType = "string"
            tag = "string"
          }
        ]
      }
      nodeInitializationTaints = [
        "string"
      ]
      nodeLabels = {
        {customized property} = "string"
      }
      nodePublicIPPrefixID = "string"
      nodeTaints = [
        "string"
      ]
      orchestratorVersion = "string"
      osDiskSizeGB = int
      osDiskType = "string"
      osSKU = "string"
      osType = "string"
      podIPAllocationMode = "string"
      podSubnetID = "string"
      powerState = {
        code = "string"
      }
      proximityPlacementGroupID = "string"
      scaleDownMode = "string"
      scaleSetEvictionPolicy = "string"
      scaleSetPriority = "string"
      securityProfile = {
        enableSecureBoot = bool
        enableVTPM = bool
        sshAccess = "string"
      }
      spotMaxPrice = int
      status = {
      }
      tags = {
        {customized property} = "string"
      }
      type = "string"
      upgradeSettings = {
        drainTimeoutInMinutes = int
        maxBlockedNodes = "string"
        maxSurge = "string"
        maxUnavailable = "string"
        nodeSoakDurationInMinutes = int
        undrainableNodeBehavior = "string"
      }
      virtualMachineNodesStatus = [
        {
          count = int
          size = "string"
        }
      ]
      virtualMachinesProfile = {
        scale = {
          autoscale = ?
          manual = [
            {
              count = int
              size = "string"
            }
          ]
        }
      }
      vmSize = "string"
      vnetSubnetID = "string"
      windowsProfile = {
        disableOutboundNat = bool
      }
      workloadRuntime = "string"
    }
  }
}

属性值

Microsoft.ContainerService/managedClusters/agentPools

名称 DESCRIPTION 价值
姓名 资源名称 字符串

约束:
最小长度 = 1
最大长度 = 12
模式 = ^[a-z][a-z0-9]{0,11}$ (必需)
parent_id 此资源的父资源的 ID。 类型资源的 ID: managedClusters
属性 代理池的属性。 ManagedClusterAgentPoolProfile属性
类型 资源类型 “Microsoft.ContainerService/managedClusters/agentPools@2025-02-02-preview”

AgentPoolArtifactStreamingProfile

名称 DESCRIPTION 价值
启用 项目流式处理通过按需映像加载加快节点上容器的冷启动速度。 若要使用此功能,容器映像还必须在 ACR 上启用项目流式处理。 如果未指定,则默认值为 false。 布尔

AgentPoolGateway配置文件

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

约束:
最小值 = 28
最大值 = 31

AgentPoolGPUPro文件

名称 DESCRIPTION 价值
driverType 指定要在创建 Windows 代理池时安装的 GPU 驱动程序的类型。 如果未提供,AKS 会根据系统兼容性选择驱动程序。 创建 AgentPool 后,无法更改此更改。 这不能在 Linux AgentPools 上设置。 对于 Linux AgentPools,根据系统兼容性选择驱动程序。 “CUDA”
“GRID”
安装 GPUDriver 如果代理池的 vmSize 包含 GPU,则默认值为 true,否则为 false。 仅当 VM 具有关联的 GPU 资源时,才能将 GPU 驱动程序安装设置为 true。 将此字段设置为 false 可防止自动安装 GPU 驱动程序。 在这种情况下,为了使 GPU 可用,用户必须自行执行 GPU 驱动程序安装。 布尔

AgentPoolNetworkProfile

名称 DESCRIPTION 价值
allowedHostPorts 允许访问的端口范围。 允许指定的范围重叠。 端口范围
applicationSecurity组 创建代理池时将关联的应用程序安全组的 ID。 字符串[]
nodePublicIP 标签 实例级公共 IP 的 IPTag。 IPTag 标签

AgentPoolSecurityProfile

名称 DESCRIPTION 价值
启用安全引导 安全启动是受信任的启动的一项功能,可确保只有已签名的作系统和驱动程序才能启动。 有关详细信息,请参阅 aka.ms/aks/trustedlaunch。 如果未指定,则默认值为 false。 布尔
启用 VTPM vTPM 是一项受信任的启动功能,用于为节点上本地保留的密钥和度量配置专用安全保管库。 有关详细信息,请参阅 aka.ms/aks/trustedlaunch。 如果未指定,则默认值为 false。 布尔
sshAccess 代理池的 SSH 访问方法。 “Disabled”
“LocalUser”

AgentPoolStatus

名称 DESCRIPTION 价值

AgentPoolUpgradeSettings

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

约束:
最小值 = 1
最大值 = 1440
最大阻塞节点数 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 maxSurge。 这必须始终大于或等于 maxSurge。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster 字符串
最大浪涌 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 10%。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster 字符串
max不可用 这可以设置为整数(例如'1')或百分比(例如'5%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 0。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster 字符串
nodeSoakDurationInMinutes 清空节点后以及重新映像节点并转到下一个节点之前等待的时间(以分钟为单位)。 如果未指定,则默认值为 0 分钟。 int

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

AgentPoolWindows配置文件

名称 DESCRIPTION 价值
disableOutboundNat 默认值为 false。 仅当群集 outboundType 为 NAT 网关且 Windows 代理池未启用节点公共 IP 时,才能禁用出站 NAT。 布尔

CreationData (创建数据)

名称 DESCRIPTION 价值
源资源 ID 这是用于创建目标对象的源对象的 ARM ID。 字符串

IPTag 标签

名称 DESCRIPTION 价值
ipTag类型 IP 标记类型。 示例:RoutingPreference。 字符串
标签 与公共 IP 关联的 IP 标记的值。 示例:Internet。 字符串

KubeletConfig 实例

名称 DESCRIPTION 价值
allowedUnsafeSysctls 允许的不安全 sysctls 或不安全的 sysctl 模式列表(以结尾 *)。 字符串[]
containerLogMax文件 一个容器可以存在的最大容器日志文件数。 该数字必须≥ 2。 int

约束:
最小值 = 2
容器日志最大大小MB 在轮换容器日志文件之前,容器日志文件的最大大小(例如 10Mi)。 整数 (int)
cpuCfs配额 默认值为 true。 布尔
cpuCfsQuotaPeriod 默认值为“100ms”。 有效值是包含可选分数和单位后缀的小数序列。 例如:“300ms”、“2h45m”。 支持的单位为“ns”、“us”、“ms”、“s”、“m”和“h”。 字符串
cpuManagerPolicy 默认值为“none”。 有关详细信息,请参阅 Kubernetes CPU 管理策略 。 允许的值为“none”和“static”。 字符串
failSwapOn 如果设置为 true,则如果在节点上启用了交换,则 Kubelet 将无法启动。 布尔
imageGcHighThreshold 如果要禁用映像垃圾回收,则设置为 100。 默认值为 85% 整数 (int)
imageGcLowThreshold 这不能设置为高于 imageGcHighThreshold。 默认值为 80% 整数 (int)
podMaxPids 每个 Pod 的最大进程数。 整数 (int)
seccomp默认 指定应用于所有工作负荷的默认 seccomp 配置文件。 如果未指定,则默认使用“未完成”。 “RuntimeDefault”
“Unconfined”
topologyManagerPolicy 有关详细信息,请参阅 Kubernetes 拓扑管理器。 默认值为“none”。 允许的值为“none”、“best-effort”、“restricted”和“single-numa-node”。 字符串

LinuxOSConfig

名称 DESCRIPTION 价值
swapFileSizeMB 将在每个节点上创建的交换文件的大小(以 MB 为单位)。 整数 (int)
sysctl 参数 Linux 代理节点的 Sysctl 设置。 SysctlConfig 配置
transparentHugePage碎片整理 有效值为“always”、“defer”、“defer+madvise”、“madvise”和“never”。 默认值为“madvise”。 有关详细信息,请参阅 透明巨页 字符串
transparentHugePage已启用 有效值为“always”、“madvise”和“never”。 默认值为“always”。 有关详细信息,请参阅 透明巨页 字符串

ManagedClusterAgentPoolProfile属性

名称 DESCRIPTION 价值
artifactStreamingProfile 用于在 AKS 上使用项目流式传输的配置。 AgentPoolArtifactStreamingProfile
可用性区域 要用于节点的可用性区域列表。 仅当 AgentPoolType 属性为“VirtualMachineScaleSets”时,才能指定此值。 字符串[]
capacityReservationGroupID (容量预留组 ID) AKS 会将指定的代理池与容量预留组相关联。 字符串
计数 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 整数 (int)
creationData (创建数据) 如果使用快照创建/升级节点池,则用于指定源快照 ID 的 CreationData。 CreationData (创建数据)
enableAutoScaling 是否启用自动缩放程序 布尔
enableCustomCATrust 如果设置为 true,AKS 会将一个标签添加到节点,指示已启用该功能,并将守护程序集与主机服务一起部署到节点信任存储中,以便从用户提供的 base64 编码证书列表将自定义证书颁发机构同步到节点信任存储中。 默认为 false。 布尔
enableEncryptionAtHost 这仅在某些 VM 大小和某些 Azure 区域中受支持。 有关详细信息,请参阅:/azure/aks/enable-host-encryption 布尔
启用 FIPS 有关更多详细信息 ,请参阅添加已启用 FIPS 的节点池 布尔
启用节点公共 IP 某些方案可能需要节点池中的节点接收其自己的专用公共 IP 地址。 游戏工作负载就是一种常见方案,此时控制台需要直接连接到云虚拟机才能尽量减少画面跳跃。 有关详细信息,请参阅 为每个节点分配公共 IP。 默认值为 false。 布尔
enableUltraSSD 是否启用 UltraSSD 布尔
gateway简介 特定于网关模式下托管代理池的配置文件。 如果代理池模式不是网关,则无法设置此字段。 AgentPoolGateway配置文件
gpuInstance配置文件 用于为支持的 GPU VM SKU 指定 GPU MIG 实例配置文件的 GPUInstanceProfile。 “MIG1g”
“MIG2g”
“MIG3g”
“MIG4g”
“MIG7g”
gpu配置文件 代理池的 GPU 设置。 AgentPoolGPUPro文件
主机组 ID 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}。 有关详细信息,请参阅 Azure 专用主机 字符串
kubelet配置 代理池节点上的 Kubelet 配置。 KubeletConfig 实例
kubeletDiskType 确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。 “OS”
“临时”
linuxOSConfig Linux 代理节点的 OS 配置。 LinuxOSConfig
最大计数 自动缩放的最大节点数 整数 (int)
最大 Pod 可在节点上运行的 Pod 的最大数目。 整数 (int)
每日消息 一个 base64 编码的字符串,将在解码后写入 /etc/motd。 这允许自定义 Linux 节点当天的消息。 它不得为 Windows 节点指定。 它必须是静态字符串(即,将打印为原始字符串,而不是作为脚本执行)。 字符串
最小计数 自动缩放的最小节点数 整数 (int)
模式 群集必须随时至少有一个“系统”代理池。 有关代理池限制和最佳做法的其他信息,请参阅:/azure/aks/use-system-pools “Gateway”
“System”
“User”
网络简介 代理池的网络相关设置。 AgentPoolNetworkProfile
nodeInitialization污点 这些污点不会被 AKS 协调,并且可以通过 kubectl 调用删除。 创建节点池后,可以修改此字段,但在需要重新执行的其他作(例如节点映像升级)之前,不会使用新的污点重新创建节点。 这些污点允许在节点准备好接受工作负载之前运行所需的配置,例如“key1=value1:NoSchedule”,然后可以使用 kubectl taint nodes node1 key1=value1:NoSchedule- 字符串[]
nodeLabels (节点标签) 要跨代理池中的所有节点保留的节点标签。 ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodePublicIPPrefixID 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} 字符串
node污点 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 字符串[]
orchestratorVersion 支持修补程序版本 <major.minor.patch> 和 <major.minor> 。 指定 major.minor< 后>,会自动选择最新支持的修补程序版本。 创建代理池后,使用相同的 major.minor< 更新代理池>不会触发升级,即使有较新的修补程序版本可用也是如此。 最佳做法是将 AKS 群集中的所有节点池升级到相同的 Kubernetes 版本。 节点池版本必须与控制平面具有相同的主版本。 节点池次要版本必须位于控制平面版本的两个次要版本中。 节点池版本不能大于控制平面版本。 有关详细信息,请参阅 升级节点池 字符串
osDiskSizeGB OS 磁盘大小(以 GB 为单位)用于为主/代理池中的每个计算机指定磁盘大小。 如果指定 0,它将根据指定的 vmSize 应用默认 osDisk 大小。 int

约束:
最小值 = 0
最大值 = 2048
osDiskType 如果 VM 支持该 VM 并且缓存磁盘大于请求的 OSDiskSizeGB,则默认值为“临时”。 否则,默认为“Managed”。 创建后可能不会更改。 有关详细信息,请参阅 临时 OS “临时”
“Managed”
osSKU 指定代理池使用的 OS SKU。 如果未指定,则默认值为 Ubuntu(如果 OSType=Linux)或 Windows2019(如果 OSType=Windows)。 在 Windows2019 弃用后,默认的 Windows OSSKU 将更改为 Windows2022。 “AzureLinux”
“CBLMariner”
“水手”
“Ubuntu”
“Windows2019”
“Windows2022”
“WindowsAnnual”
操作系统类型 作系统类型。 默认值为 Linux。 “Linux”
“Windows”
podIPAllocationMode 代理池中 Pod 的 IP 分配模式。 必须与 podSubnetId 一起使用。 默认值为“DynamicIndividual”。 “DynamicIndividual”
“StaticBlock”
podSubnetID 如果省略,则会在节点子网上静态分配 Pod IP(有关详细信息,请参阅 vnetSubnetID)。 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} 字符串
powerState 首次创建代理池时,它最初正在运行。 可以通过将此字段设置为“已停止”来停止代理池。 已停止的代理池会停止其所有 VM,不会产生计费费用。 仅当代理池正在运行并且预配状态为“成功”时,才能停止代理池 PowerState 公司
proximityPlacementGroupID 邻近放置组的 ID。 字符串
scaleDownMode 这也会影响群集自动缩放程序的行为。 如果未指定,则默认为 Delete。 “Deallocate”
“Delete”
scaleSetEvictionPolicy 除非 scaleSetPriority 为“Spot”,否则无法指定此项。 如果未指定,则默认值为“Delete”。 “Deallocate”
“Delete”
scaleSetPriority 虚拟机规模集优先级。 如果未指定,则默认值为“Regular”。 “Regular”
“Spot”
securityProfile 代理池的安全设置。 AgentPoolSecurityProfile
现货最大价格 可能的值是大于零或 -1 的任何小数值,表示愿意支付任何按需价格。 有关现成定价的更多详细信息,请参阅 现成 VM 定价 整数 (int)
状态 包含有关代理池的只读信息。 AgentPoolStatus
标签 要保留在代理池虚拟机规模集上的标记。 ManagedClusterAgentPoolProfileProperties标签
类型 代理池的类型。 “AvailabilitySet”
“VirtualMachines”
“VirtualMachineScaleSets”
upgradeSettings 用于升级代理池的设置 AgentPoolUpgradeSettings
virtualMachineNodesStatus VirtualMachines 代理池中的节点的状态。 VirtualMachineNodes[]
virtualMachines配置文件 VirtualMachines 代理池上的规范。 VirtualMachines配置文件
vmSize VM 大小可用性因区域而异。 如果节点包含的计算资源(内存、cpu 等)Pod 不足,可能无法正常运行。 有关受限 VM 大小的更多详细信息,请参阅:/azure/aks/quotas-skus-regions 字符串
vnetSubnetID 如果未指定,将生成和使用 VNET 和子网。 如果未指定 podSubnetID,则这适用于节点和 Pod,否则它仅适用于节点。 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} 字符串
windows配置文件 Windows 代理池的特定配置文件。 AgentPoolWindows配置文件
workloadRuntime (工作负载运行时) 确定节点可以运行的工作负荷的类型。 “KataMshvVmIsolation”
“OCIContainer”
“WasmWasi”

ManagedClusterAgentPoolProfilePropertiesNodeLabels

名称 DESCRIPTION 价值

ManagedClusterAgentPoolProfileProperties标签

名称 DESCRIPTION 价值

手动缩放配置文件

名称 DESCRIPTION 价值
计数 节点数。 整数 (int)
大小 AKS 在创建和缩放时将使用的 VM 大小,例如“Standard_E4s_v3”、“Standard_E16s_v3”或“Standard_D16s_v5”。 字符串

端口范围

名称 DESCRIPTION 价值
预示 着 范围中包含的最大端口。 它的范围应从 1 到 65535,并且大于或等于 portStart。 int

约束:
最小值 = 1
最大值 = 65535
端口开始 范围中包含的最小端口。 它的范围应从 1 到 65535,并且小于或等于 portEnd。 int

约束:
最小值 = 1
最大值 = 65535
协议 端口的网络协议。 “TCP”
“UDP”

PowerState 公司

名称 DESCRIPTION 价值
代码 指示群集是正在运行还是已停止 “Running”
“Stopped”

ScaleProfile

名称 DESCRIPTION 价值
自动缩放 有关如何在预定义大小范围内自动缩放 VirtualMachines 代理池的规范。 任何
手动 有关如何将 VirtualMachines 代理池缩放为固定大小的规范。 ManualScaleProfile[]

SysctlConfig 配置

名称 DESCRIPTION 价值
fsAioMaxNr Sysctl 设置 fs.aio-max-nr。 整数 (int)
fsFileMax Sysctl 设置 fs.file-max。 整数 (int)
fsInotifyMaxUserWatches Sysctl 设置 fs.inotify.max_user_watches。 整数 (int)
fsNrOpen Sysctl 设置fs.nr_open。 整数 (int)
内核线程最大值 Sysctl 设置 kernel.threads-max。 整数 (int)
netCoreNetdevMax积压 Sysctl 设置net.core.netdev_max_backlog。 整数 (int)
netCoreOptmemMax Sysctl 设置net.core.optmem_max。 整数 (int)
netCoreRmem默认 Sysctl 设置net.core.rmem_default。 整数 (int)
netCoreRmemMax Sysctl 设置net.core.rmem_max。 整数 (int)
netCoreSomaxconn Sysctl 设置 net.core.somaxconn。 整数 (int)
netCoreWmem默认 Sysctl 设置net.core.wmem_default。 整数 (int)
netCoreWmemMax Sysctl 设置net.core.wmem_max。 整数 (int)
netIpv4IpLocalPortRange Sysctl 设置net.ipv4.ip_local_port_range。 字符串
netIpv4NeighDefaultGcThresh1 Sysctl 设置net.ipv4.neigh.default.gc_thresh1。 整数 (int)
netIpv4NeighDefaultGcThresh2 Sysctl 设置net.ipv4.neigh.default.gc_thresh2。 整数 (int)
netIpv4NeighDefaultGcThresh3 Sysctl 设置net.ipv4.neigh.default.gc_thresh3。 整数 (int)
netIpv4TcpFinTimeout Sysctl 设置net.ipv4.tcp_fin_timeout。 整数 (int)
netIpv4TcpkeepaliveIntvl Sysctl 设置net.ipv4.tcp_keepalive_intvl。 int

约束:
最小值 = 10
最大值 = 90
netIpv4TcpKeepalive探针 Sysctl 设置net.ipv4.tcp_keepalive_probes。 整数 (int)
netIpv4TcpKeepaliveTime Sysctl 设置net.ipv4.tcp_keepalive_time。 整数 (int)
netIpv4TcpMaxSynBacklog Sysctl 设置net.ipv4.tcp_max_syn_backlog。 整数 (int)
netIpv4TcpMaxTwBuckets Sysctl 设置net.ipv4.tcp_max_tw_buckets。 整数 (int)
netIpv4TcpTw重用 Sysctl 设置net.ipv4.tcp_tw_reuse。 布尔
netNetfilterNfConntrackBuckets Sysctl 设置net.netfilter.nf_conntrack_buckets。 int

约束:
最小值 = 65536
最大值 = 524288
netNetfilterNfConntrackMax Sysctl 设置net.netfilter.nf_conntrack_max。 int

约束:
最小值 = 131072
最大值 = 2097152
vmMaxMapCount Sysctl 设置 vm.max_map_count。 整数 (int)
vmSwappiness Sysctl 设置 vm.swappiness。 整数 (int)
vmVfsCachePressure Sysctl 设置vm.vfs_cache_pressure。 整数 (int)

VirtualMachine节点

名称 DESCRIPTION 价值
计数 节点数。 整数 (int)
大小 用于托管此节点组的代理的 VM 大小。 字符串

VirtualMachines配置文件

名称 DESCRIPTION 价值
缩放 有关如何缩放 VirtualMachines 代理池的规范。 ScaleProfile