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

Microsoft.ContainerService managedClusters/agentPools 2025-02-01

Bicep 资源定义

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

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

资源格式

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

resource symbolicname 'Microsoft.ContainerService/managedClusters/agentPools@2025-02-01' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    availabilityZones: [
      'string'
    ]
    capacityReservationGroupID: 'string'
    count: int
    creationData: {
      sourceResourceId: 'string'
    }
    enableAutoScaling: bool
    enableEncryptionAtHost: bool
    enableFIPS: bool
    enableNodePublicIP: bool
    enableUltraSSD: bool
    gpuInstanceProfile: 'string'
    gpuProfile: {
      driver: 'string'
    }
    hostGroupID: 'string'
    kubeletConfig: {
      allowedUnsafeSysctls: [
        'string'
      ]
      containerLogMaxFiles: int
      containerLogMaxSizeMB: int
      cpuCfsQuota: bool
      cpuCfsQuotaPeriod: 'string'
      cpuManagerPolicy: 'string'
      failSwapOn: bool
      imageGcHighThreshold: int
      imageGcLowThreshold: int
      podMaxPids: int
      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'
        }
      ]
    }
    nodeLabels: {
      {customized property}: 'string'
    }
    nodePublicIPPrefixID: 'string'
    nodeTaints: [
      'string'
    ]
    orchestratorVersion: 'string'
    osDiskSizeGB: int
    osDiskType: 'string'
    osSKU: 'string'
    osType: 'string'
    podSubnetID: 'string'
    powerState: {
      code: 'string'
    }
    proximityPlacementGroupID: 'string'
    scaleDownMode: 'string'
    scaleSetEvictionPolicy: 'string'
    scaleSetPriority: 'string'
    securityProfile: {
      enableSecureBoot: bool
      enableVTPM: bool
    }
    spotMaxPrice: int
    tags: {
      {customized property}: 'string'
    }
    type: 'string'
    upgradeSettings: {
      drainTimeoutInMinutes: int
      maxSurge: 'string'
      nodeSoakDurationInMinutes: int
    }
    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属性

AgentPoolNetworkProfile

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

AgentPoolSecurityProfile

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

AgentPoolUpgradeSettings

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

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

约束:
最小值 = 0
最大值 = 30

AgentPoolWindows配置文件

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

CreationData (创建数据)

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

GPUProfile 文件

名字 DESCRIPTION 价值
司机 是否安装 GPU 驱动程序。 如果未指定,则默认为“安装”。 “Install”
“None”

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)
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 价值
可用性区域 要用于节点的可用性区域列表。 仅当 AgentPoolType 属性为“VirtualMachineScaleSets”时,才能指定此值。 字符串[]
capacityReservationGroupID (容量预留组 ID) AKS 会将指定的代理池与容量预留组相关联。 字符串
计数 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 整数 (int)
creationData (创建数据) 如果使用快照创建/升级节点池,则用于指定源快照 ID 的 CreationData。 CreationData (创建数据)
enableAutoScaling 是否启用自动缩放程序 布尔
enableEncryptionAtHost 这仅在某些 VM 大小和某些 Azure 区域中受支持。 有关详细信息,请参阅:/azure/aks/enable-host-encryption 布尔
启用 FIPS 有关更多详细信息 ,请参阅添加已启用 FIPS 的节点池 布尔
启用节点公共 IP 某些方案可能需要节点池中的节点接收其自己的专用公共 IP 地址。 游戏工作负载就是一种常见方案,此时控制台需要直接连接到云虚拟机才能尽量减少画面跳跃。 有关详细信息,请参阅 为每个节点分配公共 IP。 默认值为 false。 布尔
enableUltraSSD 是否启用 UltraSSD 布尔
gpuInstance配置文件 用于为支持的 GPU VM SKU 指定 GPU MIG 实例配置文件的 GPUInstanceProfile。 “MIG1g”
“MIG2g”
“MIG3g”
“MIG4g”
“MIG7g”
gpu配置文件 代理池的 GPU 设置。 GPUProfile 文件
主机组 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 “System”
“User”
网络简介 代理池的网络相关设置。 AgentPoolNetworkProfile
nodeLabels (节点标签) 要跨代理池中的所有节点保留的节点标签。 ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodePublicIPPrefixID 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} 字符串
node污点 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 字符串[]
orchestratorVersion 支持修补程序版本 <major.minor.patch> (例如 1.20.13)和 <major.minor> (例如 1.20)。 指定 major.minor< 后>,会自动选择最新的受支持的 GA 修补程序版本。 <创建群集后使用相同的 major.minor> 更新群集(例如 1.14.x -> 1.14)不会触发升级,即使有较新的修补程序版本可用也是如此。 最佳做法是将 AKS 群集中的所有节点池升级到相同的 Kubernetes 版本。 节点池版本必须与控制平面具有相同的主版本。 节点池次要版本必须位于控制平面版本的两个次要版本中。 节点池版本不能大于控制平面版本。 有关详细信息,请参阅 升级节点池 字符串
osDiskSizeGB OS 磁盘大小(以 GB 为单位)用于为主/代理池中的每个计算机指定磁盘大小。 如果指定 0,它将根据指定的 vmSize 应用默认 osDisk 大小。 int

