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

Microsoft.ContainerService 托管集群 2021-05-01

注解

有关可用加载项的信息,请参阅 加载项、扩展和其他与 Azure Kubernetes 服务的集成

Bicep 资源定义

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

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

资源格式

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

resource symbolicname 'Microsoft.ContainerService/managedClusters@2021-05-01' = {
  extendedLocation: {
    name: 'string'
    type: 'string'
  }
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    aadProfile: {
      adminGroupObjectIDs: [
        'string'
      ]
      clientAppID: 'string'
      enableAzureRBAC: bool
      managed: bool
      serverAppID: 'string'
      serverAppSecret: 'string'
      tenantID: 'string'
    }
    addonProfiles: {
      {customized property}: {
        config: {
          {customized property}: 'string'
        }
        enabled: bool
      }
    }
    agentPoolProfiles: [
      {
        availabilityZones: [
          'string'
        ]
        count: int
        enableAutoScaling: bool
        enableEncryptionAtHost: bool
        enableFIPS: bool
        enableNodePublicIP: bool
        enableUltraSSD: bool
        gpuInstanceProfile: '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
        minCount: int
        mode: 'string'
        name: 'string'
        nodeLabels: {
          {customized property}: 'string'
        }
        nodePublicIPPrefixID: 'string'
        nodeTaints: [
          'string'
        ]
        orchestratorVersion: 'string'
        osDiskSizeGB: int
        osDiskType: 'string'
        osSKU: 'string'
        osType: 'string'
        podSubnetID: 'string'
        proximityPlacementGroupID: 'string'
        scaleSetEvictionPolicy: 'string'
        scaleSetPriority: 'string'
        spotMaxPrice: int
        tags: {
          {customized property}: 'string'
        }
        type: 'string'
        upgradeSettings: {
          maxSurge: 'string'
        }
        vmSize: 'string'
        vnetSubnetID: 'string'
      }
    ]
    apiServerAccessProfile: {
      authorizedIPRanges: [
        'string'
      ]
      enablePrivateCluster: bool
      enablePrivateClusterPublicFQDN: bool
      privateDNSZone: 'string'
    }
    autoScalerProfile: {
      balance-similar-node-groups: 'string'
      expander: 'string'
      max-empty-bulk-delete: 'string'
      max-graceful-termination-sec: 'string'
      max-node-provision-time: 'string'
      max-total-unready-percentage: 'string'
      new-pod-scale-up-delay: 'string'
      ok-total-unready-count: 'string'
      scale-down-delay-after-add: 'string'
      scale-down-delay-after-delete: 'string'
      scale-down-delay-after-failure: 'string'
      scale-down-unneeded-time: 'string'
      scale-down-unready-time: 'string'
      scale-down-utilization-threshold: 'string'
      scan-interval: 'string'
      skip-nodes-with-local-storage: 'string'
      skip-nodes-with-system-pods: 'string'
    }
    autoUpgradeProfile: {
      upgradeChannel: 'string'
    }
    disableLocalAccounts: bool
    diskEncryptionSetID: 'string'
    dnsPrefix: 'string'
    enablePodSecurityPolicy: bool
    enableRBAC: bool
    fqdnSubdomain: 'string'
    httpProxyConfig: {
      httpProxy: 'string'
      httpsProxy: 'string'
      noProxy: [
        'string'
      ]
      trustedCa: 'string'
    }
    identityProfile: {
      {customized property}: {
        clientId: 'string'
        objectId: 'string'
        resourceId: 'string'
      }
    }
    kubernetesVersion: 'string'
    linuxProfile: {
      adminUsername: 'string'
      ssh: {
        publicKeys: [
          {
            keyData: 'string'
          }
        ]
      }
    }
    networkProfile: {
      dnsServiceIP: 'string'
      dockerBridgeCidr: 'string'
      loadBalancerProfile: {
        allocatedOutboundPorts: int
        effectiveOutboundIPs: [
          {
            id: 'string'
          }
        ]
        idleTimeoutInMinutes: int
        managedOutboundIPs: {
          count: int
        }
        outboundIPPrefixes: {
          publicIPPrefixes: [
            {
              id: 'string'
            }
          ]
        }
        outboundIPs: {
          publicIPs: [
            {
              id: 'string'
            }
          ]
        }
      }
      loadBalancerSku: 'string'
      networkMode: 'string'
      networkPlugin: 'string'
      networkPolicy: 'string'
      outboundType: 'string'
      podCidr: 'string'
      serviceCidr: 'string'
    }
    nodeResourceGroup: 'string'
    podIdentityProfile: {
      allowNetworkPluginKubenet: bool
      enabled: bool
      userAssignedIdentities: [
        {
          bindingSelector: 'string'
          identity: {
            clientId: 'string'
            objectId: 'string'
            resourceId: 'string'
          }
          name: 'string'
          namespace: 'string'
        }
      ]
      userAssignedIdentityExceptions: [
        {
          name: 'string'
          namespace: 'string'
          podLabels: {
            {customized property}: 'string'
          }
        }
      ]
    }
    privateLinkResources: [
      {
        groupId: 'string'
        id: 'string'
        name: 'string'
        requiredMembers: [
          'string'
        ]
        type: 'string'
      }
    ]
    servicePrincipalProfile: {
      clientId: 'string'
      secret: 'string'
    }
    windowsProfile: {
      adminPassword: 'string'
      adminUsername: 'string'
      enableCSIProxy: bool
      licenseType: 'string'
    }
  }
  sku: {
    name: 'string'
    tier: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

属性值

Microsoft.ContainerService/managedClusters

名称 DESCRIPTION 价值
extendedLocation 虚拟机的扩展位置。 扩展位置
标识 托管群集的标识(如果已配置)。 ManagedClusterIdentity
位置 资源位置 string (必需)
姓名 资源名称 字符串

约束:
最小长度 = 1
最大长度 = 63
模式 = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$ (必需)
属性 托管群集的属性。 ManagedClusterProperties
SKU 托管群集 SKU。 ManagedClusterSKU
标签 资源标记 标记名称和值的字典。 请参阅模板 中的 标记

AgentPoolUpgradeSettings

名称 DESCRIPTION 价值
最大浪涌 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 1。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster#customize-node-surge-upgrade 字符串

Components1Umhcm8SchemasManagedclusteridentityPropertiesUserassignedidentitiesAdditionalproperties

名称 DESCRIPTION 价值

ComponentsQit0EtSchemasManagedclusterpropertiesPropertiesIdentityprofileAdditionalproperties

名称 DESCRIPTION 价值
客户端 ID 用户分配标识的客户端 ID。 字符串
对象 ID 用户分配标识的对象 ID。 字符串
资源ID 用户分配标识的资源 ID。 字符串

ContainerServiceLinux配置文件

名称 DESCRIPTION 价值
管理员用户名 用于 Linux VM 的管理员用户名。 字符串

约束:
模式 = ^[A-Za-z][-A-Za-z0-9_]*$ (必需)
SSH 在 Azure 上运行的基于 Linux 的 VM 的 SSH 配置。 ContainerServiceSshConfiguration (必需)

ContainerServiceNetwork配置文件

名称 DESCRIPTION 价值
dnsServiceIP 分配给 Kubernetes DNS 服务的 IP 地址。 它必须位于 serviceCidr 中指定的 Kubernetes 服务地址范围内。 字符串

约束:
图案 = ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
dockerBridgeCidr 分配给 Docker 网桥网络的 CIDR 表示法 IP 范围。 它不得与任何子网 IP 范围或 Kubernetes 服务地址范围重叠。 字符串

约束:
图案 = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
loadBalancer配置文件 群集负载均衡器的配置文件。 ManagedClusterLoadBalancer配置文件
loadBalancerSku 默认值为“standard”。 有关负载均衡器 SKU 之间的差异的详细信息,请参阅 Azure 负载均衡器 SKU。 “basic”
“standard”
网络模式 如果 networkPlugin 不是“azure”,则无法指定此项。 “bridge”
“transparent”
网络插件 用于生成 Kubernetes 网络的网络插件。 “azure”
“kubenet”
网络策略 用于生成 Kubernetes 网络的网络策略。 “azure”
“calico”
outbound类型 这只能在群集创建时设置,以后无法更改。 有关详细信息,请参阅 出口出站类型 “loadBalancer”
“userDefinedRouting”
podCidr 使用 kubenet 时分配 Pod IP 的 CIDR 表示法 IP 范围。 字符串

约束:
图案 = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
serviceCidr 服务 从中分配服务群集 IP 的 CIDR 表示法 IP 范围。 它不得与任何子网 IP 范围重叠。 字符串

约束:
图案 = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$

ContainerServiceSshConfiguration

名称 DESCRIPTION 价值
公钥 用于通过基于 Linux 的 VM 进行身份验证的 SSH 公钥列表。 最多可以指定 1 个键。 ContainerServiceSshPublicKey[] (必需)

ContainerServiceSshPublicKey

名称 DESCRIPTION 价值
密钥数据 用于通过 SSH 向 VM 进行身份验证的证书公钥。 证书必须采用 PEM 格式(带或不带标头)。 string (必需)

扩展位置

名称 DESCRIPTION 价值
姓名 扩展位置的名称。 字符串
类型 扩展位置的类型。 “EdgeZone”

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”。 有关详细信息,请参阅 透明巨页 字符串

ManagedClusterAADPro文件

名称 DESCRIPTION 价值
adminGroupObjectID 将具有群集管理员角色的 AAD 组对象 ID 的列表。 字符串[]
客户端 AppID 客户端 AAD 应用程序 ID。 字符串
启用 AzureRBAC 是否为 Kubernetes 授权启用 Azure RBAC。 布尔
托管的 是否启用托管 AAD。 布尔
服务器AppID 服务器 AAD 应用程序 ID。 字符串
serverAppSecret 服务器 服务器 AAD 应用程序机密。 字符串
租户 ID 用于身份验证的 AAD 租户 ID。 如果未指定,将使用部署订阅的租户。 字符串

ManagedClusterAddon配置文件

名称 DESCRIPTION 价值
配置 用于配置加载项的键值对。 ManagedClusterAddonProfileConfig
启用 是否启用加载项。 bool (必需)

ManagedClusterAddonProfileConfig

名称 DESCRIPTION 价值

ManagedClusterAgentPoolProfile

名称 DESCRIPTION 价值
可用性区域 要用于节点的可用性区域列表。 仅当 AgentPoolType 属性为“VirtualMachineScaleSets”时,才能指定此值。 字符串[]
计数 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 整数 (int)
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”
kubelet配置 代理池节点上的 Kubelet 配置。 KubeletConfig 实例
kubeletDiskType 确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。 “OS”
“临时”
linuxOSConfig Linux 代理节点的 OS 配置。 LinuxOSConfig
最大计数 自动缩放的最大节点数 整数 (int)
最大 Pod 可在节点上运行的 Pod 的最大数目。 整数 (int)
最小计数 自动缩放的最小节点数 整数 (int)
模式 群集必须随时至少有一个“系统”代理池。 有关代理池限制和最佳做法的其他信息,请参阅:/azure/aks/use-system-pools “System”
“User”
姓名 Windows 代理池名称必须为 6 个字符或更少。 字符串

约束:
模式 = ^[a-z][a-z0-9]{0,11}$ (必需)
nodeLabels (节点标签) 要跨代理池中的所有节点保留的节点标签。 ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodePublicIPPrefixID 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} 字符串
node污点 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 字符串[]
orchestratorVersion 最佳做法是将 AKS 群集中的所有节点池升级到相同的 Kubernetes 版本。 节点池版本必须与控制平面具有相同的主版本。 节点池次要版本必须位于控制平面版本的两个次要版本中。 节点池版本不能大于控制平面版本。 有关详细信息,请参阅 升级节点池 字符串
osDiskSizeGB OS 磁盘大小(以 GB 为单位)用于为主/代理池中的每个计算机指定磁盘大小。 如果指定 0,它将根据指定的 vmSize 应用默认 osDisk 大小。 int

