你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Microsoft.ContainerService managedClusters 2022-03-01
- 最新
- 2024-06-02-preview
- 2024-05-02-preview
- 2024-05-01
- 2024-04-02-preview
- 2024-03-02-preview
- 2024-02-01
- 2024-01-02-preview
- 2024-01-01
- 2023-11-02-preview
- 2023-11-01
- 2023-10-02-preview
- 2023-10-01
- 2023-09-02-preview
- 2023-09-01
- 2023-08-02-preview
- 2023-08-01
- 2023-07-02-preview
- 2023-07-01
- 2023-06-02-preview
- 2023-06-01
- 2023-05-02-preview
- 2023-05-01
- 2023-04-02-preview
- 2023-04-01
- 2023-03-02-preview
- 2023-03-01
- 2023-02-02-preview
- 2023-02-01
- 2023-01-02-preview
- 2023-01-01
- 2022-11-02-preview
- 2022-11-01
- 2022-10-02-preview
- 2022-09-01
- 2022-08-03-preview
- 2022-08-02-preview
- 2022-07-01
- 2022-06-01
- 2022-04-01
- 2022-03-01
- 2022-02-01
- 2022-01-01
- 2021-10-01
- 2021-09-01
- 2021-08-01
- 2021-07-01
- 2021-05-01
- 2021-03-01
- 2021-02-01
- 2020-12-01
- 2020-11-01
- 2020-09-01
Bicep 资源定义
可以使用目标操作部署 managedClusters 资源类型:
- 资源组 - 请参阅 资源组部署命令
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
言论
有关可用加载项的信息,请参阅 加载项、扩展和其他与 Azure Kubernetes 服务集成。
资源格式
若要创建 Microsoft.ContainerService/managedClusters 资源,请将以下 Bicep 添加到模板。
resource symbolicname 'Microsoft.ContainerService/managedClusters@2022-03-01' = {
name: 'string'
location: 'string'
tags: {
tagName1: 'tagValue1'
tagName2: 'tagValue2'
}
sku: {
name: 'Basic'
tier: 'string'
}
extendedLocation: {
name: 'string'
type: 'EdgeZone'
}
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
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
creationData: {
sourceResourceId: 'string'
}
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'
powerState: {
code: 'string'
}
proximityPlacementGroupID: 'string'
scaleDownMode: 'string'
scaleSetEvictionPolicy: 'string'
scaleSetPriority: 'string'
spotMaxPrice: json('decimal-as-string')
tags: {}
type: 'string'
upgradeSettings: {
maxSurge: 'string'
}
vmSize: 'string'
vnetSubnetID: 'string'
workloadRuntime: 'string'
}
]
apiServerAccessProfile: {
authorizedIPRanges: [
'string'
]
disableRunCommand: bool
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'
ipFamilies: [
'string'
]
loadBalancerProfile: {
allocatedOutboundPorts: int
effectiveOutboundIPs: [
{
id: 'string'
}
]
enableMultipleStandardLoadBalancers: bool
idleTimeoutInMinutes: int
managedOutboundIPs: {
count: int
countIPv6: int
}
outboundIPPrefixes: {
publicIPPrefixes: [
{
id: 'string'
}
]
}
outboundIPs: {
publicIPs: [
{
id: 'string'
}
]
}
}
loadBalancerSku: 'string'
natGatewayProfile: {
effectiveOutboundIPs: [
{
id: 'string'
}
]
idleTimeoutInMinutes: int
managedOutboundIPProfile: {
count: int
}
}
networkMode: 'string'
networkPlugin: 'string'
networkPolicy: 'string'
outboundType: 'string'
podCidr: 'string'
podCidrs: [
'string'
]
serviceCidr: 'string'
serviceCidrs: [
'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'
}
]
publicNetworkAccess: 'string'
securityProfile: {
azureDefender: {
enabled: bool
logAnalyticsWorkspaceResourceId: 'string'
}
}
servicePrincipalProfile: {
clientId: 'string'
secret: 'string'
}
windowsProfile: {
adminPassword: 'string'
adminUsername: 'string'
enableCSIProxy: bool
gmsaProfile: {
dnsServer: 'string'
enabled: bool
rootDomainName: 'string'
}
licenseType: 'string'
}
}
}
属性值
managedClusters
名字 | 描述 | 价值 |
---|---|---|
名字 | 资源名称 | string (必需) 字符限制:1-63 有效字符: 字母数字、下划线和连字符。 以字母数字开头和结尾。 |
位置 | 资源所在的地理位置 | string (必需) |
标签 | 资源标记。 | 标记名称和值的字典。 请参阅模板 中的 |
sku | 托管群集 SKU。 | ManagedClusterSKU |
extendedLocation | 虚拟机的扩展位置。 | ExtendedLocation |
身份 | 托管群集的标识(如果已配置)。 | ManagedClusterIdentity |
性能 | 托管群集的属性。 | ManagedClusterProperties |
ExtendedLocation
名字 | 描述 | 价值 |
---|---|---|
名字 | 扩展位置的名称。 | 字符串 |
类型 | 扩展位置的类型。 | “EdgeZone” |
ManagedClusterIdentity
名字 | 描述 | 价值 |
---|---|---|
类型 | 有关详细信息,请参阅 在 AKS中使用托管标识。 | “None” “SystemAssigned” “UserAssigned” |
userAssignedIdentities | 密钥必须是 ARM 资源 ID,格式为“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 | ManagedClusterIdentityUserAssignedIdentities |
ManagedClusterIdentityUserAssignedIdentities
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | ManagedServiceIdentityUserAssignedIdentitiesValue |
ManagedServiceIdentityUserAssignedIdentitiesValue
此对象不包含在部署期间设置的任何属性。 所有属性都是 ReadOnly。
ManagedClusterProperties
名字 | 描述 | 价值 |
---|---|---|
aadProfile | Azure Active Directory 配置。 | ManagedClusterAADProfile |
addonProfiles | 托管群集加载项的配置文件。 | ManagedClusterPropertiesAddonProfiles |
agentPoolProfiles | 代理池属性。 | ManagedClusterAgentPoolProfile[] |
apiServerAccessProfile | 托管群集 API 服务器的访问配置文件。 | ManagedClusterAPIServerAccessProfile |
autoScalerProfile | 启用时要应用于群集自动缩放程序的参数 | ManagedClusterPropertiesAutoScalerProfile |
autoUpgradeProfile | 自动升级配置。 | ManagedClusterAutoUpgradeProfile |
disableLocalAccounts | 如果设置为 true,将禁用此群集的静态凭据。 这只能在启用了 AAD 的托管群集上使用。 有关详细信息,请参阅 禁用本地帐户。 | bool |
diskEncryptionSetID | 此格式为:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}” | 字符串 |
dnsPrefix | 创建托管群集后,无法更新此功能。 | 字符串 |
enablePodSecurityPolicy | (弃用)是否启用 Kubernetes Pod 安全策略(预览版)。 此功能设置为在 2020 年 10 月 15 日删除。 有关详细信息,请查看 aka.ms/aks/azpodpolicy。 | bool |
enableRBAC | 是否启用 Kubernetes Role-Based 访问控制。 | bool |
fqdnSubdomain | 创建托管群集后,无法更新此功能。 | 字符串 |
httpProxyConfig | 使用 HTTP 代理服务器预配群集的配置。 | ManagedClusterHttpProxyConfig |
identityProfile | 与群集关联的标识。 | ManagedClusterPropertiesIdentityProfile |
kubernetesVersion | 升级支持的 AKS 群集时,无法跳过 Kubernetes 次要版本。 所有升级都必须按主版本号按顺序执行。 例如,允许在 1.14.x -> 1.15.x 或 1.15.x 之间升级> 1.16.x,但不允许使用 1.14.x -> 1.16.x。 有关更多详细信息,请参阅 升级 AKS 群集。 | 字符串 |
linuxProfile | 托管群集中 Linux VM 的配置文件。 | ContainerServiceLinuxProfile |
networkProfile | 网络配置文件。 | ContainerServiceNetworkProfile |
nodeResourceGroup | 包含代理池节点的资源组的名称。 | 字符串 |
podIdentityProfile | 有关 AAD Pod 标识集成的详细信息,请参阅 使用 AAD Pod 标识。 | ManagedClusterPodIdentityProfile |
privateLinkResources | 与群集关联的专用链接资源。 | PrivateLinkResource[] |
publicNetworkAccess | 允许或拒绝 AKS 的公共网络访问 | “Disabled” “Enabled” |
securityProfile | 托管群集的安全配置文件。 | ManagedClusterSecurityProfile |
servicePrincipalProfile | 有关群集用于操作 Azure API 的服务主体标识的信息。 | ManagedClusterServicePrincipalProfile |
windowsProfile | 托管群集中 Windows VM 的配置文件。 | ManagedClusterWindowsProfile |
ManagedClusterAADProfile
名字 | 描述 | 价值 |
---|---|---|
adminGroupObjectIDs | 将具有群集管理员角色的 AAD 组对象 ID 的列表。 | string[] |
clientAppID | 客户端 AAD 应用程序 ID。 | 字符串 |
enableAzureRBAC | 是否为 Kubernetes 授权启用 Azure RBAC。 | bool |
管理 | 是否启用托管 AAD。 | bool |
serverAppID | 服务器 AAD 应用程序 ID。 | 字符串 |
serverAppSecret | 服务器 AAD 应用程序机密。 | 字符串 |
tenantID | 用于身份验证的 AAD 租户 ID。 如果未指定,将使用部署订阅的租户。 | 字符串 |
ManagedClusterPropertiesAddonProfiles
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | ManagedClusterAddonProfile |
ManagedClusterAddonProfile
名字 | 描述 | 价值 |
---|---|---|
配置 | 用于配置加载项的键值对。 | ManagedClusterAddonProfileConfig |
启用 | 是否启用加载项。 | bool (必需) |
ManagedClusterAddonProfileConfig
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | 字符串 |
ManagedClusterAgentPoolProfile
名字 | 描述 | 价值 |
---|---|---|
availabilityZones | 要用于节点的可用性区域列表。 仅当 AgentPoolType 属性为“VirtualMachineScaleSets”时,才能指定此值。 | string[] |
计数 | 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 | int |
creationData | 如果使用快照创建/升级节点池,则用于指定源快照 ID 的 CreationData。 | CreationData |
enableAutoScaling | 是否启用自动缩放程序 | bool |
enableEncryptionAtHost | 这仅在某些 VM 大小和某些 Azure 区域中受支持。 有关详细信息,请参阅:/azure/aks/enable-host-encryption | bool |
enableFIPS | 有关详细信息,请参阅 添加启用了 FIPS 的节点池。 | bool |
enableNodePublicIP | 某些方案可能需要节点池中的节点接收其自己的专用公共 IP 地址。 一种常见方案适用于游戏工作负载,其中主机需要与云虚拟机建立直接连接,以最大程度地减少跃点。 有关详细信息,请参阅 为每个节点分配公共 IP。 默认值为 false。 | bool |
enableUltraSSD | 是否启用 UltraSSD | bool |
gpuInstanceProfile | 用于为支持的 GPU VM SKU 指定 GPU MIG 实例配置文件的 GPUInstanceProfile。 | “MIG1g” “MIG2g” “MIG3g” “MIG4g” “MIG7g” |
kubeletConfig | 代理池节点上的 Kubelet 配置。 | KubeletConfig |
kubeletDiskType | 确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。 | “OS” “临时” |
linuxOSConfig | Linux 代理节点的 OS 配置。 | LinuxOSConfig |
maxCount | 自动缩放的最大节点数 | int |
maxPods | 可在节点上运行的 Pod 的最大数目。 | int |
minCount | 自动缩放的最小节点数 | int |
模式 | 群集必须随时至少有一个“系统”代理池。 有关代理池限制和最佳做法的其他信息,请参阅:/azure/aks/use-system-pools | “System” “User” |
名字 | Windows 代理池名称必须为 6 个字符或更少。 | string (必需) 约束: Pattern = ^[a-z][a-z0-9]{0,11}$ |
nodeLabels | 要跨代理池中的所有节点保留的节点标签。 | ManagedClusterAgentPoolProfilePropertiesNodeLabels |
nodePublicIPPrefixID | 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} | 字符串 |
nodeTaints | 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 | string[] |
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” |
osType | 操作系统类型。 默认值为 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” |
spotMaxPrice | 可能的值是大于零或 -1 的任何小数值,表示愿意支付任何按需价格。 有关现成定价的更多详细信息,请参阅 现成 VM 定价 若要指定十进制值,请使用 json() 函数。 | int 或 json decimal |
标签 | 要保留在代理池虚拟机规模集上的标记。 | 对象 |
类型 | 代理池的类型。 | “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} | 字符串 |
workloadRuntime | 确定节点可以运行的工作负荷的类型。 | “OCIContainer” “WasmWasi” |
CreationData
名字 | 描述 | 价值 |
---|---|---|
sourceResourceId | 这是用于创建目标对象的源对象的 ARM ID。 | 字符串 |
KubeletConfig
名字 | 描述 | 价值 |
---|---|---|
allowedUnsafeSysctls | 允许的不安全 sysctls 或不安全的 sysctl 模式列表(以 * 结尾)。 |
string[] |
containerLogMaxFiles | 容器日志文件的最大数目。 该数字必须≥ 2。 | int 约束: 最小值 = 2 |
containerLogMaxSizeMB | 在轮换容器日志文件之前,容器日志文件的最大大小(例如 10Mi)。 | int |
cpuCfsQuota | 默认值为 true。 | bool |
cpuCfsQuotaPeriod | 默认值为“100ms”。 有效值是包含可选分数和单位后缀的小数序列。 例如:“300ms”、“2h45m”。 支持的单位为“ns”、“us”、“ms”、“s”、“m”和“h”。 | 字符串 |
cpuManagerPolicy | 默认值为“none”。 有关详细信息,请参阅 Kubernetes CPU 管理策略。 允许的值为“none”和“static”。 | 字符串 |
failSwapOn | 如果设置为 true,则如果在节点上启用了交换,则 Kubelet 将无法启动。 | bool |
imageGcHighThreshold | 若要禁用映像垃圾回收,请设置为 100。 默认值为 85% | int |
imageGcLowThreshold | 这不能设置为高于 imageGcHighThreshold。 默认值为 80% | int |
podMaxPids | 每个 Pod 的最大进程数。 | int |
topologyManagerPolicy | 有关详细信息,请参阅 Kubernetes 拓扑管理器。 默认值为“none”。 允许的值为“none”、“best-effort”、“restricted”和“single-numa-node”。 | 字符串 |
LinuxOSConfig
名字 | 描述 | 价值 |
---|---|---|
swapFileSizeMB | 将在每个节点上创建的交换文件的大小(以 MB 为单位)。 | int |
sysctls | Linux 代理节点的 Sysctl 设置。 | SysctlConfig |
transparentHugePageDefrag | 有效值为“always”、“defer”、“defer+madvise”、“madvise”和“never”。 默认值为“madvise”。 有关详细信息,请参阅 透明巨页。 | 字符串 |
transparentHugePageEnabled | 有效值为“always”、“madvise”和“never”。 默认值为“always”。 有关详细信息,请参阅 透明巨页。 | 字符串 |
SysctlConfig
名字 | 描述 | 价值 |
---|---|---|
fsAioMaxNr | Sysctl setting fs.aio-max-nr. | int |
fsFileMax | Sysctl setting fs.file-max. | int |
fsInotifyMaxUserWatches | Sysctl 设置 fs.inotify.max_user_watches。 | int |
fsNrOpen | Sysctl 设置fs.nr_open。 | int |
kernelThreadsMax | Sysctl 设置 kernel.threads-max。 | int |
netCoreNetdevMaxBacklog | Sysctl 设置net.core.netdev_max_backlog。 | int |
netCoreOptmemMax | Sysctl 设置net.core.optmem_max。 | int |
netCoreRmemDefault | Sysctl 设置net.core.rmem_default。 | int |
netCoreRmemMax | Sysctl 设置net.core.rmem_max。 | int |
netCoreSomaxconn | Sysctl setting net.core.somaxconn. | int |
netCoreWmemDefault | 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 |
netIpv4TcpKeepaliveProbes | 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 |
netIpv4TcpTwReuse | Sysctl 设置net.ipv4.tcp_tw_reuse。 | bool |
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 |
ManagedClusterAgentPoolProfilePropertiesNodeLabels
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | 字符串 |
PowerState
名字 | 描述 | 价值 |
---|---|---|
法典 | 指示群集是正在运行还是已停止 | “Running” “Stopped” |
AgentPoolUpgradeSettings
名字 | 描述 | 价值 |
---|---|---|
maxSurge | 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 1。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster#customize-node-surge-upgrade | 字符串 |
ManagedClusterAPIServerAccessProfile
名字 | 描述 | 价值 |
---|---|---|
authorizedIPRanges | IP 范围以 CIDR 格式指定,例如 137.117.106.88/29。 此功能与使用公共 IP Per Node 的群集或使用基本负载均衡器的群集不兼容。 有关详细信息,请参阅 API 服务器授权 IP 范围。 | string[] |
disableRunCommand | 是否禁用群集的 run 命令。 | bool |
enablePrivateCluster | 有关详细信息,请参阅 创建专用 AKS 群集。 | bool |
enablePrivateClusterPublicFQDN | 是否为专用群集创建其他公共 FQDN。 | bool |
privateDNSZone | 默认值为 System。 有关详细信息,请参阅 配置专用 DNS 区域。 允许的值为“system”和“none”。 | 字符串 |
ManagedClusterPropertiesAutoScalerProfile
名字 | 描述 | 价值 |
---|---|---|
balance-similar-node-groups | 有效值为“true”和“false” | 字符串 |
膨胀 | 如果未指定,则默认值为“random”。 有关详细信息,请参阅 扩展器。 | “最不浪费” “most-pods” “priority” “random” |
max-empty-bulk-delete | 默认值为 10。 | 字符串 |
max-graceful-termination-sec | 默认值为 600。 | 字符串 |
max-node-provision-time | 默认值为“15m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
max-total-unready-percentage | 默认值为 45。 最大值为 100,最小值为 0。 | 字符串 |
new-pod-scale-up-delay | 对于在 kubernetes 计划程序可以计划所有 Pod 之前不希望 CA 执行操作的突发/批处理缩放方案,可以告诉 CA 在某个年龄之前忽略未计划的 Pod。 默认值为“0s”。 值必须是一个整数,后跟一个单位(以秒为单位,“m”表示分钟,“h”表示小时等)。 | 字符串 |
ok-total-unready-count | 这必须是整数。 默认值为 3。 | 字符串 |
scale-down-delay-after-add | 默认值为“10m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-delay-after-delete | 默认值为扫描间隔。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-delay-after-failure | 默认值为“3m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-unneed-time | 默认值为“10m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-unready-time | 默认值为“20m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-utilization-threshold | 默认值为“0.5”。 | 字符串 |
scan-interval | 默认值为“10”。 值必须是整数秒数。 | 字符串 |
skip-nodes-with-local-storage | 默认值为 true。 | 字符串 |
skip-nodes-with-system-pods | 默认值为 true。 | 字符串 |
ManagedClusterAutoUpgradeProfile
名字 | 描述 | 价值 |
---|---|---|
upgradeChannel | 有关详细信息,请参阅 设置 AKS 群集自动升级通道。 | “node-image” “none” “patch” “rapid” “stable” |
ManagedClusterHttpProxyConfig
名字 | 描述 | 价值 |
---|---|---|
httpProxy | 要使用的 HTTP 代理服务器终结点。 | 字符串 |
httpsProxy | 要使用的 HTTPS 代理服务器终结点。 | 字符串 |
noProxy | 不应通过代理的终结点。 | string[] |
trustedCa | 用于连接到代理服务器的替代 CA 证书。 | 字符串 |
ManagedClusterPropertiesIdentityProfile
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | UserAssignedIdentity |
UserAssignedIdentity
名字 | 描述 | 价值 |
---|---|---|
clientId | 用户分配标识的客户端 ID。 | 字符串 |
objectId | 用户分配标识的对象 ID。 | 字符串 |
resourceId | 用户分配标识的资源 ID。 | 字符串 |
ContainerServiceLinuxProfile
名字 | 描述 | 价值 |
---|---|---|
adminUsername | 用于 Linux VM 的管理员用户名。 | string (必需) 约束: Pattern = ^[A-Za-z][-A-Za-z0-9_]*$ |
ssh | 在 Azure 上运行的基于 Linux 的 VM 的 SSH 配置。 | ContainerServiceSshConfiguration (必需) |
ContainerServiceSshConfiguration
名字 | 描述 | 价值 |
---|---|---|
publicKeys | 用于通过基于 Linux 的 VM 进行身份验证的 SSH 公钥列表。 最多可以指定 1 个键。 | ContainerServiceSshPublicKey[] (必需) |
ContainerServiceSshPublicKey
名字 | 描述 | 价值 |
---|---|---|
keyData | 用于通过 SSH 向 VM 进行身份验证的证书公钥。 证书必须采用 PEM 格式(带或不带标头)。 | string (必需) |
ContainerServiceNetworkProfile
名字 | 描述 | 价值 |
---|---|---|
dnsServiceIP | 分配给 Kubernetes DNS 服务的 IP 地址。 它必须位于 serviceCidr 中指定的 Kubernetes 服务地址范围内。 | 字符串 约束: Pattern = ^(?:(?: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 服务地址范围重叠。 | 字符串 约束: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
ipFamilies | IP 系列用于确定单堆栈或双堆栈群集。 对于单堆栈,预期值为 IPv4。 对于双堆栈,预期值为 IPv4 和 IPv6。 | 包含任一项的字符串数组: “IPv4” “IPv6” |
loadBalancerProfile | 群集负载均衡器的配置文件。 | ManagedClusterLoadBalancerProfile |
loadBalancerSku | 默认值为“standard”。 有关负载均衡器 SKU 之间的差异的详细信息,请参阅 Azure 负载均衡器 SKU。 | “basic” “standard” |
natGatewayProfile | 群集 NAT 网关的配置文件。 | ManagedClusterNATGatewayProfile |
networkMode | 如果 networkPlugin 不是“azure”,则无法指定此项。 | “bridge” “transparent” |
networkPlugin | 用于生成 Kubernetes 网络的网络插件。 | “azure” “kubenet” |
networkPolicy | 用于生成 Kubernetes 网络的网络策略。 | “azure” “calico” |
outboundType | 这只能在群集创建时设置,以后无法更改。 有关详细信息,请参阅 出口出站类型。 | “loadBalancer” “managedNATGateway” “userAssignedNATGateway” “userDefinedRouting” |
podCidr | 使用 kubenet 时分配 Pod IP 的 CIDR 表示法 IP 范围。 | 字符串 约束: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
podCidrs | 单堆栈网络需要一个 IPv4 CIDR。 对于双堆栈网络,每个 IP 系列(IPv4/IPv6)都有两个CIDR。 | string[] |
serviceCidr | 从中分配服务群集 IP 的 CIDR 表示法 IP 范围。 它不得与任何子网 IP 范围重叠。 | 字符串 约束: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
serviceCidrs | 单堆栈网络需要一个 IPv4 CIDR。 对于双堆栈网络,每个 IP 系列(IPv4/IPv6)都有两个CIDR。 它们不得与任何子网 IP 范围重叠。 | string[] |
ManagedClusterLoadBalancerProfile
名字 | 描述 | 价值 |
---|---|---|
allocatedOutboundPorts | 每个 VM 分配的 SNAT 端口的所需数量。 允许的值为 0 到 64000(含)。 默认值为 0,这会导致 Azure 动态分配端口。 | int 约束: 最小值 = 0 最大值 = 64000 |
effectiveOutboundIPs | 群集负载均衡器的有效出站 IP 资源。 | ResourceReference[] |
enableMultipleStandardLoadBalancers | 为每个 AKS 群集启用多个标准负载均衡器。 | bool |
idleTimeoutInMinutes | 所需的出站流空闲超时(以分钟为单位)。 允许的值为 4 到 120(含)。 默认值为 30 分钟。 | int 约束: 最小值 = 4 最大值 = 120 |
managedOutboundIPs | 群集负载均衡器的所需托管出站 IP。 | ManagedClusterLoadBalancerProfileManagedOutboundIPs |
outboundIPPrefixes | 群集负载均衡器的所需出站 IP 前缀资源。 | ManagedClusterLoadBalancerProfileOutboundIPPrefixes |
outboundIP | 群集负载均衡器的所需出站 IP 资源。 | ManagedClusterLoadBalancerProfileOutboundIPs |
ResourceReference
名字 | 描述 | 价值 |
---|---|---|
id | 完全限定的 Azure 资源 ID。 | 字符串 |
ManagedClusterLoadBalancerProfileManagedOutboundIPs
名字 | 描述 | 价值 |
---|---|---|
计数 | Azure 为群集负载均衡器创建/管理的所需 IPv4 出站 IP 数。 允许的值必须介于 1 到 100 之间(含)。 默认值为 1。 | int 约束: 最小值 = 1 最大值 = 100 |
countIPv6 | Azure 为群集负载均衡器创建/管理的所需 IPv6 出站 IP 数。 允许的值必须介于 1 到 100 之间(含)。 对于单堆栈,默认值为 0,双堆栈的默认值为 1。 | int 约束: 最小值 = 0 最大值 = 100 |
ManagedClusterLoadBalancerProfileOutboundIPPrefixes
名字 | 描述 | 价值 |
---|---|---|
publicIPPrefixes | 公共 IP 前缀资源的列表。 | ResourceReference[] |
ManagedClusterLoadBalancerProfileOutboundIPs
名字 | 描述 | 价值 |
---|---|---|
publicIP | 公共 IP 资源的列表。 | ResourceReference[] |
ManagedClusterNATGatewayProfile
名字 | 描述 | 价值 |
---|---|---|
effectiveOutboundIPs | 群集 NAT 网关的有效出站 IP 资源。 | ResourceReference[] |
idleTimeoutInMinutes | 所需的出站流空闲超时(以分钟为单位)。 允许的值为 4 到 120(含)。 默认值为 4 分钟。 | int 约束: 最小值 = 4 最大值 = 120 |
managedOutboundIPProfile | 群集 NAT 网关的托管出站 IP 资源的配置文件。 | ManagedClusterManagedOutboundIPProfile |
ManagedClusterManagedOutboundIPProfile
名字 | 描述 | 价值 |
---|---|---|
计数 | Azure 创建/管理的所需出站 IP 数。 允许的值必须介于 1 到 16 之间(含)。 默认值为 1。 | int 约束: 最小值 = 1 最大值 = 16 |
ManagedClusterPodIdentityProfile
名字 | 描述 | 价值 |
---|---|---|
allowNetworkPluginKubenet | 默认情况下,由于 AAD Pod 标识的安全相关特性以及 IP 欺骗的风险,在 Kubenet 中运行会禁用。 有关详细信息,请参阅 将 Kubenet 网络插件与 AAD Pod 标识 配合使用。 | bool |
启用 | 是否启用 Pod 标识加载项。 | bool |
userAssignedIdentities | 群集中使用的 Pod 标识。 | ManagedClusterPodIdentity[] |
userAssignedIdentityExceptions | 允许的 Pod 标识异常。 | ManagedClusterPodIdentityException[] |
ManagedClusterPodIdentity
名字 | 描述 | 价值 |
---|---|---|
bindingSelector | 要用于 AzureIdentityBinding 资源的绑定选择器。 | 字符串 |
身份 | 用户分配的标识详细信息。 | UserAssignedIdentity (必需) |
名字 | Pod 标识的名称。 | string (必需) |
namespace | Pod 标识的命名空间。 | string (必需) |
ManagedClusterPodIdentityException
名字 | 描述 | 价值 |
---|---|---|
名字 | Pod 标识异常的名称。 | string (必需) |
namespace | Pod 标识异常的命名空间。 | string (必需) |
podLabels | 要匹配的 Pod 标签。 | ManagedClusterPodIdentityExceptionPodLabels (必需) |
ManagedClusterPodIdentityExceptionPodLabels
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | 字符串 |
PrivateLinkResource
名字 | 描述 | 价值 |
---|---|---|
groupId | 资源的组 ID。 | 字符串 |
id | 专用链接资源的 ID。 | 字符串 |
名字 | 专用链接资源的名称。 | 字符串 |
requiredMembers | 资源的 RequiredMembers | string[] |
类型 | 资源类型。 | 字符串 |
ManagedClusterSecurityProfile
名字 | 描述 | 价值 |
---|---|---|
azureDefender | 安全配置文件的 Azure Defender 设置。 | ManagedClusterSecurityProfileAzureDefender |
ManagedClusterSecurityProfileAzureDefender
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 Azure Defender | bool |
logAnalyticsWorkspaceResourceId | 要与 Azure Defender 关联的 Log Analytics 工作区的资源 ID。 启用 Azure Defender 后,此字段是必需的,并且必须是有效的工作区资源 ID。 禁用 Azure Defender 后,将字段留空。 | 字符串 |
ManagedClusterServicePrincipalProfile
名字 | 描述 | 价值 |
---|---|---|
clientId | 服务主体的 ID。 | string (必需) |
秘密 | 以纯文本形式与服务主体关联的机密密码。 | 字符串 |
ManagedClusterWindowsProfile
名字 | 描述 | 价值 |
---|---|---|
adminPassword | 指定管理员帐户的密码。 最小长度: 8 个字符 最大长度: 123 个字符 复杂性要求:需要满足以下 4 个条件中的 3 个 字符数较低 具有大写字符 包含数字 具有特殊字符(正则表达式匹配 [\W_]) 不允许的值:“abc@123”、“P@$$w 0rd”、“P@ssw0rd”、“P@ssword123”、“Pa$$word”、“pass@word1”、“Password!”、“Password1”、“Password22”、“iloveyou!” |
字符串 |
adminUsername | 指定管理员帐户的名称。 限制: 不能以“.” 结尾。 不允许的值:“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 存储库。 | bool |
gmsaProfile | 托管群集中的 Windows gMSA 配置文件。 | WindowsGmsaProfile |
licenseType | 用于 Windows VM 的许可证类型。 有关更多详细信息,请参阅 Azure 混合用户权益。 | “None” “Windows_Server” |
WindowsGmsaProfile
名字 | 描述 | 价值 |
---|---|---|
dnsServer | 指定 Windows gMSA 的 DNS 服务器。 如果在用于创建托管群集的 vnet 中配置了 DNS 服务器,则将其设置为空。 |
字符串 |
启用 | 指定是否在托管群集中启用 Windows gMSA。 | bool |
rootDomainName | 指定 Windows gMSA 的根域名。 如果在用于创建托管群集的 vnet 中配置了 DNS 服务器,则将其设置为空。 |
字符串 |
ManagedClusterSKU
名字 | 描述 | 价值 |
---|---|---|
名字 | 托管群集 SKU 的名称。 | “Basic” |
层 | 如果未指定,则默认值为“Free”。 有关详细信息,请参阅 运行时间 SLA。 | “Free” “付费” |
快速入门模板
以下快速入门模板部署此资源类型。
模板 | 描述 |
---|---|
在 Azure 容器服务(AKS)上使用 Jenkins CI/CD |
容器使你可以轻松地持续生成和部署应用程序。 通过在 Azure 容器服务中使用 Kubernetes 协调这些容器的部署,可以实现可复制、可管理的容器群集。 通过设置持续生成来生成容器映像和业务流程,可以提高部署的速度和可靠性。 |
min.io Azure 网关 |
完全专用 min.io Azure 网关部署,以提供受 Blob 存储支持的符合 S3 的存储 API |
使用 NAT 网关和应用程序网关 |
此示例演示如何使用 NAT 网关部署 AKS 群集进行出站连接,以及如何为入站连接部署应用程序网关。 |
创建专用 AKS 群集 |
此示例演示如何在虚拟网络中创建专用 AKS 群集以及 jumpbox 虚拟机。 |
使用公共 DNS 区域创建专用 AKS 群集 |
此示例演示如何使用公共 DNS 区域部署专用 AKS 群集。 |
部署托管 Kubernetes 群集(AKS) |
此 ARM 模板演示如何将具有高级网络功能的 AKS 实例部署到现有虚拟网络。 此外,所选的服务主体将针对包含 AKS 群集的子网分配网络参与者角色。 |
使用 AAD 部署托管 Kubernetes 群集(AKS) |
此 ARM 模板演示如何将具有高级网络功能的 AKS 实例部署到现有虚拟网络和 Azure AD 整数。 此外,所选的服务主体将针对包含 AKS 群集的子网分配网络参与者角色。 |
为 Azure ML 部署 AKS 群集 |
使用此模板可以部署可附加到 Azure ML 的符合条目的 AKS 群集 |
Azure 容器服务 (AKS) |
使用 Azure 容器服务部署托管群集(AKS) |
Azure 容器服务 (AKS) |
使用 Azure Linux 容器主机部署具有 Azure 容器服务(AKS)的托管群集 |
使用 Helm |
使用 Helm 部署具有 Azure 容器服务(AKS)的托管群集 |
Azure Kubernetes 服务 (AKS) |
通过 Azure Kubernetes 服务部署托管 Kubernetes 群集 (AKS) |
使用应用程序网关入口控制器 |
此示例演示如何使用应用程序网关、应用程序网关入口控制器、Azure 容器注册表、Log Analytics 和 Key Vault 部署 AKS 群集 |
ARM 模板资源定义
可以使用目标操作部署 managedClusters 资源类型:
- 资源组 - 请参阅 资源组部署命令
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
言论
有关可用加载项的信息,请参阅 加载项、扩展和其他与 Azure Kubernetes 服务集成。
资源格式
若要创建 Microsoft.ContainerService/managedClusters 资源,请将以下 JSON 添加到模板。
{
"type": "Microsoft.ContainerService/managedClusters",
"apiVersion": "2022-03-01",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"sku": {
"name": "Basic",
"tier": "string"
},
"extendedLocation": {
"name": "string",
"type": "EdgeZone"
},
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {}
}
},
"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",
"creationData": {
"sourceResourceId": "string"
},
"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",
"powerState": {
"code": "string"
},
"proximityPlacementGroupID": "string",
"scaleDownMode": "string",
"scaleSetEvictionPolicy": "string",
"scaleSetPriority": "string",
"spotMaxPrice": "[json('decimal-as-string')]",
"tags": {},
"type": "string",
"upgradeSettings": {
"maxSurge": "string"
},
"vmSize": "string",
"vnetSubnetID": "string",
"workloadRuntime": "string"
}
],
"apiServerAccessProfile": {
"authorizedIPRanges": [ "string" ],
"disableRunCommand": "bool",
"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",
"ipFamilies": [ "string" ],
"loadBalancerProfile": {
"allocatedOutboundPorts": "int",
"effectiveOutboundIPs": [
{
"id": "string"
}
],
"enableMultipleStandardLoadBalancers": "bool",
"idleTimeoutInMinutes": "int",
"managedOutboundIPs": {
"count": "int",
"countIPv6": "int"
},
"outboundIPPrefixes": {
"publicIPPrefixes": [
{
"id": "string"
}
]
},
"outboundIPs": {
"publicIPs": [
{
"id": "string"
}
]
}
},
"loadBalancerSku": "string",
"natGatewayProfile": {
"effectiveOutboundIPs": [
{
"id": "string"
}
],
"idleTimeoutInMinutes": "int",
"managedOutboundIPProfile": {
"count": "int"
}
},
"networkMode": "string",
"networkPlugin": "string",
"networkPolicy": "string",
"outboundType": "string",
"podCidr": "string",
"podCidrs": [ "string" ],
"serviceCidr": "string",
"serviceCidrs": [ "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"
}
],
"publicNetworkAccess": "string",
"securityProfile": {
"azureDefender": {
"enabled": "bool",
"logAnalyticsWorkspaceResourceId": "string"
}
},
"servicePrincipalProfile": {
"clientId": "string",
"secret": "string"
},
"windowsProfile": {
"adminPassword": "string",
"adminUsername": "string",
"enableCSIProxy": "bool",
"gmsaProfile": {
"dnsServer": "string",
"enabled": "bool",
"rootDomainName": "string"
},
"licenseType": "string"
}
}
}
属性值
managedClusters
名字 | 描述 | 价值 |
---|---|---|
类型 | 资源类型 | “Microsoft.ContainerService/managedClusters” |
apiVersion | 资源 API 版本 | '2022-03-01' |
名字 | 资源名称 | string (必需) 字符限制:1-63 有效字符: 字母数字、下划线和连字符。 以字母数字开头和结尾。 |
位置 | 资源所在的地理位置 | string (必需) |
标签 | 资源标记。 | 标记名称和值的字典。 请参阅模板 中的 |
sku | 托管群集 SKU。 | ManagedClusterSKU |
extendedLocation | 虚拟机的扩展位置。 | ExtendedLocation |
身份 | 托管群集的标识(如果已配置)。 | ManagedClusterIdentity |
性能 | 托管群集的属性。 | ManagedClusterProperties |
ExtendedLocation
名字 | 描述 | 价值 |
---|---|---|
名字 | 扩展位置的名称。 | 字符串 |
类型 | 扩展位置的类型。 | “EdgeZone” |
ManagedClusterIdentity
名字 | 描述 | 价值 |
---|---|---|
类型 | 有关详细信息,请参阅 在 AKS中使用托管标识。 | “None” “SystemAssigned” “UserAssigned” |
userAssignedIdentities | 密钥必须是 ARM 资源 ID,格式为“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 | ManagedClusterIdentityUserAssignedIdentities |
ManagedClusterIdentityUserAssignedIdentities
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | ManagedServiceIdentityUserAssignedIdentitiesValue |
ManagedServiceIdentityUserAssignedIdentitiesValue
此对象不包含在部署期间设置的任何属性。 所有属性都是 ReadOnly。
ManagedClusterProperties
名字 | 描述 | 价值 |
---|---|---|
aadProfile | Azure Active Directory 配置。 | ManagedClusterAADProfile |
addonProfiles | 托管群集加载项的配置文件。 | ManagedClusterPropertiesAddonProfiles |
agentPoolProfiles | 代理池属性。 | ManagedClusterAgentPoolProfile[] |
apiServerAccessProfile | 托管群集 API 服务器的访问配置文件。 | ManagedClusterAPIServerAccessProfile |
autoScalerProfile | 启用时要应用于群集自动缩放程序的参数 | ManagedClusterPropertiesAutoScalerProfile |
autoUpgradeProfile | 自动升级配置。 | ManagedClusterAutoUpgradeProfile |
disableLocalAccounts | 如果设置为 true,将禁用此群集的静态凭据。 这只能在启用了 AAD 的托管群集上使用。 有关详细信息,请参阅 禁用本地帐户。 | bool |
diskEncryptionSetID | 此格式为:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}” | 字符串 |
dnsPrefix | 创建托管群集后,无法更新此功能。 | 字符串 |
enablePodSecurityPolicy | (弃用)是否启用 Kubernetes Pod 安全策略(预览版)。 此功能设置为在 2020 年 10 月 15 日删除。 有关详细信息,请查看 aka.ms/aks/azpodpolicy。 | bool |
enableRBAC | 是否启用 Kubernetes Role-Based 访问控制。 | bool |
fqdnSubdomain | 创建托管群集后,无法更新此功能。 | 字符串 |
httpProxyConfig | 使用 HTTP 代理服务器预配群集的配置。 | ManagedClusterHttpProxyConfig |
identityProfile | 与群集关联的标识。 | ManagedClusterPropertiesIdentityProfile |
kubernetesVersion | 升级支持的 AKS 群集时,无法跳过 Kubernetes 次要版本。 所有升级都必须按主版本号按顺序执行。 例如,允许在 1.14.x -> 1.15.x 或 1.15.x 之间升级> 1.16.x,但不允许使用 1.14.x -> 1.16.x。 有关更多详细信息,请参阅 升级 AKS 群集。 | 字符串 |
linuxProfile | 托管群集中 Linux VM 的配置文件。 | ContainerServiceLinuxProfile |
networkProfile | 网络配置文件。 | ContainerServiceNetworkProfile |
nodeResourceGroup | 包含代理池节点的资源组的名称。 | 字符串 |
podIdentityProfile | 有关 AAD Pod 标识集成的详细信息,请参阅 使用 AAD Pod 标识。 | ManagedClusterPodIdentityProfile |
privateLinkResources | 与群集关联的专用链接资源。 | PrivateLinkResource[] |
publicNetworkAccess | 允许或拒绝 AKS 的公共网络访问 | “Disabled” “Enabled” |
securityProfile | 托管群集的安全配置文件。 | ManagedClusterSecurityProfile |
servicePrincipalProfile | 有关群集用于操作 Azure API 的服务主体标识的信息。 | ManagedClusterServicePrincipalProfile |
windowsProfile | 托管群集中 Windows VM 的配置文件。 | ManagedClusterWindowsProfile |
ManagedClusterAADProfile
名字 | 描述 | 价值 |
---|---|---|
adminGroupObjectIDs | 将具有群集管理员角色的 AAD 组对象 ID 的列表。 | string[] |
clientAppID | 客户端 AAD 应用程序 ID。 | 字符串 |
enableAzureRBAC | 是否为 Kubernetes 授权启用 Azure RBAC。 | bool |
管理 | 是否启用托管 AAD。 | bool |
serverAppID | 服务器 AAD 应用程序 ID。 | 字符串 |
serverAppSecret | 服务器 AAD 应用程序机密。 | 字符串 |
tenantID | 用于身份验证的 AAD 租户 ID。 如果未指定,将使用部署订阅的租户。 | 字符串 |
ManagedClusterPropertiesAddonProfiles
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | ManagedClusterAddonProfile |
ManagedClusterAddonProfile
名字 | 描述 | 价值 |
---|---|---|
配置 | 用于配置加载项的键值对。 | ManagedClusterAddonProfileConfig |
启用 | 是否启用加载项。 | bool (必需) |
ManagedClusterAddonProfileConfig
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | 字符串 |
ManagedClusterAgentPoolProfile
名字 | 描述 | 价值 |
---|---|---|
availabilityZones | 要用于节点的可用性区域列表。 仅当 AgentPoolType 属性为“VirtualMachineScaleSets”时,才能指定此值。 | string[] |
计数 | 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 | int |
creationData | 如果使用快照创建/升级节点池,则用于指定源快照 ID 的 CreationData。 | CreationData |
enableAutoScaling | 是否启用自动缩放程序 | bool |
enableEncryptionAtHost | 这仅在某些 VM 大小和某些 Azure 区域中受支持。 有关详细信息,请参阅:/azure/aks/enable-host-encryption | bool |
enableFIPS | 有关详细信息,请参阅 添加启用了 FIPS 的节点池。 | bool |
enableNodePublicIP | 某些方案可能需要节点池中的节点接收其自己的专用公共 IP 地址。 一种常见方案适用于游戏工作负载,其中主机需要与云虚拟机建立直接连接,以最大程度地减少跃点。 有关详细信息,请参阅 为每个节点分配公共 IP。 默认值为 false。 | bool |
enableUltraSSD | 是否启用 UltraSSD | bool |
gpuInstanceProfile | 用于为支持的 GPU VM SKU 指定 GPU MIG 实例配置文件的 GPUInstanceProfile。 | “MIG1g” “MIG2g” “MIG3g” “MIG4g” “MIG7g” |
kubeletConfig | 代理池节点上的 Kubelet 配置。 | KubeletConfig |
kubeletDiskType | 确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。 | “OS” “临时” |
linuxOSConfig | Linux 代理节点的 OS 配置。 | LinuxOSConfig |
maxCount | 自动缩放的最大节点数 | int |
maxPods | 可在节点上运行的 Pod 的最大数目。 | int |
minCount | 自动缩放的最小节点数 | int |
模式 | 群集必须随时至少有一个“系统”代理池。 有关代理池限制和最佳做法的其他信息,请参阅:/azure/aks/use-system-pools | “System” “User” |
名字 | Windows 代理池名称必须为 6 个字符或更少。 | string (必需) 约束: Pattern = ^[a-z][a-z0-9]{0,11}$ |
nodeLabels | 要跨代理池中的所有节点保留的节点标签。 | ManagedClusterAgentPoolProfilePropertiesNodeLabels |
nodePublicIPPrefixID | 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} | 字符串 |
nodeTaints | 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 | string[] |
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” |
osType | 操作系统类型。 默认值为 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” |
spotMaxPrice | 可能的值是大于零或 -1 的任何小数值,表示愿意支付任何按需价格。 有关现成定价的更多详细信息,请参阅 现成 VM 定价 若要指定十进制值,请使用 json() 函数。 | int 或 json decimal |
标签 | 要保留在代理池虚拟机规模集上的标记。 | 对象 |
类型 | 代理池的类型。 | “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} | 字符串 |
workloadRuntime | 确定节点可以运行的工作负荷的类型。 | “OCIContainer” “WasmWasi” |
CreationData
名字 | 描述 | 价值 |
---|---|---|
sourceResourceId | 这是用于创建目标对象的源对象的 ARM ID。 | 字符串 |
KubeletConfig
名字 | 描述 | 价值 |
---|---|---|
allowedUnsafeSysctls | 允许的不安全 sysctls 或不安全的 sysctl 模式列表(以 * 结尾)。 |
string[] |
containerLogMaxFiles | 容器日志文件的最大数目。 该数字必须≥ 2。 | int 约束: 最小值 = 2 |
containerLogMaxSizeMB | 在轮换容器日志文件之前,容器日志文件的最大大小(例如 10Mi)。 | int |
cpuCfsQuota | 默认值为 true。 | bool |
cpuCfsQuotaPeriod | 默认值为“100ms”。 有效值是包含可选分数和单位后缀的小数序列。 例如:“300ms”、“2h45m”。 支持的单位为“ns”、“us”、“ms”、“s”、“m”和“h”。 | 字符串 |
cpuManagerPolicy | 默认值为“none”。 有关详细信息,请参阅 Kubernetes CPU 管理策略。 允许的值为“none”和“static”。 | 字符串 |
failSwapOn | 如果设置为 true,则如果在节点上启用了交换,则 Kubelet 将无法启动。 | bool |
imageGcHighThreshold | 若要禁用映像垃圾回收,请设置为 100。 默认值为 85% | int |
imageGcLowThreshold | 这不能设置为高于 imageGcHighThreshold。 默认值为 80% | int |
podMaxPids | 每个 Pod 的最大进程数。 | int |
topologyManagerPolicy | 有关详细信息,请参阅 Kubernetes 拓扑管理器。 默认值为“none”。 允许的值为“none”、“best-effort”、“restricted”和“single-numa-node”。 | 字符串 |
LinuxOSConfig
名字 | 描述 | 价值 |
---|---|---|
swapFileSizeMB | 将在每个节点上创建的交换文件的大小(以 MB 为单位)。 | int |
sysctls | Linux 代理节点的 Sysctl 设置。 | SysctlConfig |
transparentHugePageDefrag | 有效值为“always”、“defer”、“defer+madvise”、“madvise”和“never”。 默认值为“madvise”。 有关详细信息,请参阅 透明巨页。 | 字符串 |
transparentHugePageEnabled | 有效值为“always”、“madvise”和“never”。 默认值为“always”。 有关详细信息,请参阅 透明巨页。 | 字符串 |
SysctlConfig
名字 | 描述 | 价值 |
---|---|---|
fsAioMaxNr | Sysctl setting fs.aio-max-nr. | int |
fsFileMax | Sysctl setting fs.file-max. | int |
fsInotifyMaxUserWatches | Sysctl 设置 fs.inotify.max_user_watches。 | int |
fsNrOpen | Sysctl 设置fs.nr_open。 | int |
kernelThreadsMax | Sysctl 设置 kernel.threads-max。 | int |
netCoreNetdevMaxBacklog | Sysctl 设置net.core.netdev_max_backlog。 | int |
netCoreOptmemMax | Sysctl 设置net.core.optmem_max。 | int |
netCoreRmemDefault | Sysctl 设置net.core.rmem_default。 | int |
netCoreRmemMax | Sysctl 设置net.core.rmem_max。 | int |
netCoreSomaxconn | Sysctl setting net.core.somaxconn. | int |
netCoreWmemDefault | 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 |
netIpv4TcpKeepaliveProbes | 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 |
netIpv4TcpTwReuse | Sysctl 设置net.ipv4.tcp_tw_reuse。 | bool |
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 |
ManagedClusterAgentPoolProfilePropertiesNodeLabels
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | 字符串 |
PowerState
名字 | 描述 | 价值 |
---|---|---|
法典 | 指示群集是正在运行还是已停止 | “Running” “Stopped” |
AgentPoolUpgradeSettings
名字 | 描述 | 价值 |
---|---|---|
maxSurge | 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 1。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster#customize-node-surge-upgrade | 字符串 |
ManagedClusterAPIServerAccessProfile
名字 | 描述 | 价值 |
---|---|---|
authorizedIPRanges | IP 范围以 CIDR 格式指定,例如 137.117.106.88/29。 此功能与使用公共 IP Per Node 的群集或使用基本负载均衡器的群集不兼容。 有关详细信息,请参阅 API 服务器授权 IP 范围。 | string[] |
disableRunCommand | 是否禁用群集的 run 命令。 | bool |
enablePrivateCluster | 有关详细信息,请参阅 创建专用 AKS 群集。 | bool |
enablePrivateClusterPublicFQDN | 是否为专用群集创建其他公共 FQDN。 | bool |
privateDNSZone | 默认值为 System。 有关详细信息,请参阅 配置专用 DNS 区域。 允许的值为“system”和“none”。 | 字符串 |
ManagedClusterPropertiesAutoScalerProfile
名字 | 描述 | 价值 |
---|---|---|
balance-similar-node-groups | 有效值为“true”和“false” | 字符串 |
膨胀 | 如果未指定,则默认值为“random”。 有关详细信息,请参阅 扩展器。 | “最不浪费” “most-pods” “priority” “random” |
max-empty-bulk-delete | 默认值为 10。 | 字符串 |
max-graceful-termination-sec | 默认值为 600。 | 字符串 |
max-node-provision-time | 默认值为“15m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
max-total-unready-percentage | 默认值为 45。 最大值为 100,最小值为 0。 | 字符串 |
new-pod-scale-up-delay | 对于在 kubernetes 计划程序可以计划所有 Pod 之前不希望 CA 执行操作的突发/批处理缩放方案,可以告诉 CA 在某个年龄之前忽略未计划的 Pod。 默认值为“0s”。 值必须是一个整数,后跟一个单位(以秒为单位,“m”表示分钟,“h”表示小时等)。 | 字符串 |
ok-total-unready-count | 这必须是整数。 默认值为 3。 | 字符串 |
scale-down-delay-after-add | 默认值为“10m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-delay-after-delete | 默认值为扫描间隔。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-delay-after-failure | 默认值为“3m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-unneed-time | 默认值为“10m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-unready-time | 默认值为“20m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-utilization-threshold | 默认值为“0.5”。 | 字符串 |
scan-interval | 默认值为“10”。 值必须是整数秒数。 | 字符串 |
skip-nodes-with-local-storage | 默认值为 true。 | 字符串 |
skip-nodes-with-system-pods | 默认值为 true。 | 字符串 |
ManagedClusterAutoUpgradeProfile
名字 | 描述 | 价值 |
---|---|---|
upgradeChannel | 有关详细信息,请参阅 设置 AKS 群集自动升级通道。 | “node-image” “none” “patch” “rapid” “stable” |
ManagedClusterHttpProxyConfig
名字 | 描述 | 价值 |
---|---|---|
httpProxy | 要使用的 HTTP 代理服务器终结点。 | 字符串 |
httpsProxy | 要使用的 HTTPS 代理服务器终结点。 | 字符串 |
noProxy | 不应通过代理的终结点。 | string[] |
trustedCa | 用于连接到代理服务器的替代 CA 证书。 | 字符串 |
ManagedClusterPropertiesIdentityProfile
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | UserAssignedIdentity |
UserAssignedIdentity
名字 | 描述 | 价值 |
---|---|---|
clientId | 用户分配标识的客户端 ID。 | 字符串 |
objectId | 用户分配标识的对象 ID。 | 字符串 |
resourceId | 用户分配标识的资源 ID。 | 字符串 |
ContainerServiceLinuxProfile
名字 | 描述 | 价值 |
---|---|---|
adminUsername | 用于 Linux VM 的管理员用户名。 | string (必需) 约束: Pattern = ^[A-Za-z][-A-Za-z0-9_]*$ |
ssh | 在 Azure 上运行的基于 Linux 的 VM 的 SSH 配置。 | ContainerServiceSshConfiguration (必需) |
ContainerServiceSshConfiguration
名字 | 描述 | 价值 |
---|---|---|
publicKeys | 用于通过基于 Linux 的 VM 进行身份验证的 SSH 公钥列表。 最多可以指定 1 个键。 | ContainerServiceSshPublicKey[] (必需) |
ContainerServiceSshPublicKey
名字 | 描述 | 价值 |
---|---|---|
keyData | 用于通过 SSH 向 VM 进行身份验证的证书公钥。 证书必须采用 PEM 格式(带或不带标头)。 | string (必需) |
ContainerServiceNetworkProfile
名字 | 描述 | 价值 |
---|---|---|
dnsServiceIP | 分配给 Kubernetes DNS 服务的 IP 地址。 它必须位于 serviceCidr 中指定的 Kubernetes 服务地址范围内。 | 字符串 约束: Pattern = ^(?:(?: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 服务地址范围重叠。 | 字符串 约束: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
ipFamilies | IP 系列用于确定单堆栈或双堆栈群集。 对于单堆栈,预期值为 IPv4。 对于双堆栈,预期值为 IPv4 和 IPv6。 | 包含任一项的字符串数组: “IPv4” “IPv6” |
loadBalancerProfile | 群集负载均衡器的配置文件。 | ManagedClusterLoadBalancerProfile |
loadBalancerSku | 默认值为“standard”。 有关负载均衡器 SKU 之间的差异的详细信息,请参阅 Azure 负载均衡器 SKU。 | “basic” “standard” |
natGatewayProfile | 群集 NAT 网关的配置文件。 | ManagedClusterNATGatewayProfile |
networkMode | 如果 networkPlugin 不是“azure”,则无法指定此项。 | “bridge” “transparent” |
networkPlugin | 用于生成 Kubernetes 网络的网络插件。 | “azure” “kubenet” |
networkPolicy | 用于生成 Kubernetes 网络的网络策略。 | “azure” “calico” |
outboundType | 这只能在群集创建时设置,以后无法更改。 有关详细信息,请参阅 出口出站类型。 | “loadBalancer” “managedNATGateway” “userAssignedNATGateway” “userDefinedRouting” |
podCidr | 使用 kubenet 时分配 Pod IP 的 CIDR 表示法 IP 范围。 | 字符串 约束: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
podCidrs | 单堆栈网络需要一个 IPv4 CIDR。 对于双堆栈网络,每个 IP 系列(IPv4/IPv6)都有两个CIDR。 | string[] |
serviceCidr | 从中分配服务群集 IP 的 CIDR 表示法 IP 范围。 它不得与任何子网 IP 范围重叠。 | 字符串 约束: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
serviceCidrs | 单堆栈网络需要一个 IPv4 CIDR。 对于双堆栈网络,每个 IP 系列(IPv4/IPv6)都有两个CIDR。 它们不得与任何子网 IP 范围重叠。 | string[] |
ManagedClusterLoadBalancerProfile
名字 | 描述 | 价值 |
---|---|---|
allocatedOutboundPorts | 每个 VM 分配的 SNAT 端口的所需数量。 允许的值为 0 到 64000(含)。 默认值为 0,这会导致 Azure 动态分配端口。 | int 约束: 最小值 = 0 最大值 = 64000 |
effectiveOutboundIPs | 群集负载均衡器的有效出站 IP 资源。 | ResourceReference[] |
enableMultipleStandardLoadBalancers | 为每个 AKS 群集启用多个标准负载均衡器。 | bool |
idleTimeoutInMinutes | 所需的出站流空闲超时(以分钟为单位)。 允许的值为 4 到 120(含)。 默认值为 30 分钟。 | int 约束: 最小值 = 4 最大值 = 120 |
managedOutboundIPs | 群集负载均衡器的所需托管出站 IP。 | ManagedClusterLoadBalancerProfileManagedOutboundIPs |
outboundIPPrefixes | 群集负载均衡器的所需出站 IP 前缀资源。 | ManagedClusterLoadBalancerProfileOutboundIPPrefixes |
outboundIP | 群集负载均衡器的所需出站 IP 资源。 | ManagedClusterLoadBalancerProfileOutboundIPs |
ResourceReference
名字 | 描述 | 价值 |
---|---|---|
id | 完全限定的 Azure 资源 ID。 | 字符串 |
ManagedClusterLoadBalancerProfileManagedOutboundIPs
名字 | 描述 | 价值 |
---|---|---|
计数 | Azure 为群集负载均衡器创建/管理的所需 IPv4 出站 IP 数。 允许的值必须介于 1 到 100 之间(含)。 默认值为 1。 | int 约束: 最小值 = 1 最大值 = 100 |
countIPv6 | Azure 为群集负载均衡器创建/管理的所需 IPv6 出站 IP 数。 允许的值必须介于 1 到 100 之间(含)。 对于单堆栈,默认值为 0,双堆栈的默认值为 1。 | int 约束: 最小值 = 0 最大值 = 100 |
ManagedClusterLoadBalancerProfileOutboundIPPrefixes
名字 | 描述 | 价值 |
---|---|---|
publicIPPrefixes | 公共 IP 前缀资源的列表。 | ResourceReference[] |
ManagedClusterLoadBalancerProfileOutboundIPs
名字 | 描述 | 价值 |
---|---|---|
publicIP | 公共 IP 资源的列表。 | ResourceReference[] |
ManagedClusterNATGatewayProfile
名字 | 描述 | 价值 |
---|---|---|
effectiveOutboundIPs | 群集 NAT 网关的有效出站 IP 资源。 | ResourceReference[] |
idleTimeoutInMinutes | 所需的出站流空闲超时(以分钟为单位)。 允许的值为 4 到 120(含)。 默认值为 4 分钟。 | int 约束: 最小值 = 4 最大值 = 120 |
managedOutboundIPProfile | 群集 NAT 网关的托管出站 IP 资源的配置文件。 | ManagedClusterManagedOutboundIPProfile |
ManagedClusterManagedOutboundIPProfile
名字 | 描述 | 价值 |
---|---|---|
计数 | Azure 创建/管理的所需出站 IP 数。 允许的值必须介于 1 到 16 之间(含)。 默认值为 1。 | int 约束: 最小值 = 1 最大值 = 16 |
ManagedClusterPodIdentityProfile
名字 | 描述 | 价值 |
---|---|---|
allowNetworkPluginKubenet | 默认情况下,由于 AAD Pod 标识的安全相关特性以及 IP 欺骗的风险,在 Kubenet 中运行会禁用。 有关详细信息,请参阅 将 Kubenet 网络插件与 AAD Pod 标识 配合使用。 | bool |
启用 | 是否启用 Pod 标识加载项。 | bool |
userAssignedIdentities | 群集中使用的 Pod 标识。 | ManagedClusterPodIdentity[] |
userAssignedIdentityExceptions | 允许的 Pod 标识异常。 | ManagedClusterPodIdentityException[] |
ManagedClusterPodIdentity
名字 | 描述 | 价值 |
---|---|---|
bindingSelector | 要用于 AzureIdentityBinding 资源的绑定选择器。 | 字符串 |
身份 | 用户分配的标识详细信息。 | UserAssignedIdentity (必需) |
名字 | Pod 标识的名称。 | string (必需) |
namespace | Pod 标识的命名空间。 | string (必需) |
ManagedClusterPodIdentityException
名字 | 描述 | 价值 |
---|---|---|
名字 | Pod 标识异常的名称。 | string (必需) |
namespace | Pod 标识异常的命名空间。 | string (必需) |
podLabels | 要匹配的 Pod 标签。 | ManagedClusterPodIdentityExceptionPodLabels (必需) |
ManagedClusterPodIdentityExceptionPodLabels
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | 字符串 |
PrivateLinkResource
名字 | 描述 | 价值 |
---|---|---|
groupId | 资源的组 ID。 | 字符串 |
id | 专用链接资源的 ID。 | 字符串 |
名字 | 专用链接资源的名称。 | 字符串 |
requiredMembers | 资源的 RequiredMembers | string[] |
类型 | 资源类型。 | 字符串 |
ManagedClusterSecurityProfile
名字 | 描述 | 价值 |
---|---|---|
azureDefender | 安全配置文件的 Azure Defender 设置。 | ManagedClusterSecurityProfileAzureDefender |
ManagedClusterSecurityProfileAzureDefender
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 Azure Defender | bool |
logAnalyticsWorkspaceResourceId | 要与 Azure Defender 关联的 Log Analytics 工作区的资源 ID。 启用 Azure Defender 后,此字段是必需的,并且必须是有效的工作区资源 ID。 禁用 Azure Defender 后,将字段留空。 | 字符串 |
ManagedClusterServicePrincipalProfile
名字 | 描述 | 价值 |
---|---|---|
clientId | 服务主体的 ID。 | string (必需) |
秘密 | 以纯文本形式与服务主体关联的机密密码。 | 字符串 |
ManagedClusterWindowsProfile
名字 | 描述 | 价值 |
---|---|---|
adminPassword | 指定管理员帐户的密码。 最小长度: 8 个字符 最大长度: 123 个字符 复杂性要求:需要满足以下 4 个条件中的 3 个 字符数较低 具有大写字符 包含数字 具有特殊字符(正则表达式匹配 [\W_]) 不允许的值:“abc@123”、“P@$$w 0rd”、“P@ssw0rd”、“P@ssword123”、“Pa$$word”、“pass@word1”、“Password!”、“Password1”、“Password22”、“iloveyou!” |
字符串 |
adminUsername | 指定管理员帐户的名称。 限制: 不能以“.” 结尾。 不允许的值:“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 存储库。 | bool |
gmsaProfile | 托管群集中的 Windows gMSA 配置文件。 | WindowsGmsaProfile |
licenseType | 用于 Windows VM 的许可证类型。 有关更多详细信息,请参阅 Azure 混合用户权益。 | “None” “Windows_Server” |
WindowsGmsaProfile
名字 | 描述 | 价值 |
---|---|---|
dnsServer | 指定 Windows gMSA 的 DNS 服务器。 如果在用于创建托管群集的 vnet 中配置了 DNS 服务器,则将其设置为空。 |
字符串 |
启用 | 指定是否在托管群集中启用 Windows gMSA。 | bool |
rootDomainName | 指定 Windows gMSA 的根域名。 如果在用于创建托管群集的 vnet 中配置了 DNS 服务器,则将其设置为空。 |
字符串 |
ManagedClusterSKU
名字 | 描述 | 价值 |
---|---|---|
名字 | 托管群集 SKU 的名称。 | “Basic” |
层 | 如果未指定,则默认值为“Free”。 有关详细信息,请参阅 运行时间 SLA。 | “Free” “付费” |
快速入门模板
以下快速入门模板部署此资源类型。
模板 | 描述 |
---|---|
在 Azure 容器服务(AKS)上使用 Jenkins CI/CD |
容器使你可以轻松地持续生成和部署应用程序。 通过在 Azure 容器服务中使用 Kubernetes 协调这些容器的部署,可以实现可复制、可管理的容器群集。 通过设置持续生成来生成容器映像和业务流程,可以提高部署的速度和可靠性。 |
min.io Azure 网关 |
完全专用 min.io Azure 网关部署,以提供受 Blob 存储支持的符合 S3 的存储 API |
使用 NAT 网关和应用程序网关 |
此示例演示如何使用 NAT 网关部署 AKS 群集进行出站连接,以及如何为入站连接部署应用程序网关。 |
创建专用 AKS 群集 |
此示例演示如何在虚拟网络中创建专用 AKS 群集以及 jumpbox 虚拟机。 |
使用公共 DNS 区域创建专用 AKS 群集 |
此示例演示如何使用公共 DNS 区域部署专用 AKS 群集。 |
部署托管 Kubernetes 群集(AKS) |
此 ARM 模板演示如何将具有高级网络功能的 AKS 实例部署到现有虚拟网络。 此外,所选的服务主体将针对包含 AKS 群集的子网分配网络参与者角色。 |
使用 AAD 部署托管 Kubernetes 群集(AKS) |
此 ARM 模板演示如何将具有高级网络功能的 AKS 实例部署到现有虚拟网络和 Azure AD 整数。 此外,所选的服务主体将针对包含 AKS 群集的子网分配网络参与者角色。 |
为 Azure ML 部署 AKS 群集 |
使用此模板可以部署可附加到 Azure ML 的符合条目的 AKS 群集 |
Azure 容器服务 (AKS) |
使用 Azure 容器服务部署托管群集(AKS) |
Azure 容器服务 (AKS) |
使用 Azure Linux 容器主机部署具有 Azure 容器服务(AKS)的托管群集 |
使用 Helm |
使用 Helm 部署具有 Azure 容器服务(AKS)的托管群集 |
Azure Kubernetes 服务 (AKS) |
通过 Azure Kubernetes 服务部署托管 Kubernetes 群集 (AKS) |
使用应用程序网关入口控制器 |
此示例演示如何使用应用程序网关、应用程序网关入口控制器、Azure 容器注册表、Log Analytics 和 Key Vault 部署 AKS 群集 |
Terraform (AzAPI 提供程序)资源定义
可以使用目标操作部署 managedClusters 资源类型:
- 资源组
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
资源格式
若要创建 Microsoft.ContainerService/managedClusters 资源,请将以下 Terraform 添加到模板。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.ContainerService/managedClusters@2022-03-01"
name = "string"
location = "string"
parent_id = "string"
tags = {
tagName1 = "tagValue1"
tagName2 = "tagValue2"
}
identity {
type = "string"
identity_ids = []
}
body = jsonencode({
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
creationData = {
sourceResourceId = "string"
}
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"
powerState = {
code = "string"
}
proximityPlacementGroupID = "string"
scaleDownMode = "string"
scaleSetEvictionPolicy = "string"
scaleSetPriority = "string"
spotMaxPrice = "decimal-as-string"
tags = {}
type = "string"
upgradeSettings = {
maxSurge = "string"
}
vmSize = "string"
vnetSubnetID = "string"
workloadRuntime = "string"
}
]
apiServerAccessProfile = {
authorizedIPRanges = [
"string"
]
disableRunCommand = bool
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"
ipFamilies = [
"string"
]
loadBalancerProfile = {
allocatedOutboundPorts = int
effectiveOutboundIPs = [
{
id = "string"
}
]
enableMultipleStandardLoadBalancers = bool
idleTimeoutInMinutes = int
managedOutboundIPs = {
count = int
countIPv6 = int
}
outboundIPPrefixes = {
publicIPPrefixes = [
{
id = "string"
}
]
}
outboundIPs = {
publicIPs = [
{
id = "string"
}
]
}
}
loadBalancerSku = "string"
natGatewayProfile = {
effectiveOutboundIPs = [
{
id = "string"
}
]
idleTimeoutInMinutes = int
managedOutboundIPProfile = {
count = int
}
}
networkMode = "string"
networkPlugin = "string"
networkPolicy = "string"
outboundType = "string"
podCidr = "string"
podCidrs = [
"string"
]
serviceCidr = "string"
serviceCidrs = [
"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"
}
]
publicNetworkAccess = "string"
securityProfile = {
azureDefender = {
enabled = bool
logAnalyticsWorkspaceResourceId = "string"
}
}
servicePrincipalProfile = {
clientId = "string"
secret = "string"
}
windowsProfile = {
adminPassword = "string"
adminUsername = "string"
enableCSIProxy = bool
gmsaProfile = {
dnsServer = "string"
enabled = bool
rootDomainName = "string"
}
licenseType = "string"
}
}
sku = {
name = "Basic"
tier = "string"
}
extendedLocation = {
name = "string"
type = "EdgeZone"
}
})
}
属性值
managedClusters
名字 | 描述 | 价值 |
---|---|---|
类型 | 资源类型 | “Microsoft.ContainerService/managedClusters@2022-03-01” |
名字 | 资源名称 | string (必需) 字符限制:1-63 有效字符: 字母数字、下划线和连字符。 以字母数字开头和结尾。 |
位置 | 资源所在的地理位置 | string (必需) |
parent_id | 若要部署到资源组,请使用该资源组的 ID。 | string (必需) |
标签 | 资源标记。 | 标记名称和值的字典。 |
sku | 托管群集 SKU。 | ManagedClusterSKU |
extendedLocation | 虚拟机的扩展位置。 | ExtendedLocation |
身份 | 托管群集的标识(如果已配置)。 | ManagedClusterIdentity |
性能 | 托管群集的属性。 | ManagedClusterProperties |
ExtendedLocation
名字 | 描述 | 价值 |
---|---|---|
名字 | 扩展位置的名称。 | 字符串 |
类型 | 扩展位置的类型。 | “EdgeZone” |
ManagedClusterIdentity
名字 | 描述 | 价值 |
---|---|---|
类型 | 有关详细信息,请参阅 在 AKS中使用托管标识。 | “SystemAssigned” “UserAssigned” |
identity_ids | 密钥必须是 ARM 资源 ID,格式为“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 | 用户标识 ID 的数组。 |
ManagedClusterIdentityUserAssignedIdentities
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | ManagedServiceIdentityUserAssignedIdentitiesValue |
ManagedServiceIdentityUserAssignedIdentitiesValue
此对象不包含在部署期间设置的任何属性。 所有属性都是 ReadOnly。
ManagedClusterProperties
名字 | 描述 | 价值 |
---|---|---|
aadProfile | Azure Active Directory 配置。 | ManagedClusterAADProfile |
addonProfiles | 托管群集加载项的配置文件。 | ManagedClusterPropertiesAddonProfiles |
agentPoolProfiles | 代理池属性。 | ManagedClusterAgentPoolProfile[] |
apiServerAccessProfile | 托管群集 API 服务器的访问配置文件。 | ManagedClusterAPIServerAccessProfile |
autoScalerProfile | 启用时要应用于群集自动缩放程序的参数 | ManagedClusterPropertiesAutoScalerProfile |
autoUpgradeProfile | 自动升级配置。 | ManagedClusterAutoUpgradeProfile |
disableLocalAccounts | 如果设置为 true,将禁用此群集的静态凭据。 这只能在启用了 AAD 的托管群集上使用。 有关详细信息,请参阅 禁用本地帐户。 | bool |
diskEncryptionSetID | 此格式为:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}” | 字符串 |
dnsPrefix | 创建托管群集后,无法更新此功能。 | 字符串 |
enablePodSecurityPolicy | (弃用)是否启用 Kubernetes Pod 安全策略(预览版)。 此功能设置为在 2020 年 10 月 15 日删除。 有关详细信息,请查看 aka.ms/aks/azpodpolicy。 | bool |
enableRBAC | 是否启用 Kubernetes Role-Based 访问控制。 | bool |
fqdnSubdomain | 创建托管群集后,无法更新此功能。 | 字符串 |
httpProxyConfig | 使用 HTTP 代理服务器预配群集的配置。 | ManagedClusterHttpProxyConfig |
identityProfile | 与群集关联的标识。 | ManagedClusterPropertiesIdentityProfile |
kubernetesVersion | 升级支持的 AKS 群集时,无法跳过 Kubernetes 次要版本。 所有升级都必须按主版本号按顺序执行。 例如,允许在 1.14.x -> 1.15.x 或 1.15.x 之间升级> 1.16.x,但不允许使用 1.14.x -> 1.16.x。 有关更多详细信息,请参阅 升级 AKS 群集。 | 字符串 |
linuxProfile | 托管群集中 Linux VM 的配置文件。 | ContainerServiceLinuxProfile |
networkProfile | 网络配置文件。 | ContainerServiceNetworkProfile |
nodeResourceGroup | 包含代理池节点的资源组的名称。 | 字符串 |
podIdentityProfile | 有关 AAD Pod 标识集成的详细信息,请参阅 使用 AAD Pod 标识。 | ManagedClusterPodIdentityProfile |
privateLinkResources | 与群集关联的专用链接资源。 | PrivateLinkResource[] |
publicNetworkAccess | 允许或拒绝 AKS 的公共网络访问 | “Disabled” “已启用” |
securityProfile | 托管群集的安全配置文件。 | ManagedClusterSecurityProfile |
servicePrincipalProfile | 有关群集用于操作 Azure API 的服务主体标识的信息。 | ManagedClusterServicePrincipalProfile |
windowsProfile | 托管群集中 Windows VM 的配置文件。 | ManagedClusterWindowsProfile |
ManagedClusterAADProfile
名字 | 描述 | 价值 |
---|---|---|
adminGroupObjectIDs | 将具有群集管理员角色的 AAD 组对象 ID 的列表。 | string[] |
clientAppID | 客户端 AAD 应用程序 ID。 | 字符串 |
enableAzureRBAC | 是否为 Kubernetes 授权启用 Azure RBAC。 | bool |
管理 | 是否启用托管 AAD。 | bool |
serverAppID | 服务器 AAD 应用程序 ID。 | 字符串 |
serverAppSecret | 服务器 AAD 应用程序机密。 | 字符串 |
tenantID | 用于身份验证的 AAD 租户 ID。 如果未指定,将使用部署订阅的租户。 | 字符串 |
ManagedClusterPropertiesAddonProfiles
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | ManagedClusterAddonProfile |
ManagedClusterAddonProfile
名字 | 描述 | 价值 |
---|---|---|
配置 | 用于配置加载项的键值对。 | ManagedClusterAddonProfileConfig |
启用 | 是否启用加载项。 | bool (必需) |
ManagedClusterAddonProfileConfig
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | 字符串 |
ManagedClusterAgentPoolProfile
名字 | 描述 | 价值 |
---|---|---|
availabilityZones | 要用于节点的可用性区域列表。 仅当 AgentPoolType 属性为“VirtualMachineScaleSets”时,才能指定此值。 | string[] |
计数 | 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 | int |
creationData | 如果使用快照创建/升级节点池,则用于指定源快照 ID 的 CreationData。 | CreationData |
enableAutoScaling | 是否启用自动缩放程序 | bool |
enableEncryptionAtHost | 这仅在某些 VM 大小和某些 Azure 区域中受支持。 有关详细信息,请参阅:/azure/aks/enable-host-encryption | bool |
enableFIPS | 有关详细信息,请参阅 添加启用了 FIPS 的节点池。 | bool |
enableNodePublicIP | 某些方案可能需要节点池中的节点接收其自己的专用公共 IP 地址。 一种常见方案适用于游戏工作负载,其中主机需要与云虚拟机建立直接连接,以最大程度地减少跃点。 有关详细信息,请参阅 为每个节点分配公共 IP。 默认值为 false。 | bool |
enableUltraSSD | 是否启用 UltraSSD | bool |
gpuInstanceProfile | 用于为支持的 GPU VM SKU 指定 GPU MIG 实例配置文件的 GPUInstanceProfile。 | “MIG1g” “MIG2g” “MIG3g” “MIG4g” “MIG7g” |
kubeletConfig | 代理池节点上的 Kubelet 配置。 | KubeletConfig |
kubeletDiskType | 确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。 | “OS” “临时” |
linuxOSConfig | Linux 代理节点的 OS 配置。 | LinuxOSConfig |
maxCount | 自动缩放的最大节点数 | int |
maxPods | 可在节点上运行的 Pod 的最大数目。 | int |
minCount | 自动缩放的最小节点数 | int |
模式 | 群集必须随时至少有一个“系统”代理池。 有关代理池限制和最佳做法的其他信息,请参阅:/azure/aks/use-system-pools | “系统” “User” |
名字 | Windows 代理池名称必须为 6 个字符或更少。 | string (必需) 约束: Pattern = ^[a-z][a-z0-9]{0,11}$ |
nodeLabels | 要跨代理池中的所有节点保留的节点标签。 | ManagedClusterAgentPoolProfilePropertiesNodeLabels |
nodePublicIPPrefixID | 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} | 字符串 |
nodeTaints | 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 | string[] |
orchestratorVersion | 最佳做法是,应将 AKS 群集中的所有节点池升级到同一 Kubernetes 版本。 节点池版本必须与控制平面具有相同的主版本。 节点池次要版本必须位于控制平面版本的两个次要版本中。 节点池版本不能大于控制平面版本。 有关详细信息,请参阅 升级节点池。 | 字符串 |
osDiskSizeGB | OS 磁盘大小(以 GB 为单位)用于为主/代理池中的每个计算机指定磁盘大小。 如果指定 0,它将根据指定的 vmSize 应用默认 osDisk 大小。 | int 约束: 最小值 = 0 最大值 = 2048 |
osDiskType | 如果 VM 支持该 VM 并且缓存磁盘大于请求的 OSDiskSizeGB,则默认值为“临时”。 否则,默认为“Managed”。 创建后可能不会更改。 有关详细信息,请参阅 临时 OS。 | “临时” “托管” |
osSKU | 指定 OS SKU。 如果 OSType 为 Windows,则不能指定此值。 | “CBLMariner” “Ubuntu” |
osType | 操作系统类型。 默认值为 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。 | “解除分配” “Delete” |
scaleSetEvictionPolicy | 除非 scaleSetPriority 为“Spot”,否则无法指定此项。 如果未指定,则默认值为“Delete”。 | “解除分配” “Delete” |
scaleSetPriority | 虚拟机规模集优先级。 如果未指定,则默认值为“Regular”。 | “Regular” “现成” |
spotMaxPrice | 可能的值是大于零或 -1 的任何小数值,表示愿意支付任何按需价格。 有关现成定价的更多详细信息,请参阅 现成 VM 定价 指定十进制值作为字符串。 | int 或 json decimal |
标签 | 要保留在代理池虚拟机规模集上的标记。 | 对象 |
类型 | 代理池的类型。 | “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} | 字符串 |
workloadRuntime | 确定节点可以运行的工作负荷的类型。 | “OCIContainer” “WasmWasi” |
CreationData
名字 | 描述 | 价值 |
---|---|---|
sourceResourceId | 这是用于创建目标对象的源对象的 ARM ID。 | 字符串 |
KubeletConfig
名字 | 描述 | 价值 |
---|---|---|
allowedUnsafeSysctls | 允许的不安全 sysctls 或不安全的 sysctl 模式列表(以 * 结尾)。 |
string[] |
containerLogMaxFiles | 容器日志文件的最大数目。 该数字必须≥ 2。 | int 约束: 最小值 = 2 |
containerLogMaxSizeMB | 在轮换容器日志文件之前,容器日志文件的最大大小(例如 10Mi)。 | int |
cpuCfsQuota | 默认值为 true。 | bool |
cpuCfsQuotaPeriod | 默认值为“100ms”。 有效值是包含可选分数和单位后缀的小数序列。 例如:“300ms”、“2h45m”。 支持的单位为“ns”、“us”、“ms”、“s”、“m”和“h”。 | 字符串 |
cpuManagerPolicy | 默认值为“none”。 有关详细信息,请参阅 Kubernetes CPU 管理策略。 允许的值为“none”和“static”。 | 字符串 |
failSwapOn | 如果设置为 true,则如果在节点上启用了交换,则 Kubelet 将无法启动。 | bool |
imageGcHighThreshold | 若要禁用映像垃圾回收,请设置为 100。 默认值为 85% | int |
imageGcLowThreshold | 这不能设置为高于 imageGcHighThreshold。 默认值为 80% | int |
podMaxPids | 每个 Pod 的最大进程数。 | int |
topologyManagerPolicy | 有关详细信息,请参阅 Kubernetes 拓扑管理器。 默认值为“none”。 允许的值为“none”、“best-effort”、“restricted”和“single-numa-node”。 | 字符串 |
LinuxOSConfig
名字 | 描述 | 价值 |
---|---|---|
swapFileSizeMB | 将在每个节点上创建的交换文件的大小(以 MB 为单位)。 | int |
sysctls | Linux 代理节点的 Sysctl 设置。 | SysctlConfig |
transparentHugePageDefrag | 有效值为“always”、“defer”、“defer+madvise”、“madvise”和“never”。 默认值为“madvise”。 有关详细信息,请参阅 透明巨页。 | 字符串 |
transparentHugePageEnabled | 有效值为“always”、“madvise”和“never”。 默认值为“always”。 有关详细信息,请参阅 透明巨页。 | 字符串 |
SysctlConfig
名字 | 描述 | 价值 |
---|---|---|
fsAioMaxNr | Sysctl setting fs.aio-max-nr. | int |
fsFileMax | Sysctl setting fs.file-max. | int |
fsInotifyMaxUserWatches | Sysctl 设置 fs.inotify.max_user_watches。 | int |
fsNrOpen | Sysctl 设置fs.nr_open。 | int |
kernelThreadsMax | Sysctl 设置 kernel.threads-max。 | int |
netCoreNetdevMaxBacklog | Sysctl 设置net.core.netdev_max_backlog。 | int |
netCoreOptmemMax | Sysctl 设置net.core.optmem_max。 | int |
netCoreRmemDefault | Sysctl 设置net.core.rmem_default。 | int |
netCoreRmemMax | Sysctl 设置net.core.rmem_max。 | int |
netCoreSomaxconn | Sysctl setting net.core.somaxconn. | int |
netCoreWmemDefault | 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 |
netIpv4TcpKeepaliveProbes | 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 |
netIpv4TcpTwReuse | Sysctl 设置net.ipv4.tcp_tw_reuse。 | bool |
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 |
ManagedClusterAgentPoolProfilePropertiesNodeLabels
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | 字符串 |
PowerState
名字 | 描述 | 价值 |
---|---|---|
法典 | 指示群集是正在运行还是已停止 | “正在运行” “已停止” |
AgentPoolUpgradeSettings
名字 | 描述 | 价值 |
---|---|---|
maxSurge | 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 1。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster#customize-node-surge-upgrade | 字符串 |
ManagedClusterAPIServerAccessProfile
名字 | 描述 | 价值 |
---|---|---|
authorizedIPRanges | IP 范围以 CIDR 格式指定,例如 137.117.106.88/29。 此功能与使用公共 IP Per Node 的群集或使用基本负载均衡器的群集不兼容。 有关详细信息,请参阅 API 服务器授权 IP 范围。 | string[] |
disableRunCommand | 是否禁用群集的 run 命令。 | bool |
enablePrivateCluster | 有关详细信息,请参阅 创建专用 AKS 群集。 | bool |
enablePrivateClusterPublicFQDN | 是否为专用群集创建其他公共 FQDN。 | bool |
privateDNSZone | 默认值为 System。 有关详细信息,请参阅 配置专用 DNS 区域。 允许的值为“system”和“none”。 | 字符串 |
ManagedClusterPropertiesAutoScalerProfile
名字 | 描述 | 价值 |
---|---|---|
balance-similar-node-groups | 有效值为“true”和“false” | 字符串 |
膨胀 | 如果未指定,则默认值为“random”。 有关详细信息,请参阅 扩展器。 | “最小浪费” “most-pods” “priority” “random” |
max-empty-bulk-delete | 默认值为 10。 | 字符串 |
max-graceful-termination-sec | 默认值为 600。 | 字符串 |
max-node-provision-time | 默认值为“15m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
max-total-unready-percentage | 默认值为 45。 最大值为 100,最小值为 0。 | 字符串 |
new-pod-scale-up-delay | 对于在 kubernetes 计划程序可以计划所有 Pod 之前不希望 CA 执行操作的突发/批处理缩放方案,可以告诉 CA 在某个年龄之前忽略未计划的 Pod。 默认值为“0s”。 值必须是一个整数,后跟一个单位(以秒为单位,“m”表示分钟,“h”表示小时等)。 | 字符串 |
ok-total-unready-count | 这必须是整数。 默认值为 3。 | 字符串 |
scale-down-delay-after-add | 默认值为“10m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-delay-after-delete | 默认值为扫描间隔。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-delay-after-failure | 默认值为“3m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-unneed-time | 默认值为“10m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-unready-time | 默认值为“20m”。 值必须是后跟“m”的整数。 不支持除分钟(m)以外的时间单位。 | 字符串 |
scale-down-utilization-threshold | 默认值为“0.5”。 | 字符串 |
scan-interval | 默认值为“10”。 值必须是整数秒数。 | 字符串 |
skip-nodes-with-local-storage | 默认值为 true。 | 字符串 |
skip-nodes-with-system-pods | 默认值为 true。 | 字符串 |
ManagedClusterAutoUpgradeProfile
名字 | 描述 | 价值 |
---|---|---|
upgradeChannel | 有关详细信息,请参阅 设置 AKS 群集自动升级通道。 | “node-image” “none” “patch” “rapid” “稳定” |
ManagedClusterHttpProxyConfig
名字 | 描述 | 价值 |
---|---|---|
httpProxy | 要使用的 HTTP 代理服务器终结点。 | 字符串 |
httpsProxy | 要使用的 HTTPS 代理服务器终结点。 | 字符串 |
noProxy | 不应通过代理的终结点。 | string[] |
trustedCa | 用于连接到代理服务器的替代 CA 证书。 | 字符串 |
ManagedClusterPropertiesIdentityProfile
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | UserAssignedIdentity |
UserAssignedIdentity
名字 | 描述 | 价值 |
---|---|---|
clientId | 用户分配标识的客户端 ID。 | 字符串 |
objectId | 用户分配标识的对象 ID。 | 字符串 |
resourceId | 用户分配标识的资源 ID。 | 字符串 |
ContainerServiceLinuxProfile
名字 | 描述 | 价值 |
---|---|---|
adminUsername | 用于 Linux VM 的管理员用户名。 | string (必需) 约束: Pattern = ^[A-Za-z][-A-Za-z0-9_]*$ |
ssh | 在 Azure 上运行的基于 Linux 的 VM 的 SSH 配置。 | ContainerServiceSshConfiguration (必需) |
ContainerServiceSshConfiguration
名字 | 描述 | 价值 |
---|---|---|
publicKeys | 用于通过基于 Linux 的 VM 进行身份验证的 SSH 公钥列表。 最多可以指定 1 个键。 | ContainerServiceSshPublicKey[] (必需) |
ContainerServiceSshPublicKey
名字 | 描述 | 价值 |
---|---|---|
keyData | 用于通过 SSH 向 VM 进行身份验证的证书公钥。 证书必须采用 PEM 格式(带或不带标头)。 | string (必需) |
ContainerServiceNetworkProfile
名字 | 描述 | 价值 |
---|---|---|
dnsServiceIP | 分配给 Kubernetes DNS 服务的 IP 地址。 它必须位于 serviceCidr 中指定的 Kubernetes 服务地址范围内。 | 字符串 约束: Pattern = ^(?:(?: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 服务地址范围重叠。 | 字符串 约束: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
ipFamilies | IP 系列用于确定单堆栈或双堆栈群集。 对于单堆栈,预期值为 IPv4。 对于双堆栈,预期值为 IPv4 和 IPv6。 | 包含任一项的字符串数组: “IPv4” “IPv6” |
loadBalancerProfile | 群集负载均衡器的配置文件。 | ManagedClusterLoadBalancerProfile |
loadBalancerSku | 默认值为“standard”。 有关负载均衡器 SKU 之间的差异的详细信息,请参阅 Azure 负载均衡器 SKU。 | “basic” “standard” |
natGatewayProfile | 群集 NAT 网关的配置文件。 | ManagedClusterNATGatewayProfile |
networkMode | 如果 networkPlugin 不是“azure”,则无法指定此项。 | “bridge” “transparent” |
networkPlugin | 用于生成 Kubernetes 网络的网络插件。 | “azure” “kubenet” |
networkPolicy | 用于生成 Kubernetes 网络的网络策略。 | “azure” “calico” |
outboundType | 这只能在群集创建时设置,以后无法更改。 有关详细信息,请参阅 出口出站类型。 | “loadBalancer” “managedNATGateway” “userAssignedNATGateway” “userDefinedRouting” |
podCidr | 使用 kubenet 时分配 Pod IP 的 CIDR 表示法 IP 范围。 | 字符串 约束: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
podCidrs | 单堆栈网络需要一个 IPv4 CIDR。 对于双堆栈网络,每个 IP 系列(IPv4/IPv6)都有两个CIDR。 | string[] |
serviceCidr | 从中分配服务群集 IP 的 CIDR 表示法 IP 范围。 它不得与任何子网 IP 范围重叠。 | 字符串 约束: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
serviceCidrs | 单堆栈网络需要一个 IPv4 CIDR。 对于双堆栈网络,每个 IP 系列(IPv4/IPv6)都有两个CIDR。 它们不得与任何子网 IP 范围重叠。 | string[] |
ManagedClusterLoadBalancerProfile
名字 | 描述 | 价值 |
---|---|---|
allocatedOutboundPorts | 每个 VM 分配的 SNAT 端口的所需数量。 允许的值为 0 到 64000(含)。 默认值为 0,这会导致 Azure 动态分配端口。 | int 约束: 最小值 = 0 最大值 = 64000 |
effectiveOutboundIPs | 群集负载均衡器的有效出站 IP 资源。 | ResourceReference[] |
enableMultipleStandardLoadBalancers | 为每个 AKS 群集启用多个标准负载均衡器。 | bool |
idleTimeoutInMinutes | 所需的出站流空闲超时(以分钟为单位)。 允许的值为 4 到 120(含)。 默认值为 30 分钟。 | int 约束: 最小值 = 4 最大值 = 120 |
managedOutboundIPs | 群集负载均衡器的所需托管出站 IP。 | ManagedClusterLoadBalancerProfileManagedOutboundIPs |
outboundIPPrefixes | 群集负载均衡器的所需出站 IP 前缀资源。 | ManagedClusterLoadBalancerProfileOutboundIPPrefixes |
outboundIP | 群集负载均衡器的所需出站 IP 资源。 | ManagedClusterLoadBalancerProfileOutboundIPs |
ResourceReference
名字 | 描述 | 价值 |
---|---|---|
id | 完全限定的 Azure 资源 ID。 | 字符串 |
ManagedClusterLoadBalancerProfileManagedOutboundIPs
名字 | 描述 | 价值 |
---|---|---|
计数 | Azure 为群集负载均衡器创建/管理的所需 IPv4 出站 IP 数。 允许的值必须介于 1 到 100 之间(含)。 默认值为 1。 | int 约束: 最小值 = 1 最大值 = 100 |
countIPv6 | Azure 为群集负载均衡器创建/管理的所需 IPv6 出站 IP 数。 允许的值必须介于 1 到 100 之间(含)。 对于单堆栈,默认值为 0,双堆栈的默认值为 1。 | int 约束: 最小值 = 0 最大值 = 100 |
ManagedClusterLoadBalancerProfileOutboundIPPrefixes
名字 | 描述 | 价值 |
---|---|---|
publicIPPrefixes | 公共 IP 前缀资源的列表。 | ResourceReference[] |
ManagedClusterLoadBalancerProfileOutboundIPs
名字 | 描述 | 价值 |
---|---|---|
publicIP | 公共 IP 资源的列表。 | ResourceReference[] |
ManagedClusterNATGatewayProfile
名字 | 描述 | 价值 |
---|---|---|
effectiveOutboundIPs | 群集 NAT 网关的有效出站 IP 资源。 | ResourceReference[] |
idleTimeoutInMinutes | 所需的出站流空闲超时(以分钟为单位)。 允许的值为 4 到 120(含)。 默认值为 4 分钟。 | int 约束: 最小值 = 4 最大值 = 120 |
managedOutboundIPProfile | 群集 NAT 网关的托管出站 IP 资源的配置文件。 | ManagedClusterManagedOutboundIPProfile |
ManagedClusterManagedOutboundIPProfile
名字 | 描述 | 价值 |
---|---|---|
计数 | Azure 创建/管理的所需出站 IP 数。 允许的值必须介于 1 到 16 之间(含)。 默认值为 1。 | int 约束: 最小值 = 1 最大值 = 16 |
ManagedClusterPodIdentityProfile
名字 | 描述 | 价值 |
---|---|---|
allowNetworkPluginKubenet | 默认情况下,由于 AAD Pod 标识的安全相关特性以及 IP 欺骗的风险,在 Kubenet 中运行会禁用。 有关详细信息,请参阅 将 Kubenet 网络插件与 AAD Pod 标识 配合使用。 | bool |
启用 | 是否启用 Pod 标识加载项。 | bool |
userAssignedIdentities | 群集中使用的 Pod 标识。 | ManagedClusterPodIdentity[] |
userAssignedIdentityExceptions | 允许的 Pod 标识异常。 | ManagedClusterPodIdentityException[] |
ManagedClusterPodIdentity
名字 | 描述 | 价值 |
---|---|---|
bindingSelector | 要用于 AzureIdentityBinding 资源的绑定选择器。 | 字符串 |
身份 | 用户分配的标识详细信息。 | UserAssignedIdentity (必需) |
名字 | Pod 标识的名称。 | string (必需) |
namespace | Pod 标识的命名空间。 | string (必需) |
ManagedClusterPodIdentityException
名字 | 描述 | 价值 |
---|---|---|
名字 | Pod 标识异常的名称。 | string (必需) |
namespace | Pod 标识异常的命名空间。 | string (必需) |
podLabels | 要匹配的 Pod 标签。 | ManagedClusterPodIdentityExceptionPodLabels (必需) |
ManagedClusterPodIdentityExceptionPodLabels
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | 字符串 |
PrivateLinkResource
名字 | 描述 | 价值 |
---|---|---|
groupId | 资源的组 ID。 | 字符串 |
id | 专用链接资源的 ID。 | 字符串 |
名字 | 专用链接资源的名称。 | 字符串 |
requiredMembers | 资源的 RequiredMembers | string[] |
类型 | 资源类型。 | 字符串 |
ManagedClusterSecurityProfile
名字 | 描述 | 价值 |
---|---|---|
azureDefender | 安全配置文件的 Azure Defender 设置。 | ManagedClusterSecurityProfileAzureDefender |
ManagedClusterSecurityProfileAzureDefender
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 Azure Defender | bool |
logAnalyticsWorkspaceResourceId | 要与 Azure Defender 关联的 Log Analytics 工作区的资源 ID。 启用 Azure Defender 后,此字段是必需的,并且必须是有效的工作区资源 ID。 禁用 Azure Defender 后,将字段留空。 | 字符串 |
ManagedClusterServicePrincipalProfile
名字 | 描述 | 价值 |
---|---|---|
clientId | 服务主体的 ID。 | string (必需) |
秘密 | 以纯文本形式与服务主体关联的机密密码。 | 字符串 |
ManagedClusterWindowsProfile
名字 | 描述 | 价值 |
---|---|---|
adminPassword | 指定管理员帐户的密码。 最小长度: 8 个字符 最大长度: 123 个字符 复杂性要求:需要满足以下 4 个条件中的 3 个 字符数较低 具有大写字符 包含数字 具有特殊字符(正则表达式匹配 [\W_]) 不允许的值:“abc@123”、“P@$$w 0rd”、“P@ssw0rd”、“P@ssword123”、“Pa$$word”、“pass@word1”、“Password!”、“Password1”、“Password22”、“iloveyou!” |
字符串 |
adminUsername | 指定管理员帐户的名称。 限制: 不能以“.” 结尾。 不允许的值:“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 存储库。 | bool |
gmsaProfile | 托管群集中的 Windows gMSA 配置文件。 | WindowsGmsaProfile |
licenseType | 用于 Windows VM 的许可证类型。 有关更多详细信息,请参阅 Azure 混合用户权益。 | “None” “Windows_Server” |
WindowsGmsaProfile
名字 | 描述 | 价值 |
---|---|---|
dnsServer | 指定 Windows gMSA 的 DNS 服务器。 如果在用于创建托管群集的 vnet 中配置了 DNS 服务器,则将其设置为空。 |
字符串 |
启用 | 指定是否在托管群集中启用 Windows gMSA。 | bool |
rootDomainName | 指定 Windows gMSA 的根域名。 如果在用于创建托管群集的 vnet 中配置了 DNS 服务器,则将其设置为空。 |
字符串 |
ManagedClusterSKU
名字 | 描述 | 价值 |
---|---|---|
名字 | 托管群集 SKU 的名称。 | “Basic” |
层 | 如果未指定,则默认值为“Free”。 有关详细信息,请参阅 运行时间 SLA。 | “免费” “付费” |