约束:
最小值 = 0
最大值 = 2048
osDiskType 如果 VM 支持该 VM 并且缓存磁盘大于请求的 OSDiskSizeGB,则默认值为“临时”。 否则,默认为“Managed”。 创建后可能不会更改。 有关详细信息,请参阅 临时 OS “临时”
“Managed”
osSKU 指定代理池使用的 OS SKU。 如果 OSType 为 Linux,则默认值为 Ubuntu。 当 Kubernetes <= 1.24 或 Windows2022(如果 OSType 为 Windows)时 >,默认值为 Windows2019。 “AzureLinux”
“CBLMariner”
“Ubuntu”
“Windows2019”
“Windows2022”
操作系统类型 作系统类型。 默认值为 Linux。 “Linux”
“Windows”
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)
标签 要保留在代理池虚拟机规模集上的标记。 ManagedClusterAgentPoolProfileProperties标签
类型 代理池的类型。 “AvailabilitySet”
“VirtualMachineScaleSets”
upgradeSettings 用于升级代理池的设置 AgentPoolUpgradeSettings
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 (工作负载运行时) 确定节点可以运行的工作负荷的类型。 “OCIContainer”
“WasmWasi”

ManagedClusterAgentPoolProfilePropertiesNodeLabels

名字 DESCRIPTION 价值

ManagedClusterAgentPoolProfileProperties标签

名字 DESCRIPTION 价值

端口范围

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

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

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

PowerState 公司

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

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)

ARM 模板资源定义

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

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

资源格式

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

{
  "type": "Microsoft.ContainerService/managedClusters/agentPools",
  "apiVersion": "2025-02-01",
  "name": "string",
  "properties": {
    "availabilityZones": [ "string" ],
    "capacityReservationGroupID": "string",
    "count": "int",
    "creationData": {
      "sourceResourceId": "string"
    },
    "enableAutoScaling": "bool",
    "enableEncryptionAtHost": "bool",
    "enableFIPS": "bool",
    "enableNodePublicIP": "bool",
    "enableUltraSSD": "bool",
    "gpuInstanceProfile": "string",
    "gpuProfile": {
      "driver": "string"
    },
    "hostGroupID": "string",
    "kubeletConfig": {
      "allowedUnsafeSysctls": [ "string" ],
      "containerLogMaxFiles": "int",
      "containerLogMaxSizeMB": "int",
      "cpuCfsQuota": "bool",
      "cpuCfsQuotaPeriod": "string",
      "cpuManagerPolicy": "string",
      "failSwapOn": "bool",
      "imageGcHighThreshold": "int",
      "imageGcLowThreshold": "int",
      "podMaxPids": "int",
      "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"
        }
      ]
    },
    "nodeLabels": {
      "{customized property}": "string"
    },
    "nodePublicIPPrefixID": "string",
    "nodeTaints": [ "string" ],
    "orchestratorVersion": "string",
    "osDiskSizeGB": "int",
    "osDiskType": "string",
    "osSKU": "string",
    "osType": "string",
    "podSubnetID": "string",
    "powerState": {
      "code": "string"
    },
    "proximityPlacementGroupID": "string",
    "scaleDownMode": "string",
    "scaleSetEvictionPolicy": "string",
    "scaleSetPriority": "string",
    "securityProfile": {
      "enableSecureBoot": "bool",
      "enableVTPM": "bool"
    },
    "spotMaxPrice": "int",
    "tags": {
      "{customized property}": "string"
    },
    "type": "string",
    "upgradeSettings": {
      "drainTimeoutInMinutes": "int",
      "maxSurge": "string",
      "nodeSoakDurationInMinutes": "int"
    },
    "vmSize": "string",
    "vnetSubnetID": "string",
    "windowsProfile": {
      "disableOutboundNat": "bool"
    },
    "workloadRuntime": "string"
  }
}