约束:
最小值 = 0
最大值 = 2048
osDiskType 如果 VM 支持该 VM 并且缓存磁盘大于请求的 OSDiskSizeGB,则默认值为“临时”。 否则,默认为“Managed”。 创建后可能不会更改。 有关详细信息,请参阅 临时 OS “临时”
“Managed”
osSKU 指定 OS SKU。 如果 OSType 为 Windows,则不能指定此值。 “CBLMariner”
“Ubuntu”
操作系统类型 作系统类型。 默认值为 Linux。 “Linux”
“Windows”
podSubnetID 如果省略,则会在节点子网上静态分配 Pod IP(有关详细信息,请参阅 vnetSubnetID)。 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} 字符串
proximityPlacementGroupID 邻近放置组的 ID。 字符串
scaleSetEvictionPolicy 除非 scaleSetPriority 为“Spot”,否则无法指定此项。 如果未指定,则默认值为“Delete”。 “Deallocate”
“Delete”
scaleSetPriority 虚拟机规模集优先级。 如果未指定,则默认值为“Regular”。 “Regular”
“Spot”
现货最大价格 可能的值是大于零或 -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} 字符串

ManagedClusterAgentPoolProfilePropertiesNodeLabels

名称 DESCRIPTION 价值

ManagedClusterAgentPoolProfileProperties标签

名称 DESCRIPTION 价值

ManagedClusterAPIServerAccessProfile

名称 DESCRIPTION 价值
授权 IPRanges IP 范围以 CIDR 格式指定,例如 137.117.106.88/29。 此功能与使用公共 IP Per Node 的群集或使用基本负载均衡器的群集不兼容。 有关详细信息,请参阅 API 服务器授权 IP 范围 字符串[]
enablePrivateCluster 有关详细信息,请参阅 创建专用 AKS 群集 布尔
enablePrivateClusterPublicFQDN 是否为专用群集创建其他公共 FQDN。 布尔
privateDNSZone 默认值为 System。 有关更多详细信息,请参阅 配置专用 DNS 区域。 允许的值为“system”和“none”。 字符串

ManagedClusterAutoUpgrade配置文件

名称 DESCRIPTION 价值
upgradeChannel 有关详细信息 ,请参阅设置 AKS 群集自动升级通道 “node-image”
没有
“patch”
“rapid”
“stable”

ManagedClusterHttpProxyConfig

名称 DESCRIPTION 价值
http代理 要使用的 HTTP 代理服务器终结点。 字符串
https代理 要使用的 HTTPS 代理服务器终结点。 字符串
无代理 不应通过代理的终结点。 字符串[]
可信的 Ca 用于连接到代理服务器的替代 CA 证书。 字符串

ManagedClusterIdentity

名称 DESCRIPTION 价值
类型 有关详细信息,请参阅 在 AKS 中使用托管标识 “None”
“SystemAssigned”
“UserAssigned”
用户分配的标识 密钥必须是 ARM 资源 ID,格式为“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 ManagedClusterIdentityUserAssignedIdentities

ManagedClusterIdentityUserAssignedIdentities

名称 DESCRIPTION 价值

ManagedClusterLoadBalancer配置文件

名称 DESCRIPTION 价值
allocatedOutboundPorts 每个 VM 分配的 SNAT 端口的所需数量。 允许的值为 0 到 64000(含)。 默认值为 0,这会导致 Azure 动态分配端口。 int

约束:
最小值 = 0
最大值 = 64000
effectiveOutboundIPs 群集负载均衡器的有效出站 IP 资源。 资源引用[]
idleTimeoutInMinutes 所需的出站流空闲超时(以分钟为单位)。 允许的值为 4 到 120(含)。 默认值为 30 分钟。 int

约束:
最小值 = 4
最大值 = 120
managedOutboundIP 群集负载均衡器的所需托管出站 IP。 ManagedClusterLoadBalancerProfileManagedOutboundIPs
outboundIPPrefixes 群集负载均衡器的所需出站 IP 前缀资源。 ManagedClusterLoadBalancerProfileOutboundIPP修复
outboundIP 群集负载均衡器的所需出站 IP 资源。 ManagedClusterLoadBalancerProfileOutboundIPs

ManagedClusterLoadBalancerProfileManagedOutboundIPs

名称 DESCRIPTION 价值
计数 Azure 为群集负载均衡器创建/管理的所需出站 IP 数。 允许的值必须介于 1 到 100 之间(含)。 默认值为 1。 int

约束:
最小值 = 1
最大值 = 100

ManagedClusterLoadBalancerProfileOutboundIPP修复

名称 DESCRIPTION 价值
publicIP 修复 公共 IP 前缀资源的列表。 资源引用[]

ManagedClusterLoadBalancerProfileOutboundIPs

名称 DESCRIPTION 价值
publicIP 公共 IP 资源的列表。 资源引用[]

ManagedClusterPodIdentity

名称 DESCRIPTION 价值
bindingSelector 要用于 AzureIdentityBinding 资源的绑定选择器。 字符串
标识 用户分配的标识详细信息。 UserAssignedIdentity (必需)
姓名 Pod 标识的名称。 string (必需)
命名空间 Pod 标识的命名空间。 string (必需)

ManagedClusterPodIdentity异常

名称 DESCRIPTION 价值
姓名 Pod 标识异常的名称。 string (必需)
命名空间 Pod 标识异常的命名空间。 string (必需)
pod标签 要匹配的 Pod 标签。 ManagedClusterPodIdentityExceptionPodLabels (必需)

ManagedClusterPodIdentityExceptionPodLabels

名称 DESCRIPTION 价值

ManagedClusterPodIdentity配置文件

名称 DESCRIPTION 价值
allowNetworkPluginKubenet 默认情况下,由于 AAD Pod 标识的安全相关特性以及 IP 欺骗的风险,在 Kubenet 中运行会禁用。 有关详细信息,请参阅 将 Kubenet 网络插件与 AAD Pod 标识配合使用 布尔
启用 是否启用 Pod 标识加载项。 布尔
用户分配的标识 群集中使用的 Pod 标识。 ManagedClusterPodIdentity[]
userAssignedIdentity异常 允许的 Pod 标识异常。 ManagedClusterPodIdentityException异常

ManagedClusterProperties

名称 DESCRIPTION 价值
aad简介 Azure Active Directory 配置。 ManagedClusterAADPro文件
addonProfiles 插件配置文件 托管群集加载项的配置文件。 ManagedClusterPropertiesAddonProfiles
agentPoolProfiles 代理池属性。 ManagedClusterAgentPoolProfile[]
apiServerAccessProfile 托管群集 API 服务器的访问配置文件。 ManagedClusterAPIServerAccessProfile
autoScaler配置文件 启用时要应用于群集自动缩放程序的参数 ManagedClusterPropertiesAutoScalerProfile
autoUpgrade配置文件 自动升级配置。 ManagedClusterAutoUpgrade配置文件
disableLocalAccounts 如果设置为 true,将禁用此群集的静态凭据。 这只能在启用了 AAD 的托管群集上使用。 有关更多详细信息,请参阅 禁用本地帐户 布尔
diskEncryptionSetID 此格式为:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}” 字符串
dns前缀 创建托管群集后,无法更新此功能。 字符串
enablePodSecurityPolicy (弃用)是否启用 Kubernetes Pod 安全策略(预览版)。 此功能设置为在 2020 年 10 月 15 日删除。 有关详细信息,请查看 aka.ms/aks/azpodpolicy。 布尔
启用 RBAC 是否启用 Kubernetes Role-Based 访问控制。 布尔
fqdn子域 创建托管群集后,无法更新此功能。 字符串
httpProxyConfig 使用 HTTP 代理服务器预配群集的配置。 ManagedClusterHttpProxyConfig
identityProfile 与群集关联的标识。 ManagedClusterPropertiesIdentity配置文件
kubernetes版本 升级支持的 AKS 群集时,无法跳过 Kubernetes 次要版本。 所有升级都必须按主版本号按顺序执行。 例如,允许在 1.14.x -> 1.15.x 或 1.15.x -> 1.16.x 之间进行升级,但不允许使用 1.14.x -> 1.16.x。 有关更多详细信息 ,请参阅升级 AKS 群集 字符串
linux配置文件 托管群集中 Linux VM 的配置文件。 ContainerServiceLinux配置文件
网络简介 网络配置文件。 ContainerServiceNetwork配置文件
节点资源组 包含代理池节点的资源组的名称。 字符串
podIdentity配置文件 有关 AAD Pod 标识集成的详细信息,请参阅 使用 AAD Pod 标识。 ManagedClusterPodIdentity配置文件
privateLink资源 与群集关联的专用链接资源。 PrivateLinkResource[]
servicePrincipal简介 有关群集用于作 Azure API 的服务主体标识的信息。 ManagedClusterServicePrincipal配置文件
windows配置文件 托管群集中 Windows VM 的配置文件。 ManagedClusterWindows配置文件