属性值

Microsoft.ContainerService/managedClusters/agentPools

名字 DESCRIPTION 价值
apiVersion API 版本 '2025-02-01'
姓名 资源名称 字符串

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

AgentPoolNetworkProfile

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

AgentPoolSecurityProfile

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

AgentPoolUpgradeSettings

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

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

约束:
最小值 = 0
最大值 = 30

AgentPoolWindows配置文件

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

CreationData (创建数据)

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

GPUProfile 文件

名字 DESCRIPTION 价值
司机 是否安装 GPU 驱动程序。 如果未指定,则默认为“安装”。 “Install”
“None”

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)
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 价值
可用性区域 要用于节点的可用性区域列表。 仅当 AgentPoolType 属性为“VirtualMachineScaleSets”时,才能指定此值。 字符串[]
capacityReservationGroupID (容量预留组 ID) AKS 会将指定的代理池与容量预留组相关联。 字符串
计数 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 整数 (int)
creationData (创建数据) 如果使用快照创建/升级节点池,则用于指定源快照 ID 的 CreationData。 CreationData (创建数据)
enableAutoScaling 是否启用自动缩放程序 布尔
enableEncryptionAtHost 这仅在某些 VM 大小和某些 Azure 区域中受支持。 有关详细信息,请参阅:/azure/aks/enable-host-encryption 布尔
启用 FIPS 有关更多详细信息 ,请参阅添加已启用 FIPS 的节点池 布尔
启用节点公共 IP 某些方案可能需要节点池中的节点接收其自己的专用公共 IP 地址。 游戏工作负载就是一种常见方案,此时控制台需要直接连接到云虚拟机才能尽量减少画面跳跃。 有关详细信息,请参阅 为每个节点分配公共 IP。 默认值为 false。 布尔
enableUltraSSD 是否启用 UltraSSD 布尔
gpuInstance配置文件 用于为支持的 GPU VM SKU 指定 GPU MIG 实例配置文件的 GPUInstanceProfile。 “MIG1g”
“MIG2g”
“MIG3g”
“MIG4g”
“MIG7g”
gpu配置文件 代理池的 GPU 设置。 GPUProfile 文件
主机组 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 “System”
“User”
网络简介 代理池的网络相关设置。 AgentPoolNetworkProfile
nodeLabels (节点标签) 要跨代理池中的所有节点保留的节点标签。 ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodePublicIPPrefixID 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} 字符串
node污点 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 字符串[]
orchestratorVersion 支持修补程序版本 <major.minor.patch> (例如 1.20.13)和 <major.minor> (例如 1.20)。 指定 major.minor< 后>,会自动选择最新的受支持的 GA 修补程序版本。 <创建群集后使用相同的 major.minor> 更新群集(例如 1.14.x -> 1.14)不会触发升级,即使有较新的修补程序版本可用也是如此。 最佳做法是将 AKS 群集中的所有节点池升级到相同的 Kubernetes 版本。 节点池版本必须与控制平面具有相同的主版本。 节点池次要版本必须位于控制平面版本的两个次要版本中。 节点池版本不能大于控制平面版本。 有关详细信息,请参阅 升级节点池 字符串
osDiskSizeGB OS 磁盘大小(以 GB 为单位)用于为主/代理池中的每个计算机指定磁盘大小。 如果指定 0,它将根据指定的 vmSize 应用默认 osDisk 大小。 int