ManagedClusterPropertiesAddonProfiles

名称 DESCRIPTION 价值

ManagedClusterPropertiesAutoScalerProfile

名称 DESCRIPTION 价值
balance-similar-node-groups (平衡相似节点组) 有效值为“true”和“false” 字符串
膨胀 如果未指定,则默认值为“random”。 有关详细信息,请参阅 扩展器 “最不浪费”
“most-pods”
“priority”
“random”
最大空批量删除 默认值是10。 字符串
最大正常终止秒 默认值为 600。 字符串
最大节点预置时间 默认值为“15m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
最大总未就绪百分比 默认值为 45。 最大值为 100,最小值为 0。 字符串
新 pod-scale-up-delay 对于在 kubernetes 计划程序可以计划所有 Pod 之前不希望 CA 执行作的突发/批处理缩放方案,可以告诉 CA 在某个年龄之前忽略未计划的 Pod。 默认值为“0s”。 值必须是一个整数,后跟一个单位(以秒为单位,“m”表示分钟,“h”表示小时等)。 字符串
确定-总计-未就绪-计数 这必须是整数。 默认值是3。 字符串
添加后缩减延迟 默认值为“10m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
删除后缩减延迟 默认值为扫描间隔。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
失败后缩减延迟 默认值为“3m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
scale-down-unneed-time 默认值为“10m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
scale-down-unready-time (缩减未就绪时间) 默认值为“20m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
scale-down-utilization-threshold (缩减利用率阈值) 默认值为“0.5”。 字符串
扫描间隔 默认值为“10”。 值必须是整数秒数。 字符串
使用本地存储的跳过节点 默认值为 true。 字符串
带有系统容器的跳过节点 默认值为 true。 字符串

ManagedClusterPropertiesIdentity配置文件

名称 DESCRIPTION 价值

ManagedClusterServicePrincipal配置文件

名称 DESCRIPTION 价值
客户端 ID 服务主体的 ID。 string (必需)
机密 以纯文本形式与服务主体关联的机密密码。 字符串

ManagedClusterSKU

名称 DESCRIPTION 价值
姓名 托管群集 SKU 的名称。 “Basic”
分层 如果未指定,则默认值为“Free”。 有关更多详细信息,请参阅 运行时间 SLA “Free”
“付费”

ManagedClusterWindows配置文件

名称 DESCRIPTION 价值
管理员密码 指定管理员帐户的密码。

最小长度: 8 个字符

最大长度: 123 个字符

复杂性要求:需要满足以下 4 个条件中的 3 个
字符数较低
具有大写字符
包含数字
具有特殊字符(正则表达式匹配 [\W_])

不允许的值:“abc@123”、“P@$$w 0rd”、“P@ssw0rd”、“P@ssword123”、“Pa$$word”、“pass@word1”、“Password!”、“Password1”、“Password22”、“iloveyou!”
字符串
管理员用户名 指定管理员帐户的名称。

限制: 不能以“.”结尾。

不允许的值:“administrator”、“admin”、“user”、“user1”、“test”、“user2”、“test1”、“user3”、“admin1”、“1”, “123”、“a”、“actuser”、“adm”、“admin2”、“aspnet”、“backup”、“console”、“david”、“guest”、“john”、“owner”、“root”、“server”、“sql”、“support”、“support_388945a0”、“sys”、“test2”、“test3”、“user4”、“user5”。

最小长度: 1 个字符

最大长度: 20 个字符
string (必需)
enableCSIProxy 有关 CSI 代理的更多详细信息,请参阅 CSI 代理 GitHub 存储库 布尔
许可证类型 用于 Windows VM 的许可证类型。 有关更多详细信息,请参阅 Azure 混合用户权益 “None”
“Windows_Server”

PrivateLinkResource

名称 DESCRIPTION 价值
组 ID 资源的组 ID。 字符串
身份证 专用链接资源的 ID。 字符串
姓名 专用链接资源的名称。 字符串
requiredMembers (必需成员) 资源的 RequiredMembers 字符串[]
类型 资源类型。 字符串

资源引用

名称 DESCRIPTION 价值
身份证 完全限定的 Azure 资源 ID。 字符串

资源标签

名称 DESCRIPTION 价值

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)
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)
netNetfilterNfConntrackMax Sysctl 设置net.netfilter.nf_conntrack_max。 整数 (int)
vmMaxMapCount Sysctl 设置 vm.max_map_count。 整数 (int)
vmSwappiness Sysctl 设置 vm.swappiness。 整数 (int)
vmVfsCachePressure Sysctl 设置vm.vfs_cache_pressure。 整数 (int)

UserAssignedIdentity

名称 DESCRIPTION 价值
客户端 ID 用户分配标识的客户端 ID。 字符串
对象 ID 用户分配标识的对象 ID。 字符串
资源ID 用户分配标识的资源 ID。 字符串

用法示例

Azure 验证模块

以下 Azure 验证模块 可用于部署此资源类型。

模块 DESCRIPTION
Azure Kubernetes 服务 (AKS) 托管群集 Azure Kubernetes 服务 (AKS) 托管群集的 AVM 资源模块

Azure 快速入门示例

以下 Azure 快速入门模板 包含用于部署此资源类型的 Bicep 示例。

Bicep 文件 DESCRIPTION
使用 NAT 网关和应用程序网关 AKS 群集 此示例演示如何使用 NAT 网关部署 AKS 群集进行出站连接,以及如何为入站连接部署应用程序网关。
使用应用程序网关入口控制器 AKS 群集 此示例演示如何使用应用程序网关、应用程序网关入口控制器、Azure 容器注册表、Log Analytics 和 Key Vault 部署 AKS 群集
Azure 容器服务 (AKS) 使用 Azure Linux 容器主机部署具有 Azure 容器服务(AKS)的托管群集
Azure 容器服务 (AKS) 使用 Azure 容器服务部署托管群集(AKS)
将 Azure 容器服务 (AKS) 与 Helm 配合使用 使用 Helm 部署具有 Azure 容器服务(AKS)的托管群集
Azure Kubernetes 服务 (AKS) 通过 Azure Kubernetes 服务部署托管 Kubernetes 群集 (AKS)
Azure 机器学习端到端安全设置 此 Bicep 模板集演示如何在安全设置中端到端设置 Azure 机器学习。 此参考实现包括工作区、计算群集、计算实例和附加的专用 AKS 群集。
Azure 机器学习端到端安全设置(旧版) 此 Bicep 模板集演示如何在安全设置中端到端设置 Azure 机器学习。 此参考实现包括工作区、计算群集、计算实例和附加的专用 AKS 群集。
创建专用 AKS 群集 此示例演示如何在虚拟网络中创建专用 AKS 群集以及 jumpbox 虚拟机。
使用 Prometheus 和 Grafana 和 privae 链接创建 AKS 这将在 Azure Kubernetes 服务(AKS)群集上创建 Azure grafana、AKS 并安装 Prometheus(开源监视和警报工具包)。 然后使用 Azure Managed Grafana 的托管专用终结点连接到此 Prometheus 服务器并在 Grafana 仪表板中显示 Prometheus 数据

ARM 模板资源定义

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

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

资源格式

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

{
  "type": "Microsoft.ContainerService/managedClusters",
  "apiVersion": "2021-05-01",
  "name": "string",
  "extendedLocation": {
    "name": "string",
    "type": "string"
  },
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "properties": {
    "aadProfile": {
      "adminGroupObjectIDs": [ "string" ],
      "clientAppID": "string",
      "enableAzureRBAC": "bool",
      "managed": "bool",
      "serverAppID": "string",
      "serverAppSecret": "string",
      "tenantID": "string"
    },
    "addonProfiles": {
      "{customized property}": {
        "config": {
          "{customized property}": "string"
        },
        "enabled": "bool"
      }
    },
    "agentPoolProfiles": [
      {
        "availabilityZones": [ "string" ],
        "count": "int",
        "enableAutoScaling": "bool",
        "enableEncryptionAtHost": "bool",
        "enableFIPS": "bool",
        "enableNodePublicIP": "bool",
        "enableUltraSSD": "bool",
        "gpuInstanceProfile": "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",
        "minCount": "int",
        "mode": "string",
        "name": "string",
        "nodeLabels": {
          "{customized property}": "string"
        },
        "nodePublicIPPrefixID": "string",
        "nodeTaints": [ "string" ],
        "orchestratorVersion": "string",
        "osDiskSizeGB": "int",
        "osDiskType": "string",
        "osSKU": "string",
        "osType": "string",
        "podSubnetID": "string",
        "proximityPlacementGroupID": "string",
        "scaleSetEvictionPolicy": "string",
        "scaleSetPriority": "string",
        "spotMaxPrice": "int",
        "tags": {
          "{customized property}": "string"
        },
        "type": "string",
        "upgradeSettings": {
          "maxSurge": "string"
        },
        "vmSize": "string",
        "vnetSubnetID": "string"
      }
    ],
    "apiServerAccessProfile": {
      "authorizedIPRanges": [ "string" ],
      "enablePrivateCluster": "bool",
      "enablePrivateClusterPublicFQDN": "bool",
      "privateDNSZone": "string"
    },
    "autoScalerProfile": {
      "balance-similar-node-groups": "string",
      "expander": "string",
      "max-empty-bulk-delete": "string",
      "max-graceful-termination-sec": "string",
      "max-node-provision-time": "string",
      "max-total-unready-percentage": "string",
      "new-pod-scale-up-delay": "string",
      "ok-total-unready-count": "string",
      "scale-down-delay-after-add": "string",
      "scale-down-delay-after-delete": "string",
      "scale-down-delay-after-failure": "string",
      "scale-down-unneeded-time": "string",
      "scale-down-unready-time": "string",
      "scale-down-utilization-threshold": "string",
      "scan-interval": "string",
      "skip-nodes-with-local-storage": "string",
      "skip-nodes-with-system-pods": "string"
    },
    "autoUpgradeProfile": {
      "upgradeChannel": "string"
    },
    "disableLocalAccounts": "bool",
    "diskEncryptionSetID": "string",
    "dnsPrefix": "string",
    "enablePodSecurityPolicy": "bool",
    "enableRBAC": "bool",
    "fqdnSubdomain": "string",
    "httpProxyConfig": {
      "httpProxy": "string",
      "httpsProxy": "string",
      "noProxy": [ "string" ],
      "trustedCa": "string"
    },
    "identityProfile": {
      "{customized property}": {
        "clientId": "string",
        "objectId": "string",
        "resourceId": "string"
      }
    },
    "kubernetesVersion": "string",
    "linuxProfile": {
      "adminUsername": "string",
      "ssh": {
        "publicKeys": [
          {
            "keyData": "string"
          }
        ]
      }
    },
    "networkProfile": {
      "dnsServiceIP": "string",
      "dockerBridgeCidr": "string",
      "loadBalancerProfile": {
        "allocatedOutboundPorts": "int",
        "effectiveOutboundIPs": [
          {
            "id": "string"
          }
        ],
        "idleTimeoutInMinutes": "int",
        "managedOutboundIPs": {
          "count": "int"
        },
        "outboundIPPrefixes": {
          "publicIPPrefixes": [
            {
              "id": "string"
            }
          ]
        },
        "outboundIPs": {
          "publicIPs": [
            {
              "id": "string"
            }
          ]
        }
      },
      "loadBalancerSku": "string",
      "networkMode": "string",
      "networkPlugin": "string",
      "networkPolicy": "string",
      "outboundType": "string",
      "podCidr": "string",
      "serviceCidr": "string"
    },
    "nodeResourceGroup": "string",
    "podIdentityProfile": {
      "allowNetworkPluginKubenet": "bool",
      "enabled": "bool",
      "userAssignedIdentities": [
        {
          "bindingSelector": "string",
          "identity": {
            "clientId": "string",
            "objectId": "string",
            "resourceId": "string"
          },
          "name": "string",
          "namespace": "string"
        }
      ],
      "userAssignedIdentityExceptions": [
        {
          "name": "string",
          "namespace": "string",
          "podLabels": {
            "{customized property}": "string"
          }
        }
      ]
    },
    "privateLinkResources": [
      {
        "groupId": "string",
        "id": "string",
        "name": "string",
        "requiredMembers": [ "string" ],
        "type": "string"
      }
    ],
    "servicePrincipalProfile": {
      "clientId": "string",
      "secret": "string"
    },
    "windowsProfile": {
      "adminPassword": "string",
      "adminUsername": "string",
      "enableCSIProxy": "bool",
      "licenseType": "string"
    }
  },
  "sku": {
    "name": "string",
    "tier": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

属性值

Microsoft.ContainerService/managedClusters

名称 DESCRIPTION 价值
apiVersion API 版本 '2021-05-01'
extendedLocation 虚拟机的扩展位置。 扩展位置
标识 托管群集的标识(如果已配置)。 ManagedClusterIdentity
位置 资源位置 string (必需)
姓名 资源名称 字符串

约束:
最小长度 = 1
最大长度 = 63
模式 = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$ (必需)
属性 托管群集的属性。 ManagedClusterProperties
SKU 托管群集 SKU。 ManagedClusterSKU
标签 资源标记 标记名称和值的字典。 请参阅模板 中的 标记
类型 资源类型 “Microsoft.ContainerService/managedClusters”

AgentPoolUpgradeSettings

名称 DESCRIPTION 价值
最大浪涌 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 1。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster#customize-node-surge-upgrade 字符串

Components1Umhcm8SchemasManagedclusteridentityPropertiesUserassignedidentitiesAdditionalproperties

名称 DESCRIPTION 价值

ComponentsQit0EtSchemasManagedclusterpropertiesPropertiesIdentityprofileAdditionalproperties

名称 DESCRIPTION 价值
客户端 ID 用户分配标识的客户端 ID。 字符串
对象 ID 用户分配标识的对象 ID。 字符串
资源ID 用户分配标识的资源 ID。 字符串

ContainerServiceLinux配置文件

名称 DESCRIPTION 价值
管理员用户名 用于 Linux VM 的管理员用户名。 字符串

约束:
模式 = ^[A-Za-z][-A-Za-z0-9_]*$ (必需)
SSH 在 Azure 上运行的基于 Linux 的 VM 的 SSH 配置。 ContainerServiceSshConfiguration (必需)

ContainerServiceNetwork配置文件

名称 DESCRIPTION 价值
dnsServiceIP 分配给 Kubernetes DNS 服务的 IP 地址。 它必须位于 serviceCidr 中指定的 Kubernetes 服务地址范围内。 字符串

约束:
图案 = ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
dockerBridgeCidr 分配给 Docker 网桥网络的 CIDR 表示法 IP 范围。 它不得与任何子网 IP 范围或 Kubernetes 服务地址范围重叠。 字符串

约束:
图案 = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
loadBalancer配置文件 群集负载均衡器的配置文件。 ManagedClusterLoadBalancer配置文件
loadBalancerSku 默认值为“standard”。 有关负载均衡器 SKU 之间的差异的详细信息,请参阅 Azure 负载均衡器 SKU。 “basic”
“standard”
网络模式 如果 networkPlugin 不是“azure”,则无法指定此项。 “bridge”
“transparent”
网络插件 用于生成 Kubernetes 网络的网络插件。 “azure”
“kubenet”
网络策略 用于生成 Kubernetes 网络的网络策略。 “azure”
“calico”
outbound类型 这只能在群集创建时设置,以后无法更改。 有关详细信息,请参阅 出口出站类型 “loadBalancer”
“userDefinedRouting”
podCidr 使用 kubenet 时分配 Pod IP 的 CIDR 表示法 IP 范围。 字符串

约束:
图案 = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
serviceCidr 服务 从中分配服务群集 IP 的 CIDR 表示法 IP 范围。 它不得与任何子网 IP 范围重叠。 字符串

约束:
图案 = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$

ContainerServiceSshConfiguration

名称 DESCRIPTION 价值
公钥 用于通过基于 Linux 的 VM 进行身份验证的 SSH 公钥列表。 最多可以指定 1 个键。 ContainerServiceSshPublicKey[] (必需)

ContainerServiceSshPublicKey

名称 DESCRIPTION 价值
密钥数据 用于通过 SSH 向 VM 进行身份验证的证书公钥。 证书必须采用 PEM 格式(带或不带标头)。 string (必需)

扩展位置

名称 DESCRIPTION 价值
姓名 扩展位置的名称。 字符串
类型 扩展位置的类型。 “EdgeZone”

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”。 有关详细信息,请参阅 透明巨页 字符串

ManagedClusterAADPro文件

名称 DESCRIPTION 价值
adminGroupObjectID 将具有群集管理员角色的 AAD 组对象 ID 的列表。 字符串[]
客户端 AppID 客户端 AAD 应用程序 ID。 字符串
启用 AzureRBAC 是否为 Kubernetes 授权启用 Azure RBAC。 布尔
托管的 是否启用托管 AAD。 布尔
服务器AppID 服务器 AAD 应用程序 ID。 字符串
serverAppSecret 服务器 服务器 AAD 应用程序机密。 字符串
租户 ID 用于身份验证的 AAD 租户 ID。 如果未指定,将使用部署订阅的租户。 字符串

ManagedClusterAddon配置文件

名称 DESCRIPTION 价值
配置 用于配置加载项的键值对。 ManagedClusterAddonProfileConfig
启用 是否启用加载项。 bool (必需)

ManagedClusterAddonProfileConfig

名称 DESCRIPTION 价值

ManagedClusterAgentPoolProfile

名称 DESCRIPTION 价值
可用性区域 要用于节点的可用性区域列表。 仅当 AgentPoolType 属性为“VirtualMachineScaleSets”时,才能指定此值。 字符串[]
计数 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 整数 (int)
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”
kubelet配置 代理池节点上的 Kubelet 配置。 KubeletConfig 实例
kubeletDiskType 确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。 “OS”
“临时”
linuxOSConfig Linux 代理节点的 OS 配置。 LinuxOSConfig
最大计数 自动缩放的最大节点数 整数 (int)
最大 Pod 可在节点上运行的 Pod 的最大数目。 整数 (int)
最小计数 自动缩放的最小节点数 整数 (int)
模式 群集必须随时至少有一个“系统”代理池。 有关代理池限制和最佳做法的其他信息,请参阅:/azure/aks/use-system-pools “System”
“User”
姓名 Windows 代理池名称必须为 6 个字符或更少。 字符串

约束:
模式 = ^[a-z][a-z0-9]{0,11}$ (必需)
nodeLabels (节点标签) 要跨代理池中的所有节点保留的节点标签。 ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodePublicIPPrefixID 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} 字符串
node污点 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 字符串[]
orchestratorVersion 最佳做法是将 AKS 群集中的所有节点池升级到相同的 Kubernetes 版本。 节点池版本必须与控制平面具有相同的主版本。 节点池次要版本必须位于控制平面版本的两个次要版本中。 节点池版本不能大于控制平面版本。 有关详细信息,请参阅 升级节点池 字符串
osDiskSizeGB OS 磁盘大小(以 GB 为单位)用于为主/代理池中的每个计算机指定磁盘大小。 如果指定 0,它将根据指定的 vmSize 应用默认 osDisk 大小。 int

约束:
最小值 = 0
最大值 = 2048
osDiskType 如果 VM 支持该 VM 并且缓存磁盘大于请求的 OSDiskSizeGB,则默认值为“临时”。 否则,默认为“Managed”。 创建后可能不会更改。 有关详细信息,请参阅 临时 OS “临时”
“Managed”
osSKU 指定 OS SKU。 如果 OSType 为 Windows,则不能指定此值。 “CBLMariner”
“Ubuntu”
操作系统类型 作系统类型。 默认值为 Linux。 “Linux”
“Windows”
podSubnetID 如果省略,则会在节点子网上静态分配 Pod IP(有关详细信息,请参阅 vnetSubnetID)。 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} 字符串
proximityPlacementGroupID 邻近放置组的 ID。 字符串
scaleSetEvictionPolicy 除非 scaleSetPriority 为“Spot”,否则无法指定此项。 如果未指定,则默认值为“Delete”。 “Deallocate”
“Delete”
scaleSetPriority 虚拟机规模集优先级。 如果未指定,则默认值为“Regular”。 “Regular”
“Spot”
现货最大价格 可能的值是大于零或 -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} 字符串

ManagedClusterAgentPoolProfilePropertiesNodeLabels

名称 DESCRIPTION 价值