约束:
最小值 = 0
最大值 = 2048
osDiskType 如果 VM 支持该 VM 并且缓存磁盘大于请求的 OSDiskSizeGB,则默认值为“临时”。 否则,默认为“Managed”。 创建后可能不会更改。 有关详细信息,请参阅 临时 OS “临时”
“Managed”
osSKU 指定代理池使用的 OS SKU。 如果 OSType 为 Linux,则默认值为 Ubuntu。 当 Kubernetes <= 1.24 或 Windows2022(如果 OSType 为 Windows)时 >,默认值为 Windows2019。 “AzureLinux”
“CBLMariner”
“Ubuntu”
“Windows2019”
“Windows2022”
操作系统类型 作系统类型。 默认值为 Linux。 “Linux”
“Windows”
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)
标签 要保留在代理池虚拟机规模集上的标记。 ManagedClusterAgentPoolProfileProperties标签
类型 代理池的类型。 “AvailabilitySet”
“VirtualMachineScaleSets”
upgradeSettings 用于升级代理池的设置 AgentPoolUpgradeSettings
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 (工作负载运行时) 确定节点可以运行的工作负荷的类型。 “OCIContainer”
“WasmWasi”

ManagedClusterAgentPoolProfilePropertiesNodeLabels

名字 DESCRIPTION 价值

ManagedClusterAgentPoolProfileProperties标签

名字 DESCRIPTION 价值

端口范围

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

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

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

PowerState 公司

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

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)

用法示例

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-01"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      availabilityZones = [
        "string"
      ]
      capacityReservationGroupID = "string"
      count = int
      creationData = {
        sourceResourceId = "string"
      }
      enableAutoScaling = bool
      enableEncryptionAtHost = bool
      enableFIPS = bool
      enableNodePublicIP = bool
      enableUltraSSD = bool
      gpuInstanceProfile = "string"
      gpuProfile = {
        driver = "string"
      }
      hostGroupID = "string"
      kubeletConfig = {
        allowedUnsafeSysctls = [
          "string"
        ]
        containerLogMaxFiles = int
        containerLogMaxSizeMB = int
        cpuCfsQuota = bool
        cpuCfsQuotaPeriod = "string"
        cpuManagerPolicy = "string"
        failSwapOn = bool
        imageGcHighThreshold = int
        imageGcLowThreshold = int
        podMaxPids = int
        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"
          }
        ]
      }
      nodeLabels = {
        {customized property} = "string"
      }
      nodePublicIPPrefixID = "string"
      nodeTaints = [
        "string"
      ]
      orchestratorVersion = "string"
      osDiskSizeGB = int
      osDiskType = "string"
      osSKU = "string"
      osType = "string"
      podSubnetID = "string"
      powerState = {
        code = "string"
      }
      proximityPlacementGroupID = "string"
      scaleDownMode = "string"
      scaleSetEvictionPolicy = "string"
      scaleSetPriority = "string"
      securityProfile = {
        enableSecureBoot = bool
        enableVTPM = bool
      }
      spotMaxPrice = int
      tags = {
        {customized property} = "string"
      }
      type = "string"
      upgradeSettings = {
        drainTimeoutInMinutes = int
        maxSurge = "string"
        nodeSoakDurationInMinutes = int
      }
      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-01”

AgentPoolNetworkProfile

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

AgentPoolSecurityProfile

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

AgentPoolUpgradeSettings

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

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

约束:
最小值 = 0
最大值 = 30

AgentPoolWindows配置文件

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

CreationData (创建数据)

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

GPUProfile 文件