ManagedClusterAgentPoolProfileProperties标签

名称 DESCRIPTION 价值

ManagedClusterAPIServerAccessProfile

名称 DESCRIPTION 价值
授权 IPRanges IP 范围以 CIDR 格式指定,例如 137.117.106.88/29。 此功能与使用公共 IP Per Node 的群集或使用基本负载均衡器的群集不兼容。 有关详细信息,请参阅 API 服务器授权 IP 范围 字符串[]
enablePrivateCluster 有关详细信息,请参阅 创建专用 AKS 群集 布尔
enablePrivateClusterPublicFQDN 是否为专用群集创建其他公共 FQDN。 布尔
privateDNSZone 默认值为 System。 有关更多详细信息,请参阅 配置专用 DNS 区域。 允许的值为“system”和“none”。 字符串

ManagedClusterAutoUpgrade配置文件

名称 DESCRIPTION 价值
upgradeChannel 有关详细信息 ,请参阅设置 AKS 群集自动升级通道 “node-image”
没有
“patch”
“rapid”
“stable”

ManagedClusterHttpProxyConfig

名称 DESCRIPTION 价值
http代理 要使用的 HTTP 代理服务器终结点。 字符串
https代理 要使用的 HTTPS 代理服务器终结点。 字符串
无代理 不应通过代理的终结点。 字符串[]
可信的 Ca 用于连接到代理服务器的替代 CA 证书。 字符串

ManagedClusterIdentity

名称 DESCRIPTION 价值
类型 有关详细信息,请参阅 在 AKS 中使用托管标识 “None”
“SystemAssigned”
“UserAssigned”
用户分配的标识 密钥必须是 ARM 资源 ID,格式为“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 ManagedClusterIdentityUserAssignedIdentities

ManagedClusterIdentityUserAssignedIdentities

名称 DESCRIPTION 价值

ManagedClusterLoadBalancer配置文件

名称 DESCRIPTION 价值
allocatedOutboundPorts 每个 VM 分配的 SNAT 端口的所需数量。 允许的值为 0 到 64000(含)。 默认值为 0,这会导致 Azure 动态分配端口。 int

约束:
最小值 = 0
最大值 = 64000
effectiveOutboundIPs 群集负载均衡器的有效出站 IP 资源。 资源引用[]
idleTimeoutInMinutes 所需的出站流空闲超时(以分钟为单位)。 允许的值为 4 到 120(含)。 默认值为 30 分钟。 int

约束:
最小值 = 4
最大值 = 120
managedOutboundIP 群集负载均衡器的所需托管出站 IP。 ManagedClusterLoadBalancerProfileManagedOutboundIPs
outboundIPPrefixes 群集负载均衡器的所需出站 IP 前缀资源。 ManagedClusterLoadBalancerProfileOutboundIPP修复
outboundIP 群集负载均衡器的所需出站 IP 资源。 ManagedClusterLoadBalancerProfileOutboundIPs

ManagedClusterLoadBalancerProfileManagedOutboundIPs

名称 DESCRIPTION 价值
计数 Azure 为群集负载均衡器创建/管理的所需出站 IP 数。 允许的值必须介于 1 到 100 之间(含)。 默认值为 1。 int

约束:
最小值 = 1
最大值 = 100

ManagedClusterLoadBalancerProfileOutboundIPP修复

名称 DESCRIPTION 价值
publicIP 修复 公共 IP 前缀资源的列表。 资源引用[]

ManagedClusterLoadBalancerProfileOutboundIPs

名称 DESCRIPTION 价值
publicIP 公共 IP 资源的列表。 资源引用[]

ManagedClusterPodIdentity

名称 DESCRIPTION 价值
bindingSelector 要用于 AzureIdentityBinding 资源的绑定选择器。 字符串
标识 用户分配的标识详细信息。 UserAssignedIdentity (必需)
姓名 Pod 标识的名称。 string (必需)
命名空间 Pod 标识的命名空间。 string (必需)

ManagedClusterPodIdentity异常

名称 DESCRIPTION 价值
姓名 Pod 标识异常的名称。 string (必需)
命名空间 Pod 标识异常的命名空间。 string (必需)
pod标签 要匹配的 Pod 标签。 ManagedClusterPodIdentityExceptionPodLabels (必需)

ManagedClusterPodIdentityExceptionPodLabels

名称 DESCRIPTION 价值

ManagedClusterPodIdentity配置文件

名称 DESCRIPTION 价值
allowNetworkPluginKubenet 默认情况下,由于 AAD Pod 标识的安全相关特性以及 IP 欺骗的风险,在 Kubenet 中运行会禁用。 有关详细信息,请参阅 将 Kubenet 网络插件与 AAD Pod 标识配合使用 布尔
启用 是否启用 Pod 标识加载项。 布尔
用户分配的标识 群集中使用的 Pod 标识。 ManagedClusterPodIdentity[]
userAssignedIdentity异常 允许的 Pod 标识异常。 ManagedClusterPodIdentityException异常

ManagedClusterProperties

名称 DESCRIPTION 价值
aad简介 Azure Active Directory 配置。 ManagedClusterAADPro文件
addonProfiles 插件配置文件 托管群集加载项的配置文件。 ManagedClusterPropertiesAddonProfiles
agentPoolProfiles 代理池属性。 ManagedClusterAgentPoolProfile[]
apiServerAccessProfile 托管群集 API 服务器的访问配置文件。 ManagedClusterAPIServerAccessProfile
autoScaler配置文件 启用时要应用于群集自动缩放程序的参数 ManagedClusterPropertiesAutoScalerProfile
autoUpgrade配置文件 自动升级配置。 ManagedClusterAutoUpgrade配置文件
disableLocalAccounts 如果设置为 true,将禁用此群集的静态凭据。 这只能在启用了 AAD 的托管群集上使用。 有关更多详细信息,请参阅 禁用本地帐户 布尔
diskEncryptionSetID 此格式为:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}” 字符串
dns前缀 创建托管群集后,无法更新此功能。 字符串
enablePodSecurityPolicy (弃用)是否启用 Kubernetes Pod 安全策略(预览版)。 此功能设置为在 2020 年 10 月 15 日删除。 有关详细信息,请查看 aka.ms/aks/azpodpolicy。 布尔
启用 RBAC 是否启用 Kubernetes Role-Based 访问控制。 布尔
fqdn子域 创建托管群集后,无法更新此功能。 字符串
httpProxyConfig 使用 HTTP 代理服务器预配群集的配置。 ManagedClusterHttpProxyConfig
identityProfile 与群集关联的标识。 ManagedClusterPropertiesIdentity配置文件
kubernetes版本 升级支持的 AKS 群集时,无法跳过 Kubernetes 次要版本。 所有升级都必须按主版本号按顺序执行。 例如,允许在 1.14.x -> 1.15.x 或 1.15.x -> 1.16.x 之间进行升级,但不允许使用 1.14.x -> 1.16.x。 有关更多详细信息 ,请参阅升级 AKS 群集 字符串
linux配置文件 托管群集中 Linux VM 的配置文件。 ContainerServiceLinux配置文件
网络简介 网络配置文件。 ContainerServiceNetwork配置文件
节点资源组 包含代理池节点的资源组的名称。 字符串
podIdentity配置文件 有关 AAD Pod 标识集成的详细信息,请参阅 使用 AAD Pod 标识。 ManagedClusterPodIdentity配置文件
privateLink资源 与群集关联的专用链接资源。 PrivateLinkResource[]
servicePrincipal简介 有关群集用于作 Azure API 的服务主体标识的信息。 ManagedClusterServicePrincipal配置文件
windows配置文件 托管群集中 Windows VM 的配置文件。 ManagedClusterWindows配置文件

ManagedClusterPropertiesAddonProfiles

名称 DESCRIPTION 价值

ManagedClusterPropertiesAutoScalerProfile

名称 DESCRIPTION 价值
balance-similar-node-groups (平衡相似节点组) 有效值为“true”和“false” 字符串
膨胀 如果未指定,则默认值为“random”。 有关详细信息,请参阅 扩展器 “最不浪费”
“most-pods”
“priority”
“random”
最大空批量删除 默认值是10。 字符串
最大正常终止秒 默认值为 600。 字符串
最大节点预置时间 默认值为“15m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
最大总未就绪百分比 默认值为 45。 最大值为 100,最小值为 0。 字符串
新 pod-scale-up-delay 对于在 kubernetes 计划程序可以计划所有 Pod 之前不希望 CA 执行作的突发/批处理缩放方案,可以告诉 CA 在某个年龄之前忽略未计划的 Pod。 默认值为“0s”。 值必须是一个整数,后跟一个单位(以秒为单位,“m”表示分钟,“h”表示小时等)。 字符串
确定-总计-未就绪-计数 这必须是整数。 默认值是3。 字符串
添加后缩减延迟 默认值为“10m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
删除后缩减延迟 默认值为扫描间隔。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
失败后缩减延迟 默认值为“3m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
scale-down-unneed-time 默认值为“10m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
scale-down-unready-time (缩减未就绪时间) 默认值为“20m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
scale-down-utilization-threshold (缩减利用率阈值) 默认值为“0.5”。 字符串
扫描间隔 默认值为“10”。 值必须是整数秒数。 字符串
使用本地存储的跳过节点 默认值为 true。 字符串
带有系统容器的跳过节点 默认值为 true。 字符串

ManagedClusterPropertiesIdentity配置文件

名称 DESCRIPTION 价值

ManagedClusterServicePrincipal配置文件

名称 DESCRIPTION 价值
客户端 ID 服务主体的 ID。 string (必需)
机密 以纯文本形式与服务主体关联的机密密码。 字符串

ManagedClusterSKU

名称 DESCRIPTION 价值
姓名 托管群集 SKU 的名称。 “Basic”
分层 如果未指定,则默认值为“Free”。 有关更多详细信息,请参阅 运行时间 SLA “Free”
“付费”

ManagedClusterWindows配置文件

名称 DESCRIPTION 价值
管理员密码 指定管理员帐户的密码。

最小长度: 8 个字符

最大长度: 123 个字符

复杂性要求:需要满足以下 4 个条件中的 3 个
字符数较低
具有大写字符
包含数字
具有特殊字符(正则表达式匹配 [\W_])

不允许的值:“abc@123”、“P@$$w 0rd”、“P@ssw0rd”、“P@ssword123”、“Pa$$word”、“pass@word1”、“Password!”、“Password1”、“Password22”、“iloveyou!”
字符串
管理员用户名 指定管理员帐户的名称。

限制: 不能以“.”结尾。

不允许的值:“administrator”、“admin”、“user”、“user1”、“test”、“user2”、“test1”、“user3”、“admin1”、“1”, “123”、“a”、“actuser”、“adm”、“admin2”、“aspnet”、“backup”、“console”、“david”、“guest”、“john”、“owner”、“root”、“server”、“sql”、“support”、“support_388945a0”、“sys”、“test2”、“test3”、“user4”、“user5”。

最小长度: 1 个字符

最大长度: 20 个字符
string (必需)
enableCSIProxy 有关 CSI 代理的更多详细信息,请参阅 CSI 代理 GitHub 存储库 布尔
许可证类型 用于 Windows VM 的许可证类型。 有关更多详细信息,请参阅 Azure 混合用户权益 “None”
“Windows_Server”

PrivateLinkResource

名称 DESCRIPTION 价值
组 ID 资源的组 ID。 字符串
身份证 专用链接资源的 ID。 字符串
姓名 专用链接资源的名称。 字符串
requiredMembers (必需成员) 资源的 RequiredMembers 字符串[]
类型 资源类型。 字符串

资源引用

名称 DESCRIPTION 价值
身份证 完全限定的 Azure 资源 ID。 字符串

资源标签

名称 DESCRIPTION 价值

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)
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)
netNetfilterNfConntrackMax Sysctl 设置net.netfilter.nf_conntrack_max。 整数 (int)
vmMaxMapCount Sysctl 设置 vm.max_map_count。 整数 (int)
vmSwappiness Sysctl 设置 vm.swappiness。 整数 (int)
vmVfsCachePressure Sysctl 设置vm.vfs_cache_pressure。 整数 (int)

UserAssignedIdentity

名称 DESCRIPTION 价值
客户端 ID 用户分配标识的客户端 ID。 字符串
对象 ID 用户分配标识的对象 ID。 字符串
资源ID 用户分配标识的资源 ID。 字符串

用法示例

Azure 快速入门模板

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

模板 DESCRIPTION
使用 NAT 网关和应用程序网关 AKS 群集

部署到 Azure
此示例演示如何使用 NAT 网关部署 AKS 群集进行出站连接,以及如何为入站连接部署应用程序网关。
使用应用程序网关入口控制器 AKS 群集

部署到 Azure
此示例演示如何使用应用程序网关、应用程序网关入口控制器、Azure 容器注册表、Log Analytics 和 Key Vault 部署 AKS 群集
Azure 容器服务 (AKS)

部署到 Azure
使用 Azure Linux 容器主机部署具有 Azure 容器服务(AKS)的托管群集
Azure 容器服务 (AKS)

部署到 Azure
使用 Azure 容器服务部署托管群集(AKS)
将 Azure 容器服务 (AKS) 与 Helm 配合使用

部署到 Azure
使用 Helm 部署具有 Azure 容器服务(AKS)的托管群集
Azure Kubernetes 服务 (AKS)

部署到 Azure
通过 Azure Kubernetes 服务部署托管 Kubernetes 群集 (AKS)
Azure 机器学习端到端安全设置

部署到 Azure
此 Bicep 模板集演示如何在安全设置中端到端设置 Azure 机器学习。 此参考实现包括工作区、计算群集、计算实例和附加的专用 AKS 群集。
Azure 机器学习端到端安全设置(旧版)

部署到 Azure
此 Bicep 模板集演示如何在安全设置中端到端设置 Azure 机器学习。 此参考实现包括工作区、计算群集、计算实例和附加的专用 AKS 群集。
在 Azure 容器服务(AKS)上使用 Jenkins CI/CD

部署到 Azure
容器使你可以轻松地持续生成和部署应用程序。 通过在 Azure 容器服务中使用 Kubernetes 协调这些容器的部署,可以实现可复制、可管理的容器群集。 通过设置持续生成来生成容器映像和业务流程,可以提高部署的速度和可靠性。
创建专用 AKS 群集

部署到 Azure
此示例演示如何在虚拟网络中创建专用 AKS 群集以及 jumpbox 虚拟机。
使用公共 DNS 区域创建专用 AKS 群集

部署到 Azure
此示例演示如何使用公共 DNS 区域部署专用 AKS 群集。
使用 Prometheus 和 Grafana 和 privae 链接创建 AKS

部署到 Azure
这将在 Azure Kubernetes 服务(AKS)群集上创建 Azure grafana、AKS 并安装 Prometheus(开源监视和警报工具包)。 然后使用 Azure Managed Grafana 的托管专用终结点连接到此 Prometheus 服务器并在 Grafana 仪表板中显示 Prometheus 数据
部署托管 Kubernetes 群集 (AKS)

部署到 Azure
此 ARM 模板演示如何将具有高级网络功能的 AKS 实例部署到现有虚拟网络。 此外,所选的服务主体将针对包含 AKS 群集的子网分配网络参与者角色。
使用 AAD 部署托管 Kubernetes 群集(AKS)

部署到 Azure
此 ARM 模板演示如何将具有高级网络功能的 AKS 实例部署到现有虚拟网络和 Azure AD 整数。 此外,所选的服务主体将针对包含 AKS 群集的子网分配网络参与者角色。
为 Azure ML 部署 AKS 群集

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

部署到 Azure
完全专用 min.io Azure 网关部署,以提供受 Blob 存储支持的符合 S3 的存储 API

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

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

  • 资源组

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

资源格式

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

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ContainerService/managedClusters@2021-05-01"
  name = "string"
  parent_id = "string"
  identity {
    type = "string"
    identity_ids = [
      "string"
    ]
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    extendedLocation = {
      name = "string"
      type = "string"
    }
    properties = {
      aadProfile = {
        adminGroupObjectIDs = [
          "string"
        ]
        clientAppID = "string"
        enableAzureRBAC = bool
        managed = bool
        serverAppID = "string"
        serverAppSecret = "string"
        tenantID = "string"
      }
      addonProfiles = {
        {customized property} = {
          config = {
            {customized property} = "string"
          }
          enabled = bool
        }
      }
      agentPoolProfiles = [
        {
          availabilityZones = [
            "string"
          ]
          count = int
          enableAutoScaling = bool
          enableEncryptionAtHost = bool
          enableFIPS = bool
          enableNodePublicIP = bool
          enableUltraSSD = bool
          gpuInstanceProfile = "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
          minCount = int
          mode = "string"
          name = "string"
          nodeLabels = {
            {customized property} = "string"
          }
          nodePublicIPPrefixID = "string"
          nodeTaints = [
            "string"
          ]
          orchestratorVersion = "string"
          osDiskSizeGB = int
          osDiskType = "string"
          osSKU = "string"
          osType = "string"
          podSubnetID = "string"
          proximityPlacementGroupID = "string"
          scaleSetEvictionPolicy = "string"
          scaleSetPriority = "string"
          spotMaxPrice = int
          tags = {
            {customized property} = "string"
          }
          type = "string"
          upgradeSettings = {
            maxSurge = "string"
          }
          vmSize = "string"
          vnetSubnetID = "string"
        }
      ]
      apiServerAccessProfile = {
        authorizedIPRanges = [
          "string"
        ]
        enablePrivateCluster = bool
        enablePrivateClusterPublicFQDN = bool
        privateDNSZone = "string"
      }
      autoScalerProfile = {
        balance-similar-node-groups = "string"
        expander = "string"
        max-empty-bulk-delete = "string"
        max-graceful-termination-sec = "string"
        max-node-provision-time = "string"
        max-total-unready-percentage = "string"
        new-pod-scale-up-delay = "string"
        ok-total-unready-count = "string"
        scale-down-delay-after-add = "string"
        scale-down-delay-after-delete = "string"
        scale-down-delay-after-failure = "string"
        scale-down-unneeded-time = "string"
        scale-down-unready-time = "string"
        scale-down-utilization-threshold = "string"
        scan-interval = "string"
        skip-nodes-with-local-storage = "string"
        skip-nodes-with-system-pods = "string"
      }
      autoUpgradeProfile = {
        upgradeChannel = "string"
      }
      disableLocalAccounts = bool
      diskEncryptionSetID = "string"
      dnsPrefix = "string"
      enablePodSecurityPolicy = bool
      enableRBAC = bool
      fqdnSubdomain = "string"
      httpProxyConfig = {
        httpProxy = "string"
        httpsProxy = "string"
        noProxy = [
          "string"
        ]
        trustedCa = "string"
      }
      identityProfile = {
        {customized property} = {
          clientId = "string"
          objectId = "string"
          resourceId = "string"
        }
      }
      kubernetesVersion = "string"
      linuxProfile = {
        adminUsername = "string"
        ssh = {
          publicKeys = [
            {
              keyData = "string"
            }
          ]
        }
      }
      networkProfile = {
        dnsServiceIP = "string"
        dockerBridgeCidr = "string"
        loadBalancerProfile = {
          allocatedOutboundPorts = int
          effectiveOutboundIPs = [
            {
              id = "string"
            }
          ]
          idleTimeoutInMinutes = int
          managedOutboundIPs = {
            count = int
          }
          outboundIPPrefixes = {
            publicIPPrefixes = [
              {
                id = "string"
              }
            ]
          }
          outboundIPs = {
            publicIPs = [
              {
                id = "string"
              }
            ]
          }
        }
        loadBalancerSku = "string"
        networkMode = "string"
        networkPlugin = "string"
        networkPolicy = "string"
        outboundType = "string"
        podCidr = "string"
        serviceCidr = "string"
      }
      nodeResourceGroup = "string"
      podIdentityProfile = {
        allowNetworkPluginKubenet = bool
        enabled = bool
        userAssignedIdentities = [
          {
            bindingSelector = "string"
            identity = {
              clientId = "string"
              objectId = "string"
              resourceId = "string"
            }
            name = "string"
            namespace = "string"
          }
        ]
        userAssignedIdentityExceptions = [
          {
            name = "string"
            namespace = "string"
            podLabels = {
              {customized property} = "string"
            }
          }
        ]
      }
      privateLinkResources = [
        {
          groupId = "string"
          id = "string"
          name = "string"
          requiredMembers = [
            "string"
          ]
          type = "string"
        }
      ]
      servicePrincipalProfile = {
        clientId = "string"
        secret = "string"
      }
      windowsProfile = {
        adminPassword = "string"
        adminUsername = "string"
        enableCSIProxy = bool
        licenseType = "string"
      }
    }
    sku = {
      name = "string"
      tier = "string"
    }
  }
}