名字 DESCRIPTION 价值
司机 是否安装 GPU 驱动程序。 如果未指定,则默认为“安装”。 “Install”
“None”

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)
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 价值
可用性区域 要用于节点的可用性区域列表。 仅当 AgentPoolType 属性为“VirtualMachineScaleSets”时,才能指定此值。 字符串[]
capacityReservationGroupID (容量预留组 ID) AKS 会将指定的代理池与容量预留组相关联。 字符串
计数 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 整数 (int)
creationData (创建数据) 如果使用快照创建/升级节点池,则用于指定源快照 ID 的 CreationData。 CreationData (创建数据)
enableAutoScaling 是否启用自动缩放程序 布尔
enableEncryptionAtHost 这仅在某些 VM 大小和某些 Azure 区域中受支持。 有关详细信息,请参阅:/azure/aks/enable-host-encryption 布尔
启用 FIPS 有关更多详细信息 ,请参阅添加已启用 FIPS 的节点池 布尔
启用节点公共 IP 某些方案可能需要节点池中的节点接收其自己的专用公共 IP 地址。 游戏工作负载就是一种常见方案,此时控制台需要直接连接到云虚拟机才能尽量减少画面跳跃。 有关详细信息,请参阅 为每个节点分配公共 IP。 默认值为 false。 布尔
enableUltraSSD 是否启用 UltraSSD 布尔
gpuInstance配置文件 用于为支持的 GPU VM SKU 指定 GPU MIG 实例配置文件的 GPUInstanceProfile。 “MIG1g”
“MIG2g”
“MIG3g”
“MIG4g”
“MIG7g”
gpu配置文件 代理池的 GPU 设置。 GPUProfile 文件
主机组 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 “System”
“User”
网络简介 代理池的网络相关设置。 AgentPoolNetworkProfile
nodeLabels (节点标签) 要跨代理池中的所有节点保留的节点标签。 ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodePublicIPPrefixID 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} 字符串
node污点 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 字符串[]
orchestratorVersion 支持修补程序版本 <major.minor.patch> (例如 1.20.13)和 <major.minor> (例如 1.20)。 指定 major.minor< 后>,会自动选择最新的受支持的 GA 修补程序版本。 <创建群集后使用相同的 major.minor> 更新群集(例如 1.14.x -> 1.14)不会触发升级,即使有较新的修补程序版本可用也是如此。 最佳做法是将 AKS 群集中的所有节点池升级到相同的 Kubernetes 版本。 节点池版本必须与控制平面具有相同的主版本。 节点池次要版本必须位于控制平面版本的两个次要版本中。 节点池版本不能大于控制平面版本。 有关详细信息,请参阅 升级节点池 字符串
osDiskSizeGB OS 磁盘大小(以 GB 为单位)用于为主/代理池中的每个计算机指定磁盘大小。 如果指定 0,它将根据指定的 vmSize 应用默认 osDisk 大小。 int

约束:
最小值 = 0
最大值 = 2048
osDiskType 如果 VM 支持该 VM 并且缓存磁盘大于请求的 OSDiskSizeGB,则默认值为“临时”。 否则,默认为“Managed”。 创建后可能不会更改。 有关详细信息,请参阅 临时 OS “临时”
“Managed”
osSKU 指定代理池使用的 OS SKU。 如果 OSType 为 Linux,则默认值为 Ubuntu。 当 Kubernetes <= 1.24 或 Windows2022(如果 OSType 为 Windows)时 >,默认值为 Windows2019。 “AzureLinux”
“CBLMariner”
“Ubuntu”
“Windows2019”
“Windows2022”
操作系统类型 作系统类型。 默认值为 Linux。 “Linux”
“Windows”
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)
标签 要保留在代理池虚拟机规模集上的标记。 ManagedClusterAgentPoolProfileProperties标签
类型 代理池的类型。 “AvailabilitySet”
“VirtualMachineScaleSets”
upgradeSettings 用于升级代理池的设置 AgentPoolUpgradeSettings
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 (工作负载运行时) 确定节点可以运行的工作负荷的类型。 “OCIContainer”
“WasmWasi”

ManagedClusterAgentPoolProfilePropertiesNodeLabels

名字 DESCRIPTION 价值

ManagedClusterAgentPoolProfileProperties标签

名字 DESCRIPTION 价值

端口范围

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

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

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

PowerState 公司

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

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)