属性值

Microsoft.ContainerService/managedClusters

名称 DESCRIPTION 价值
extendedLocation 虚拟机的扩展位置。 扩展位置
标识 托管群集的标识(如果已配置)。 ManagedClusterIdentity
位置 资源位置 string (必需)
姓名 资源名称 字符串

约束:
最小长度 = 1
最大长度 = 63
模式 = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$ (必需)
属性 托管群集的属性。 ManagedClusterProperties
SKU 托管群集 SKU。 ManagedClusterSKU
标签 资源标记 标记名称和值的字典。
类型 资源类型 “Microsoft.ContainerService/managedClusters@2021-05-01”

AgentPoolUpgradeSettings

名称 DESCRIPTION 价值
最大浪涌 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 1。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster#customize-node-surge-upgrade 字符串

Components1Umhcm8SchemasManagedclusteridentityPropertiesUserassignedidentitiesAdditionalproperties

名称 DESCRIPTION 价值

ComponentsQit0EtSchemasManagedclusterpropertiesPropertiesIdentityprofileAdditionalproperties

名称 DESCRIPTION 价值
客户端 ID 用户分配标识的客户端 ID。 字符串
对象 ID 用户分配标识的对象 ID。 字符串
资源ID 用户分配标识的资源 ID。 字符串

ContainerServiceLinux配置文件

名称 DESCRIPTION 价值
管理员用户名 用于 Linux VM 的管理员用户名。 字符串

约束:
模式 = ^[A-Za-z][-A-Za-z0-9_]*$ (必需)
SSH 在 Azure 上运行的基于 Linux 的 VM 的 SSH 配置。 ContainerServiceSshConfiguration (必需)

ContainerServiceNetwork配置文件

名称 DESCRIPTION 价值
dnsServiceIP 分配给 Kubernetes DNS 服务的 IP 地址。 它必须位于 serviceCidr 中指定的 Kubernetes 服务地址范围内。 字符串

约束:
图案 = ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
dockerBridgeCidr 分配给 Docker 网桥网络的 CIDR 表示法 IP 范围。 它不得与任何子网 IP 范围或 Kubernetes 服务地址范围重叠。 字符串

约束:
图案 = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
loadBalancer配置文件 群集负载均衡器的配置文件。 ManagedClusterLoadBalancer配置文件
loadBalancerSku 默认值为“standard”。 有关负载均衡器 SKU 之间的差异的详细信息,请参阅 Azure 负载均衡器 SKU。 “basic”
“standard”
网络模式 如果 networkPlugin 不是“azure”,则无法指定此项。 “bridge”
“transparent”
网络插件 用于生成 Kubernetes 网络的网络插件。 “azure”
“kubenet”
网络策略 用于生成 Kubernetes 网络的网络策略。 “azure”
“calico”
outbound类型 这只能在群集创建时设置,以后无法更改。 有关详细信息,请参阅 出口出站类型 “loadBalancer”
“userDefinedRouting”
podCidr 使用 kubenet 时分配 Pod IP 的 CIDR 表示法 IP 范围。 字符串

约束:
图案 = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
serviceCidr 服务 从中分配服务群集 IP 的 CIDR 表示法 IP 范围。 它不得与任何子网 IP 范围重叠。 字符串

约束:
图案 = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$

ContainerServiceSshConfiguration

名称 DESCRIPTION 价值
公钥 用于通过基于 Linux 的 VM 进行身份验证的 SSH 公钥列表。 最多可以指定 1 个键。 ContainerServiceSshPublicKey[] (必需)

ContainerServiceSshPublicKey

名称 DESCRIPTION 价值
密钥数据 用于通过 SSH 向 VM 进行身份验证的证书公钥。 证书必须采用 PEM 格式(带或不带标头)。 string (必需)

扩展位置

名称 DESCRIPTION 价值
姓名 扩展位置的名称。 字符串
类型 扩展位置的类型。 “EdgeZone”

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”。 有关详细信息,请参阅 透明巨页 字符串

ManagedClusterAADPro文件

名称 DESCRIPTION 价值
adminGroupObjectID 将具有群集管理员角色的 AAD 组对象 ID 的列表。 字符串[]
客户端 AppID 客户端 AAD 应用程序 ID。 字符串
启用 AzureRBAC 是否为 Kubernetes 授权启用 Azure RBAC。 布尔
托管的 是否启用托管 AAD。 布尔
服务器AppID 服务器 AAD 应用程序 ID。 字符串
serverAppSecret 服务器 服务器 AAD 应用程序机密。 字符串
租户 ID 用于身份验证的 AAD 租户 ID。 如果未指定,将使用部署订阅的租户。 字符串

ManagedClusterAddon配置文件

名称 DESCRIPTION 价值
配置 用于配置加载项的键值对。 ManagedClusterAddonProfileConfig
启用 是否启用加载项。 bool (必需)

ManagedClusterAddonProfileConfig

名称 DESCRIPTION 价值

ManagedClusterAgentPoolProfile

名称 DESCRIPTION 价值
可用性区域 要用于节点的可用性区域列表。 仅当 AgentPoolType 属性为“VirtualMachineScaleSets”时,才能指定此值。 字符串[]
计数 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 整数 (int)
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”
kubelet配置 代理池节点上的 Kubelet 配置。 KubeletConfig 实例
kubeletDiskType 确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。 “OS”
“临时”
linuxOSConfig Linux 代理节点的 OS 配置。 LinuxOSConfig
最大计数 自动缩放的最大节点数 整数 (int)
最大 Pod 可在节点上运行的 Pod 的最大数目。 整数 (int)
最小计数 自动缩放的最小节点数 整数 (int)
模式 群集必须随时至少有一个“系统”代理池。 有关代理池限制和最佳做法的其他信息,请参阅:/azure/aks/use-system-pools “System”
“User”
姓名 Windows 代理池名称必须为 6 个字符或更少。 字符串

约束:
模式 = ^[a-z][a-z0-9]{0,11}$ (必需)
nodeLabels (节点标签) 要跨代理池中的所有节点保留的节点标签。 ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodePublicIPPrefixID 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} 字符串
node污点 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 字符串[]
orchestratorVersion 最佳做法是将 AKS 群集中的所有节点池升级到相同的 Kubernetes 版本。 节点池版本必须与控制平面具有相同的主版本。 节点池次要版本必须位于控制平面版本的两个次要版本中。 节点池版本不能大于控制平面版本。 有关详细信息,请参阅 升级节点池 字符串
osDiskSizeGB OS 磁盘大小(以 GB 为单位)用于为主/代理池中的每个计算机指定磁盘大小。 如果指定 0,它将根据指定的 vmSize 应用默认 osDisk 大小。 int

约束:
最小值 = 0
最大值 = 2048
osDiskType 如果 VM 支持该 VM 并且缓存磁盘大于请求的 OSDiskSizeGB,则默认值为“临时”。 否则,默认为“Managed”。 创建后可能不会更改。 有关详细信息,请参阅 临时 OS “临时”
“Managed”
osSKU 指定 OS SKU。 如果 OSType 为 Windows,则不能指定此值。 “CBLMariner”
“Ubuntu”
操作系统类型 作系统类型。 默认值为 Linux。 “Linux”
“Windows”
podSubnetID 如果省略,则会在节点子网上静态分配 Pod IP(有关详细信息,请参阅 vnetSubnetID)。 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} 字符串
proximityPlacementGroupID 邻近放置组的 ID。 字符串
scaleSetEvictionPolicy 除非 scaleSetPriority 为“Spot”,否则无法指定此项。 如果未指定,则默认值为“Delete”。 “Deallocate”
“Delete”
scaleSetPriority 虚拟机规模集优先级。 如果未指定,则默认值为“Regular”。 “Regular”
“Spot”
现货最大价格 可能的值是大于零或 -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} 字符串

ManagedClusterAgentPoolProfilePropertiesNodeLabels

名称 DESCRIPTION 价值

ManagedClusterAgentPoolProfileProperties标签

名称 DESCRIPTION 价值

ManagedClusterAPIServerAccessProfile

名称 DESCRIPTION 价值
授权 IPRanges IP 范围以 CIDR 格式指定,例如 137.117.106.88/29。 此功能与使用公共 IP Per Node 的群集或使用基本负载均衡器的群集不兼容。 有关详细信息,请参阅 API 服务器授权 IP 范围 字符串[]
enablePrivateCluster 有关详细信息,请参阅 创建专用 AKS 群集 布尔
enablePrivateClusterPublicFQDN 是否为专用群集创建其他公共 FQDN。 布尔
privateDNSZone 默认值为 System。 有关更多详细信息,请参阅 配置专用 DNS 区域。 允许的值为“system”和“none”。 字符串

ManagedClusterAutoUpgrade配置文件

名称 DESCRIPTION 价值
upgradeChannel 有关详细信息 ,请参阅设置 AKS 群集自动升级通道 “node-image”
没有
“patch”
“rapid”
“stable”

ManagedClusterHttpProxyConfig

名称 DESCRIPTION 价值
http代理 要使用的 HTTP 代理服务器终结点。 字符串
https代理 要使用的 HTTPS 代理服务器终结点。 字符串
无代理 不应通过代理的终结点。 字符串[]
可信的 Ca 用于连接到代理服务器的替代 CA 证书。 字符串

ManagedClusterIdentity

名称 DESCRIPTION 价值
类型 有关详细信息,请参阅 在 AKS 中使用托管标识 “None”
“SystemAssigned”
“UserAssigned”
用户分配的标识 密钥必须是 ARM 资源 ID,格式为“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 ManagedClusterIdentityUserAssignedIdentities

ManagedClusterIdentityUserAssignedIdentities

名称 DESCRIPTION 价值

ManagedClusterLoadBalancer配置文件

名称 DESCRIPTION 价值
allocatedOutboundPorts 每个 VM 分配的 SNAT 端口的所需数量。 允许的值为 0 到 64000(含)。 默认值为 0,这会导致 Azure 动态分配端口。 int

约束:
最小值 = 0
最大值 = 64000
effectiveOutboundIPs 群集负载均衡器的有效出站 IP 资源。 资源引用[]
idleTimeoutInMinutes 所需的出站流空闲超时(以分钟为单位)。 允许的值为 4 到 120(含)。 默认值为 30 分钟。 int

约束:
最小值 = 4
最大值 = 120
managedOutboundIP 群集负载均衡器的所需托管出站 IP。 ManagedClusterLoadBalancerProfileManagedOutboundIPs
outboundIPPrefixes 群集负载均衡器的所需出站 IP 前缀资源。 ManagedClusterLoadBalancerProfileOutboundIPP修复
outboundIP 群集负载均衡器的所需出站 IP 资源。 ManagedClusterLoadBalancerProfileOutboundIPs

ManagedClusterLoadBalancerProfileManagedOutboundIPs

名称 DESCRIPTION 价值
计数 Azure 为群集负载均衡器创建/管理的所需出站 IP 数。 允许的值必须介于 1 到 100 之间(含)。 默认值为 1。 int

约束:
最小值 = 1
最大值 = 100

ManagedClusterLoadBalancerProfileOutboundIPP修复

名称 DESCRIPTION 价值
publicIP 修复 公共 IP 前缀资源的列表。 资源引用[]

ManagedClusterLoadBalancerProfileOutboundIPs

名称 DESCRIPTION 价值
publicIP 公共 IP 资源的列表。 资源引用[]

ManagedClusterPodIdentity

名称 DESCRIPTION 价值
bindingSelector 要用于 AzureIdentityBinding 资源的绑定选择器。 字符串
标识 用户分配的标识详细信息。 UserAssignedIdentity (必需)
姓名 Pod 标识的名称。 string (必需)
命名空间 Pod 标识的命名空间。 string (必需)

ManagedClusterPodIdentity异常

名称 DESCRIPTION 价值
姓名 Pod 标识异常的名称。 string (必需)
命名空间 Pod 标识异常的命名空间。 string (必需)
pod标签 要匹配的 Pod 标签。 ManagedClusterPodIdentityExceptionPodLabels (必需)

ManagedClusterPodIdentityExceptionPodLabels

名称 DESCRIPTION 价值

ManagedClusterPodIdentity配置文件

名称 DESCRIPTION 价值
allowNetworkPluginKubenet 默认情况下,由于 AAD Pod 标识的安全相关特性以及 IP 欺骗的风险,在 Kubenet 中运行会禁用。 有关详细信息,请参阅 将 Kubenet 网络插件与 AAD Pod 标识配合使用 布尔
启用 是否启用 Pod 标识加载项。 布尔
用户分配的标识 群集中使用的 Pod 标识。 ManagedClusterPodIdentity[]
userAssignedIdentity异常 允许的 Pod 标识异常。 ManagedClusterPodIdentityException异常

ManagedClusterProperties

名称 DESCRIPTION 价值
aad简介 Azure Active Directory 配置。 ManagedClusterAADPro文件
addonProfiles 插件配置文件 托管群集加载项的配置文件。 ManagedClusterPropertiesAddonProfiles
agentPoolProfiles 代理池属性。 ManagedClusterAgentPoolProfile[]
apiServerAccessProfile 托管群集 API 服务器的访问配置文件。 ManagedClusterAPIServerAccessProfile
autoScaler配置文件 启用时要应用于群集自动缩放程序的参数 ManagedClusterPropertiesAutoScalerProfile
autoUpgrade配置文件 自动升级配置。 ManagedClusterAutoUpgrade配置文件
disableLocalAccounts 如果设置为 true,将禁用此群集的静态凭据。 这只能在启用了 AAD 的托管群集上使用。 有关更多详细信息,请参阅 禁用本地帐户 布尔
diskEncryptionSetID 此格式为:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}” 字符串
dns前缀 创建托管群集后,无法更新此功能。 字符串
enablePodSecurityPolicy (弃用)是否启用 Kubernetes Pod 安全策略(预览版)。 此功能设置为在 2020 年 10 月 15 日删除。 有关详细信息,请查看 aka.ms/aks/azpodpolicy。 布尔
启用 RBAC 是否启用 Kubernetes Role-Based 访问控制。 布尔
fqdn子域 创建托管群集后,无法更新此功能。 字符串
httpProxyConfig 使用 HTTP 代理服务器预配群集的配置。 ManagedClusterHttpProxyConfig
identityProfile 与群集关联的标识。 ManagedClusterPropertiesIdentity配置文件
kubernetes版本 升级支持的 AKS 群集时,无法跳过 Kubernetes 次要版本。 所有升级都必须按主版本号按顺序执行。 例如,允许在 1.14.x -> 1.15.x 或 1.15.x -> 1.16.x 之间进行升级,但不允许使用 1.14.x -> 1.16.x。 有关更多详细信息 ,请参阅升级 AKS 群集 字符串
linux配置文件 托管群集中 Linux VM 的配置文件。 ContainerServiceLinux配置文件
网络简介 网络配置文件。 ContainerServiceNetwork配置文件
节点资源组 包含代理池节点的资源组的名称。 字符串
podIdentity配置文件 有关 AAD Pod 标识集成的详细信息,请参阅 使用 AAD Pod 标识。 ManagedClusterPodIdentity配置文件
privateLink资源 与群集关联的专用链接资源。 PrivateLinkResource[]
servicePrincipal简介 有关群集用于作 Azure API 的服务主体标识的信息。 ManagedClusterServicePrincipal配置文件
windows配置文件 托管群集中 Windows VM 的配置文件。 ManagedClusterWindows配置文件

ManagedClusterPropertiesAddonProfiles

名称 DESCRIPTION 价值

ManagedClusterPropertiesAutoScalerProfile

名称 DESCRIPTION 价值
balance-similar-node-groups (平衡相似节点组) 有效值为“true”和“false” 字符串
膨胀 如果未指定,则默认值为“random”。 有关详细信息,请参阅 扩展器 “最不浪费”
“most-pods”
“priority”
“random”
最大空批量删除 默认值是10。 字符串
最大正常终止秒 默认值为 600。 字符串
最大节点预置时间 默认值为“15m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
最大总未就绪百分比 默认值为 45。 最大值为 100,最小值为 0。 字符串
新 pod-scale-up-delay 对于在 kubernetes 计划程序可以计划所有 Pod 之前不希望 CA 执行作的突发/批处理缩放方案,可以告诉 CA 在某个年龄之前忽略未计划的 Pod。 默认值为“0s”。 值必须是一个整数,后跟一个单位(以秒为单位,“m”表示分钟,“h”表示小时等)。 字符串
确定-总计-未就绪-计数 这必须是整数。 默认值是3。 字符串
添加后缩减延迟 默认值为“10m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
删除后缩减延迟 默认值为扫描间隔。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
失败后缩减延迟 默认值为“3m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
scale-down-unneed-time 默认值为“10m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
scale-down-unready-time (缩减未就绪时间) 默认值为“20m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 字符串
scale-down-utilization-threshold (缩减利用率阈值) 默认值为“0.5”。 字符串
扫描间隔 默认值为“10”。 值必须是整数秒数。 字符串
使用本地存储的跳过节点 默认值为 true。 字符串
带有系统容器的跳过节点 默认值为 true。 字符串

ManagedClusterPropertiesIdentity配置文件

名称 DESCRIPTION 价值

ManagedClusterServicePrincipal配置文件

名称 DESCRIPTION 价值
客户端 ID 服务主体的 ID。 string (必需)
机密 以纯文本形式与服务主体关联的机密密码。 字符串

ManagedClusterSKU

名称 DESCRIPTION 价值
姓名 托管群集 SKU 的名称。 “Basic”
分层 如果未指定,则默认值为“Free”。 有关更多详细信息,请参阅 运行时间 SLA “Free”
“付费”

ManagedClusterWindows配置文件

名称 DESCRIPTION 价值
管理员密码 指定管理员帐户的密码。

最小长度: 8 个字符

最大长度: 123 个字符

复杂性要求:需要满足以下 4 个条件中的 3 个
字符数较低
具有大写字符
包含数字
具有特殊字符(正则表达式匹配 [\W_])

不允许的值:“abc@123”、“P@$$w 0rd”、“P@ssw0rd”、“P@ssword123”、“Pa$$word”、“pass@word1”、“Password!”、“Password1”、“Password22”、“iloveyou!”
字符串
管理员用户名 指定管理员帐户的名称。

限制: 不能以“.”结尾。

不允许的值:“administrator”、“admin”、“user”、“user1”、“test”、“user2”、“test1”、“user3”、“admin1”、“1”, “123”、“a”、“actuser”、“adm”、“admin2”、“aspnet”、“backup”、“console”、“david”、“guest”、“john”、“owner”、“root”、“server”、“sql”、“support”、“support_388945a0”、“sys”、“test2”、“test3”、“user4”、“user5”。

最小长度: 1 个字符

最大长度: 20 个字符
string (必需)
enableCSIProxy 有关 CSI 代理的更多详细信息,请参阅 CSI 代理 GitHub 存储库 布尔
许可证类型 用于 Windows VM 的许可证类型。 有关更多详细信息,请参阅 Azure 混合用户权益 “None”
“Windows_Server”

PrivateLinkResource

名称 DESCRIPTION 价值
组 ID 资源的组 ID。 字符串
身份证 专用链接资源的 ID。 字符串
姓名 专用链接资源的名称。 字符串
requiredMembers (必需成员) 资源的 RequiredMembers 字符串[]
类型 资源类型。 字符串

资源引用

名称 DESCRIPTION 价值
身份证 完全限定的 Azure 资源 ID。 字符串

资源标签

名称 DESCRIPTION 价值

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)
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)
netNetfilterNfConntrackMax Sysctl 设置net.netfilter.nf_conntrack_max。 整数 (int)
vmMaxMapCount Sysctl 设置 vm.max_map_count。 整数 (int)
vmSwappiness Sysctl 设置 vm.swappiness。 整数 (int)
vmVfsCachePressure Sysctl 设置vm.vfs_cache_pressure。 整数 (int)

UserAssignedIdentity

名称 DESCRIPTION 价值
客户端 ID 用户分配标识的客户端 ID。 字符串
对象 ID 用户分配标识的对象 ID。 字符串
资源ID 用户分配标识的资源 ID。 字符串

用法示例

Azure 验证模块

以下 Azure 验证模块 可用于部署此资源类型。

模块 DESCRIPTION
AKS 托管群集 AKS 托管群集的 AVM 资源模块