你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Microsoft.ContainerService managedClusters 2022-11-02-preview
- 最新
- 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-11-02-preview' = {
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'
]
capacityReservationGroupID: 'string'
count: int
creationData: {
sourceResourceId: 'string'
}
enableAutoScaling: bool
enableCustomCATrust: bool
enableEncryptionAtHost: bool
enableFIPS: bool
enableNodePublicIP: bool
enableUltraSSD: bool
gpuInstanceProfile: 'string'
hostGroupID: 'string'
kubeletConfig: {
allowedUnsafeSysctls: [
'string'
]
containerLogMaxFiles: int
containerLogMaxSizeMB: int
cpuCfsQuota: bool
cpuCfsQuotaPeriod: 'string'
cpuManagerPolicy: 'string'
failSwapOn: bool
imageGcHighThreshold: int
imageGcLowThreshold: int
podMaxPids: int
topologyManagerPolicy: 'string'
}
kubeletDiskType: 'string'
linuxOSConfig: {
swapFileSizeMB: int
sysctls: {
fsAioMaxNr: int
fsFileMax: int
fsInotifyMaxUserWatches: int
fsNrOpen: int
kernelThreadsMax: int
netCoreNetdevMaxBacklog: int
netCoreOptmemMax: int
netCoreRmemDefault: int
netCoreRmemMax: int
netCoreSomaxconn: int
netCoreWmemDefault: int
netCoreWmemMax: int
netIpv4IpLocalPortRange: 'string'
netIpv4NeighDefaultGcThresh1: int
netIpv4NeighDefaultGcThresh2: int
netIpv4NeighDefaultGcThresh3: int
netIpv4TcpFinTimeout: int
netIpv4TcpkeepaliveIntvl: int
netIpv4TcpKeepaliveProbes: int
netIpv4TcpKeepaliveTime: int
netIpv4TcpMaxSynBacklog: int
netIpv4TcpMaxTwBuckets: int
netIpv4TcpTwReuse: bool
netNetfilterNfConntrackBuckets: int
netNetfilterNfConntrackMax: int
vmMaxMapCount: int
vmSwappiness: int
vmVfsCachePressure: int
}
transparentHugePageDefrag: 'string'
transparentHugePageEnabled: 'string'
}
maxCount: int
maxPods: int
messageOfTheDay: 'string'
minCount: int
mode: 'string'
name: 'string'
networkProfile: {
allowedHostPorts: [
{
portEnd: int
portStart: int
protocol: 'string'
}
]
applicationSecurityGroups: [
'string'
]
nodePublicIPTags: [
{
ipTagType: 'string'
tag: 'string'
}
]
}
nodeLabels: {
{customized property}: 'string'
}
nodePublicIPPrefixID: 'string'
nodeTaints: [
'string'
]
orchestratorVersion: 'string'
osDiskSizeGB: int
osDiskType: 'string'
osSKU: 'string'
osType: 'string'
podSubnetID: 'string'
powerState: {
code: 'string'
}
proximityPlacementGroupID: 'string'
scaleDownMode: 'string'
scaleSetEvictionPolicy: 'string'
scaleSetPriority: 'string'
spotMaxPrice: json('decimal-as-string')
tags: {}
type: 'string'
upgradeSettings: {
maxSurge: 'string'
}
vmSize: 'string'
vnetSubnetID: 'string'
windowsProfile: {
disableOutboundNat: bool
}
workloadRuntime: 'string'
}
]
apiServerAccessProfile: {
authorizedIPRanges: [
'string'
]
disableRunCommand: bool
enablePrivateCluster: bool
enablePrivateClusterPublicFQDN: bool
enableVnetIntegration: bool
privateDNSZone: 'string'
subnetId: '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: {
nodeOSUpgradeChannel: 'string'
upgradeChannel: 'string'
}
azureMonitorProfile: {
metrics: {
enabled: bool
kubeStateMetrics: {
metricAnnotationsAllowList: 'string'
metricLabelsAllowlist: 'string'
}
}
}
creationData: {
sourceResourceId: 'string'
}
disableLocalAccounts: bool
diskEncryptionSetID: 'string'
dnsPrefix: 'string'
enableNamespaceResources: bool
enablePodSecurityPolicy: bool
enableRBAC: bool
fqdnSubdomain: 'string'
guardrailsProfile: {
excludedNamespaces: [
'string'
]
level: 'string'
version: 'string'
}
httpProxyConfig: {
httpProxy: 'string'
httpsProxy: 'string'
noProxy: [
'string'
]
trustedCa: 'string'
}
identityProfile: {
{customized property}: {
clientId: 'string'
objectId: 'string'
resourceId: 'string'
}
}
ingressProfile: {
webAppRouting: {
dnsZoneResourceId: 'string'
enabled: bool
}
}
kubernetesVersion: 'string'
linuxProfile: {
adminUsername: 'string'
ssh: {
publicKeys: [
{
keyData: 'string'
}
]
}
}
networkProfile: {
dnsServiceIP: 'string'
dockerBridgeCidr: 'string'
ebpfDataplane: 'cilium'
ipFamilies: [
'string'
]
kubeProxyConfig: {
enabled: bool
ipvsConfig: {
scheduler: 'string'
tcpFinTimeoutSeconds: int
tcpTimeoutSeconds: int
udpTimeoutSeconds: int
}
mode: 'string'
}
loadBalancerProfile: {
allocatedOutboundPorts: int
backendPoolType: 'string'
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'
networkPluginMode: 'Overlay'
networkPolicy: 'string'
outboundType: 'string'
podCidr: 'string'
podCidrs: [
'string'
]
serviceCidr: 'string'
serviceCidrs: [
'string'
]
}
nodeResourceGroup: 'string'
nodeResourceGroupProfile: {
restrictionLevel: 'string'
}
oidcIssuerProfile: {
enabled: bool
}
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: {
azureKeyVaultKms: {
enabled: bool
keyId: 'string'
keyVaultNetworkAccess: 'string'
keyVaultResourceId: 'string'
}
customCATrustCertificates: [
any
]
defender: {
logAnalyticsWorkspaceResourceId: 'string'
securityMonitoring: {
enabled: bool
}
}
imageCleaner: {
enabled: bool
intervalHours: int
}
nodeRestriction: {
enabled: bool
}
workloadIdentity: {
enabled: bool
}
}
servicePrincipalProfile: {
clientId: 'string'
secret: 'string'
}
storageProfile: {
blobCSIDriver: {
enabled: bool
}
diskCSIDriver: {
enabled: bool
version: 'string'
}
fileCSIDriver: {
enabled: bool
}
snapshotController: {
enabled: bool
}
}
windowsProfile: {
adminPassword: 'string'
adminUsername: 'string'
enableCSIProxy: bool
gmsaProfile: {
dnsServer: 'string'
enabled: bool
rootDomainName: 'string'
}
licenseType: 'string'
}
workloadAutoScalerProfile: {
keda: {
enabled: bool
}
verticalPodAutoscaler: {
controlledValues: 'string'
enabled: bool
updateMode: '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 |
azureMonitorProfile | 容器服务群集的 Prometheus 加载项配置文件 | ManagedClusterAzureMonitorProfile |
creationData | 如果使用快照创建/升级群集,则用于指定源快照 ID 的 CreationData。 | CreationData |
disableLocalAccounts | 如果设置为 true,将禁用此群集的静态凭据。 这只能在启用了 AAD 的托管群集上使用。 有关详细信息,请参阅 禁用本地帐户。 | bool |
diskEncryptionSetID | 此格式为:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}” | 字符串 |
dnsPrefix | 创建托管群集后,无法更新此功能。 | 字符串 |
enableNamespaceResources | 默认值为 false。 可以在创建和更新托管群集时启用/禁用它。 有关NAMESPACE作为 ARM 资源的更多详细信息,请参阅 https://aka.ms/NamespaceARMResource。 | bool |
enablePodSecurityPolicy | (已弃用)是否启用 Kubernetes Pod 安全策略(预览版)。 Kubernetes v1.21 中弃用 PodSecurityPolicy,并在 v1.25 中从 Kubernetes 中删除。 在 https://aka.ms/k8s/psp 和 https://aka.ms/aks/psp. 了解详细信息 |
bool |
enableRBAC | 是否启用 Kubernetes Role-Based 访问控制。 | bool |
fqdnSubdomain | 创建托管群集后,无法更新此功能。 | 字符串 |
guardrailsProfile | 防护栏配置文件保存给定群集的所有护栏信息 | GuardrailsProfile |
httpProxyConfig | 使用 HTTP 代理服务器预配群集的配置。 | ManagedClusterHttpProxyConfig |
identityProfile | 与群集关联的标识。 | ManagedClusterPropertiesIdentityProfile |
ingressProfile | 托管群集的入口配置文件。 | ManagedClusterIngressProfile |
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 | 包含代理池节点的资源组的名称。 | 字符串 |
nodeResourceGroupProfile | 节点资源组配置文件。 | ManagedClusterNodeResourceGroupProfile |
oidcIssuerProfile | 托管群集的 OIDC 颁发者配置文件。 | ManagedClusterOidcIssuerProfile |
podIdentityProfile | 有关 AAD Pod 标识集成的详细信息,请参阅 使用 AAD Pod 标识。 | ManagedClusterPodIdentityProfile |
privateLinkResources | 与群集关联的专用链接资源。 | PrivateLinkResource[] |
publicNetworkAccess | 允许或拒绝 AKS 的公共网络访问 | “Disabled” “Enabled” “SecuredByPerimeter” |
securityProfile | 托管群集的安全配置文件。 | ManagedClusterSecurityProfile |
servicePrincipalProfile | 有关群集用于操作 Azure API 的服务主体标识的信息。 | ManagedClusterServicePrincipalProfile |
storageProfile | 托管群集的存储配置文件。 | ManagedClusterStorageProfile |
windowsProfile | 托管群集中 Windows VM 的配置文件。 | ManagedClusterWindowsProfile |
workloadAutoScalerProfile | 托管群集的工作负荷自动缩放程序配置文件。 | ManagedClusterWorkloadAutoScalerProfile |
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[] |
capacityReservationGroupID | AKS 会将指定的代理池与容量预留组相关联。 | 字符串 |
计数 | 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 | int |
creationData | 如果使用快照创建/升级节点池,则用于指定源快照 ID 的 CreationData。 | CreationData |
enableAutoScaling | 是否启用自动缩放程序 | bool |
enableCustomCATrust | 如果设置为 true,AKS 会将一个标签添加到节点,指示已启用该功能,并将守护程序集与主机服务一起部署到节点信任存储中,以便从用户提供的 base64 编码证书列表将自定义证书颁发机构同步到节点信任存储中。 默认值为 false。 | 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” |
hostGroupID | 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}。 有关详细信息,请参阅 Azure 专用主机。 | 字符串 |
kubeletConfig | 代理池节点上的 Kubelet 配置。 | KubeletConfig |
kubeletDiskType | 确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。 | “OS” “临时” |
linuxOSConfig | Linux 代理节点的 OS 配置。 | LinuxOSConfig |
maxCount | 自动缩放的最大节点数 | int |
maxPods | 可在节点上运行的 Pod 的最大数目。 | int |
messageOfTheDay | 一个 base64 编码的字符串,将在解码后写入 /etc/motd。 这允许自定义 Linux 节点当天的消息。 它不得为 Windows 节点指定。 它必须是静态字符串(即,将打印为原始字符串,而不是作为脚本执行)。 | 字符串 |
minCount | 自动缩放的最小节点数 | int |
模式 | 群集必须随时至少有一个“系统”代理池。 有关代理池限制和最佳做法的其他信息,请参阅:/azure/aks/use-system-pools | “System” “User” |
名字 | Windows 代理池名称必须为 6 个字符或更少。 | string (必需) 约束: Pattern = ^[a-z][a-z0-9]{0,11}$ |
networkProfile | 代理池的网络相关设置。 | AgentPoolNetworkProfile |
nodeLabels | 要跨代理池中的所有节点保留的节点标签。 | ManagedClusterAgentPoolProfilePropertiesNodeLabels |
nodePublicIPPrefixID | 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} | 字符串 |
nodeTaints | 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 | string[] |
orchestratorVersion | 支持修补程序版本 {major.minor.patch} 和 {major.minor}。 指定 {major.minor} 后,会自动选择最新的受支持修补程序版本。 创建代理池后,使用相同的 {major.minor} 更新代理池不会触发升级,即使有较新的修补程序版本可用也是如此。 最佳做法是,应将 AKS 群集中的所有节点池升级到同一 Kubernetes 版本。 节点池版本必须与控制平面具有相同的主版本。 节点池次要版本必须位于控制平面版本的两个次要版本中。 节点池版本不能大于控制平面版本。 有关详细信息,请参阅 升级节点池。 | 字符串 |
osDiskSizeGB | OS 磁盘大小(以 GB 为单位)用于为主/代理池中的每个计算机指定磁盘大小。 如果指定 0,它将根据指定的 vmSize 应用默认 osDisk 大小。 | int 约束: 最小值 = 0 最大值 = 2048 |
osDiskType | 如果 VM 支持该 VM 并且缓存磁盘大于请求的 OSDiskSizeGB,则默认值为“临时”。 否则,默认为“Managed”。 创建后可能不会更改。 有关详细信息,请参阅 临时 OS。 | “临时” “Managed” |
osSKU | 指定代理池使用的 OS SKU。 如果未指定,则默认值为 Ubuntu(如果 OSType=Linux)或 Windows2019(如果 OSType=Windows)。 在 Windows2019 弃用后,默认的 Windows OSSKU 将更改为 Windows2022。 | “CBLMariner” “水手” “Ubuntu” “Windows2019” “Windows2022” |
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} | 字符串 |
windowsProfile | Windows 代理池的特定配置文件。 | AgentPoolWindowsProfile |
workloadRuntime | 确定节点可以运行的工作负荷的类型。 | 'KataMshvVmIsolation' “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 |
AgentPoolNetworkProfile
名字 | 描述 | 价值 |
---|---|---|
allowedHostPorts | 允许访问的端口范围。 允许指定的范围重叠。 | PortRange[] |
applicationSecurityGroups | 创建代理池时将关联的应用程序安全组的 ID。 | string[] |
nodePublicIPTags | 实例级公共 IP 的 IPTag。 | IPTag[] |
PortRange
名字 | 描述 | 价值 |
---|---|---|
预示 着 | 范围中包含的最大端口。 它的范围应从 1 到 65535,并且大于或等于 portStart。 | int 约束: 最小值 = 1 最大值 = 65535 |
portStart | 范围中包含的最小端口。 它的范围应从 1 到 65535,并且小于或等于 portEnd。 | int 约束: 最小值 = 1 最大值 = 65535 |
协议 | 端口的网络协议。 | “TCP” “UDP” |
IPTag
名字 | 描述 | 价值 |
---|---|---|
ipTagType | IP 标记类型。 示例:RoutingPreference。 | 字符串 |
标记 | 与公共 IP 关联的 IP 标记的值。 示例:Internet。 | 字符串 |
ManagedClusterAgentPoolProfilePropertiesNodeLabels
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | 字符串 |
PowerState
名字 | 描述 | 价值 |
---|---|---|
法典 | 指示群集是正在运行还是已停止 | “Running” “Stopped” |
AgentPoolUpgradeSettings
名字 | 描述 | 价值 |
---|---|---|
maxSurge | 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 1。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster#customize-node-surge-upgrade | 字符串 |
AgentPoolWindowsProfile
名字 | 描述 | 价值 |
---|---|---|
disableOutboundNat | 默认值为 false。 仅当群集 outboundType 为 NAT 网关且 Windows 代理池未启用节点公共 IP 时,才能禁用出站 NAT。 | bool |
ManagedClusterAPIServerAccessProfile
名字 | 描述 | 价值 |
---|---|---|
authorizedIPRanges | IP 范围以 CIDR 格式指定,例如 137.117.106.88/29。 此功能与使用公共 IP Per Node 的群集或使用基本负载均衡器的群集不兼容。 有关详细信息,请参阅 API 服务器授权 IP 范围。 | string[] |
disableRunCommand | 是否禁用群集的 run 命令。 | bool |
enablePrivateCluster | 有关详细信息,请参阅 创建专用 AKS 群集。 | bool |
enablePrivateClusterPublicFQDN | 是否为专用群集创建其他公共 FQDN。 | bool |
enableVnetIntegration | 是否为群集启用 apiserver vnet 集成。 | bool |
privateDNSZone | 默认值为 System。 有关详细信息,请参阅 配置专用 DNS 区域。 允许的值为“system”和“none”。 | 字符串 |
subnetId | 当:1 时需要用到它。 使用 BYO Vnet 创建新群集;2. 更新现有群集以启用 apiserver vnet 集成。 | 字符串 |
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
名字 | 描述 | 价值 |
---|---|---|
nodeOSUpgradeChannel | 默认值为“非托管”,但可能会更改为 GA 中的 NodeImage 或 SecurityPatch。 | “NodeImage” “None” “SecurityPatch” “非托管” |
upgradeChannel | 有关详细信息,请参阅 设置 AKS 群集自动升级通道。 | “node-image” “none” “patch” “rapid” “stable” |
ManagedClusterAzureMonitorProfile
名字 | 描述 | 价值 |
---|---|---|
指标 | prometheus 服务加载项的指标配置文件 | ManagedClusterAzureMonitorProfileMetrics |
ManagedClusterAzureMonitorProfileMetrics
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 Prometheus 收集器 | bool (必需) |
kubeStateMetrics | 容器服务群集 prometheus 加载项配置文件的 Kube 状态指标 | ManagedClusterAzureMonitorProfileKubeStateMetrics |
ManagedClusterAzureMonitorProfileKubeStateMetrics
名字 | 描述 | 价值 |
---|---|---|
metricAnnotationsAllowList | 将在资源的标签指标中使用的其他 Kubernetes 标签键的逗号分隔列表。 | 字符串 |
metricLabelsAllowlist | 将在资源的标签指标中使用的 Kubernetes 批注键的逗号分隔列表。 | 字符串 |
GuardrailsProfile
名字 | 描述 | 价值 |
---|---|---|
excludedNamespaces | 从防护检查中排除的命名空间列表 | string[] |
水平 | 要使用的护栏级别。 默认情况下,为除 AKS 通过 systemExcludedNamespaces 排除的命名空间之外的所有命名空间启用 Guardrails | “强制” “关闭” “警告”(必需) |
版本 | 要使用的约束版本 | string (必需) |
ManagedClusterHttpProxyConfig
名字 | 描述 | 价值 |
---|---|---|
httpProxy | 要使用的 HTTP 代理服务器终结点。 | 字符串 |
httpsProxy | 要使用的 HTTPS 代理服务器终结点。 | 字符串 |
noProxy | 不应通过代理的终结点。 | string[] |
trustedCa | 用于连接到代理服务器的替代 CA 证书。 | 字符串 |
ManagedClusterPropertiesIdentityProfile
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | UserAssignedIdentity |
UserAssignedIdentity
名字 | 描述 | 价值 |
---|---|---|
clientId | 用户分配标识的客户端 ID。 | 字符串 |
objectId | 用户分配标识的对象 ID。 | 字符串 |
resourceId | 用户分配标识的资源 ID。 | 字符串 |
ManagedClusterIngressProfile
名字 | 描述 | 价值 |
---|---|---|
webAppRouting | 入口配置文件的 Web 应用路由设置。 | ManagedClusterIngressProfileWebAppRouting |
ManagedClusterIngressProfileWebAppRouting
名字 | 描述 | 价值 |
---|---|---|
dnsZoneResourceId | 要与 Web 应用关联的 DNS 区域的资源 ID。 仅在启用 Web 应用路由时使用。 | 字符串 |
启用 | 是否启用 Web 应用路由。 | bool |
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]))?$ |
ebpfDataplane | 用于生成 Kubernetes 网络的 eBPF 数据平面。 | “cilium” |
ipFamilies | IP 系列用于确定单堆栈或双堆栈群集。 对于单堆栈,预期值为 IPv4。 对于双堆栈,预期值为 IPv4 和 IPv6。 | 包含任一项的字符串数组: “IPv4” “IPv6” |
kubeProxyConfig | 保留 kube-proxy 的配置自定义。 未定义的任何值都将使用 kube-proxy 默认行为。 请参阅 https://v{version}.docs.kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/ {version} 由 {major version}-{minor version} 字符串表示的位置。 Kubernetes 版本 1.23 将是“1-23”。 |
ContainerServiceNetworkProfileKubeProxyConfig |
loadBalancerProfile | 群集负载均衡器的配置文件。 | ManagedClusterLoadBalancerProfile |
loadBalancerSku | 默认值为“standard”。 有关负载均衡器 SKU 之间的差异的详细信息,请参阅 Azure 负载均衡器 SKU。 | “basic” “standard” |
natGatewayProfile | 群集 NAT 网关的配置文件。 | ManagedClusterNATGatewayProfile |
networkMode | 如果 networkPlugin 不是“azure”,则无法指定此项。 | “bridge” “transparent” |
networkPlugin | 用于生成 Kubernetes 网络的网络插件。 | “azure” “kubenet” “none” |
networkPluginMode | 用于生成 Kubernetes 网络的网络插件模式。 | “覆盖” |
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[] |
ContainerServiceNetworkProfileKubeProxyConfig
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否在群集上的 kube-proxy 上启用(如果没有“kubeProxyConfig”存在),则默认情况下在 AKS 中启用 kube-proxy,而无需进行这些自定义。 | bool |
ipvsConfig | 保存 IPVS 的配置自定义。 仅当“mode”设置为“IPVS”时,才能指定。 | ContainerServiceNetworkProfileKubeProxyConfigIpvsCon... |
模式 | 指定要使用的代理模式(“IPTABLES”或“IPVS”) | “IPTABLES” “IPVS” |
ContainerServiceNetworkProfileKubeProxyConfigIpvsCon...
名字 | 描述 | 价值 |
---|---|---|
调度 | IPVS 计划程序,有关详细信息,请参阅 http://www.linuxvirtualserver.org/docs/scheduling.html. |
“LeastConnection” “RoundRobin” |
tcpFinTimeoutSeconds | 接收 FIN 后用于 IPVS TCP 会话的超时值(以秒为单位)。 必须是正整数值。 | int |
tcpTimeoutSeconds | 用于空闲 IPVS TCP 会话的超时值(以秒为单位)。 必须是正整数值。 | int |
udpTimeoutSeconds | 用于 IPVS UDP 数据包的超时值(以秒为单位)。 必须是正整数值。 | int |
ManagedClusterLoadBalancerProfile
名字 | 描述 | 价值 |
---|---|---|
allocatedOutboundPorts | 每个 VM 分配的 SNAT 端口的所需数量。 允许的值为 0 到 64000(含)。 默认值为 0,这会导致 Azure 动态分配端口。 | int 约束: 最小值 = 0 最大值 = 64000 |
backendPoolType | 托管入站负载均衡器 BackendPool 的类型。 | “NodeIP” “NodeIPConfiguration” |
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 |
ManagedClusterNodeResourceGroupProfile
名字 | 描述 | 价值 |
---|---|---|
restrictionLevel | 应用于群集节点资源组的限制级别 | “ReadOnly” “不受限制” |
ManagedClusterOidcIssuerProfile
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 OIDC 颁发者。 | bool |
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
名字 | 描述 | 价值 |
---|---|---|
azureKeyVaultKms | Azure Key Vault 安全配置文件的密钥管理服务 设置。 | AzureKeyVaultKms |
customCATrustCertificates | 最多包含 10 个 base64 编码 CA 的列表,这些 CA 将添加到启用了自定义 CA 信任功能的节点上的信任存储。 有关详细信息,请参阅 自定义 CA 信任证书 | any[] 约束: 最大长度 = 10 |
辩护人 | Microsoft安全配置文件的 Defender 设置。 | ManagedClusterSecurityProfileDefender |
imageCleaner | 安全配置文件的 ImageCleaner 设置。 | ManagedClusterSecurityProfileImageCleaner |
nodeRestriction | 节点限制 安全配置文件的设置。 | ManagedClusterSecurityProfileNodeRestriction |
workloadIdentity | 安全配置文件的工作负荷标识 设置。 | ManagedClusterSecurityProfileWorkloadIdentity |
AzureKeyVaultKms
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 Azure Key Vault 密钥管理服务。 默认值为 false。 | bool |
keyId | Azure Key Vault 密钥的标识符。 有关详细信息,请参阅 密钥标识符格式。 启用 Azure Key Vault 密钥管理服务时,此字段是必需的,并且必须是有效的密钥标识符。 禁用 Azure Key Vault 密钥管理服务时,将字段留空。 | 字符串 |
keyVaultNetworkAccess | 密钥保管库的网络访问。 可能的值为 Public 和 Private 。
Public 意味着 Key Vault 允许从所有网络进行公共访问。
Private 意味着密钥保管库禁用公共访问并启用专用链接。 默认值为 Public 。 |
“Private” “Public” |
keyVaultResourceId | 密钥保管库的资源 ID。 当 keyVaultNetworkAccess Private 时,此字段是必需的,并且必须是有效的资源 ID。 当 keyVaultNetworkAccess Public 时,请将字段留空。 |
字符串 |
ManagedClusterSecurityProfileDefender
名字 | 描述 | 价值 |
---|---|---|
logAnalyticsWorkspaceResourceId | 要与 Microsoft Defender 关联的 Log Analytics 工作区的资源 ID。 启用Microsoft Defender 后,此字段是必需的,并且必须是有效的工作区资源 ID。 禁用Microsoft Defender 时,请将字段留空。 | 字符串 |
securityMonitoring | Microsoft安全配置文件的云设置的 Defender 威胁检测。 | ManagedClusterSecurityProfileDefenderSecurityMonitor... |
ManagedClusterSecurityProfileDefenderSecurityMonitor...
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 Defender 威胁检测 | bool |
ManagedClusterSecurityProfileImageCleaner
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否在 AKS 群集上启用 ImageCleaner。 | bool |
intervalHours | ImageCleaner 扫描间隔。 | int |
ManagedClusterSecurityProfileNodeRestriction
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用节点限制 | bool |
ManagedClusterSecurityProfileWorkloadIdentity
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用工作负荷标识 | bool |
ManagedClusterServicePrincipalProfile
名字 | 描述 | 价值 |
---|---|---|
clientId | 服务主体的 ID。 | string (必需) |
秘密 | 以纯文本形式与服务主体关联的机密密码。 | 字符串 |
ManagedClusterStorageProfile
名字 | 描述 | 价值 |
---|---|---|
blobCSIDriver | 存储配置文件的 AzureBlob CSI 驱动程序设置。 | ManagedClusterStorageProfileBlobCSIDriver |
diskCSIDriver | 存储配置文件的 AzureDisk CSI 驱动程序设置。 | ManagedClusterStorageProfileDiskCSIDriver |
fileCSIDriver | 存储配置文件的 AzureFile CSI 驱动程序设置。 | ManagedClusterStorageProfileFileCSIDriver |
snapshotController | 存储配置文件的快照控制器设置。 | ManagedClusterStorageProfileSnapshotController |
ManagedClusterStorageProfileBlobCSIDriver
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 AzureBlob CSI 驱动程序。 默认值为 false。 | bool |
ManagedClusterStorageProfileDiskCSIDriver
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 AzureDisk CSI 驱动程序。 默认值为 true。 | bool |
版本 | AzureDisk CSI 驱动程序的版本。 默认值为 v1。 | 字符串 |
ManagedClusterStorageProfileFileCSIDriver
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 AzureFile CSI 驱动程序。 默认值为 true。 | bool |
ManagedClusterStorageProfileSnapshotController
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用快照控制器。 默认值为 true。 | bool |
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 服务器,则将其设置为空。 |
字符串 |
ManagedClusterWorkloadAutoScalerProfile
名字 | 描述 | 价值 |
---|---|---|
keda | KEDA(Kubernetes 事件驱动的自动缩放)设置,用于工作负荷自动缩放程序配置文件。 | ManagedClusterWorkloadAutoScalerProfileKeda |
verticalPodAutoscaler | ManagedClusterWorkloadAutoScalerProfileVerticalPodAu... |
ManagedClusterWorkloadAutoScalerProfileKeda
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 KEDA。 | bool (必需) |
ManagedClusterWorkloadAutoScalerProfileVerticalPodAu...
名字 | 描述 | 价值 |
---|---|---|
controlledValues | 控制哪些资源值自动缩放程序将更改。 默认值为 RequestsAndLimits。 | “RequestsAndLimits” “RequestsOnly”(必需) |
启用 | 是否启用 VPA。 默认值为 false。 | bool (必需) |
updateMode | 每个更新模式级别都是较低级别的超集。 关闭<初始<重新创建<=Auto。例如:如果 UpdateMode 为 Initial,则意味着 VPA 在 VerticalPodAutoscaler 自定义资源(从 UpdateMode Off)中设置建议的资源,并分配 Pod 创建上的资源(从 Initial)。 默认值为 Off。 | “Auto” “Initial” “关闭” “重新创建”(必需) |
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-11-02-preview",
"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" ],
"capacityReservationGroupID": "string",
"count": "int",
"creationData": {
"sourceResourceId": "string"
},
"enableAutoScaling": "bool",
"enableCustomCATrust": "bool",
"enableEncryptionAtHost": "bool",
"enableFIPS": "bool",
"enableNodePublicIP": "bool",
"enableUltraSSD": "bool",
"gpuInstanceProfile": "string",
"hostGroupID": "string",
"kubeletConfig": {
"allowedUnsafeSysctls": [ "string" ],
"containerLogMaxFiles": "int",
"containerLogMaxSizeMB": "int",
"cpuCfsQuota": "bool",
"cpuCfsQuotaPeriod": "string",
"cpuManagerPolicy": "string",
"failSwapOn": "bool",
"imageGcHighThreshold": "int",
"imageGcLowThreshold": "int",
"podMaxPids": "int",
"topologyManagerPolicy": "string"
},
"kubeletDiskType": "string",
"linuxOSConfig": {
"swapFileSizeMB": "int",
"sysctls": {
"fsAioMaxNr": "int",
"fsFileMax": "int",
"fsInotifyMaxUserWatches": "int",
"fsNrOpen": "int",
"kernelThreadsMax": "int",
"netCoreNetdevMaxBacklog": "int",
"netCoreOptmemMax": "int",
"netCoreRmemDefault": "int",
"netCoreRmemMax": "int",
"netCoreSomaxconn": "int",
"netCoreWmemDefault": "int",
"netCoreWmemMax": "int",
"netIpv4IpLocalPortRange": "string",
"netIpv4NeighDefaultGcThresh1": "int",
"netIpv4NeighDefaultGcThresh2": "int",
"netIpv4NeighDefaultGcThresh3": "int",
"netIpv4TcpFinTimeout": "int",
"netIpv4TcpkeepaliveIntvl": "int",
"netIpv4TcpKeepaliveProbes": "int",
"netIpv4TcpKeepaliveTime": "int",
"netIpv4TcpMaxSynBacklog": "int",
"netIpv4TcpMaxTwBuckets": "int",
"netIpv4TcpTwReuse": "bool",
"netNetfilterNfConntrackBuckets": "int",
"netNetfilterNfConntrackMax": "int",
"vmMaxMapCount": "int",
"vmSwappiness": "int",
"vmVfsCachePressure": "int"
},
"transparentHugePageDefrag": "string",
"transparentHugePageEnabled": "string"
},
"maxCount": "int",
"maxPods": "int",
"messageOfTheDay": "string",
"minCount": "int",
"mode": "string",
"name": "string",
"networkProfile": {
"allowedHostPorts": [
{
"portEnd": "int",
"portStart": "int",
"protocol": "string"
}
],
"applicationSecurityGroups": [ "string" ],
"nodePublicIPTags": [
{
"ipTagType": "string",
"tag": "string"
}
]
},
"nodeLabels": {
"{customized property}": "string"
},
"nodePublicIPPrefixID": "string",
"nodeTaints": [ "string" ],
"orchestratorVersion": "string",
"osDiskSizeGB": "int",
"osDiskType": "string",
"osSKU": "string",
"osType": "string",
"podSubnetID": "string",
"powerState": {
"code": "string"
},
"proximityPlacementGroupID": "string",
"scaleDownMode": "string",
"scaleSetEvictionPolicy": "string",
"scaleSetPriority": "string",
"spotMaxPrice": "[json('decimal-as-string')]",
"tags": {},
"type": "string",
"upgradeSettings": {
"maxSurge": "string"
},
"vmSize": "string",
"vnetSubnetID": "string",
"windowsProfile": {
"disableOutboundNat": "bool"
},
"workloadRuntime": "string"
}
],
"apiServerAccessProfile": {
"authorizedIPRanges": [ "string" ],
"disableRunCommand": "bool",
"enablePrivateCluster": "bool",
"enablePrivateClusterPublicFQDN": "bool",
"enableVnetIntegration": "bool",
"privateDNSZone": "string",
"subnetId": "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": {
"nodeOSUpgradeChannel": "string",
"upgradeChannel": "string"
},
"azureMonitorProfile": {
"metrics": {
"enabled": "bool",
"kubeStateMetrics": {
"metricAnnotationsAllowList": "string",
"metricLabelsAllowlist": "string"
}
}
},
"creationData": {
"sourceResourceId": "string"
},
"disableLocalAccounts": "bool",
"diskEncryptionSetID": "string",
"dnsPrefix": "string",
"enableNamespaceResources": "bool",
"enablePodSecurityPolicy": "bool",
"enableRBAC": "bool",
"fqdnSubdomain": "string",
"guardrailsProfile": {
"excludedNamespaces": [ "string" ],
"level": "string",
"version": "string"
},
"httpProxyConfig": {
"httpProxy": "string",
"httpsProxy": "string",
"noProxy": [ "string" ],
"trustedCa": "string"
},
"identityProfile": {
"{customized property}": {
"clientId": "string",
"objectId": "string",
"resourceId": "string"
}
},
"ingressProfile": {
"webAppRouting": {
"dnsZoneResourceId": "string",
"enabled": "bool"
}
},
"kubernetesVersion": "string",
"linuxProfile": {
"adminUsername": "string",
"ssh": {
"publicKeys": [
{
"keyData": "string"
}
]
}
},
"networkProfile": {
"dnsServiceIP": "string",
"dockerBridgeCidr": "string",
"ebpfDataplane": "cilium",
"ipFamilies": [ "string" ],
"kubeProxyConfig": {
"enabled": "bool",
"ipvsConfig": {
"scheduler": "string",
"tcpFinTimeoutSeconds": "int",
"tcpTimeoutSeconds": "int",
"udpTimeoutSeconds": "int"
},
"mode": "string"
},
"loadBalancerProfile": {
"allocatedOutboundPorts": "int",
"backendPoolType": "string",
"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",
"networkPluginMode": "Overlay",
"networkPolicy": "string",
"outboundType": "string",
"podCidr": "string",
"podCidrs": [ "string" ],
"serviceCidr": "string",
"serviceCidrs": [ "string" ]
},
"nodeResourceGroup": "string",
"nodeResourceGroupProfile": {
"restrictionLevel": "string"
},
"oidcIssuerProfile": {
"enabled": "bool"
},
"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": {
"azureKeyVaultKms": {
"enabled": "bool",
"keyId": "string",
"keyVaultNetworkAccess": "string",
"keyVaultResourceId": "string"
},
"customCATrustCertificates": [ object ],
"defender": {
"logAnalyticsWorkspaceResourceId": "string",
"securityMonitoring": {
"enabled": "bool"
}
},
"imageCleaner": {
"enabled": "bool",
"intervalHours": "int"
},
"nodeRestriction": {
"enabled": "bool"
},
"workloadIdentity": {
"enabled": "bool"
}
},
"servicePrincipalProfile": {
"clientId": "string",
"secret": "string"
},
"storageProfile": {
"blobCSIDriver": {
"enabled": "bool"
},
"diskCSIDriver": {
"enabled": "bool",
"version": "string"
},
"fileCSIDriver": {
"enabled": "bool"
},
"snapshotController": {
"enabled": "bool"
}
},
"windowsProfile": {
"adminPassword": "string",
"adminUsername": "string",
"enableCSIProxy": "bool",
"gmsaProfile": {
"dnsServer": "string",
"enabled": "bool",
"rootDomainName": "string"
},
"licenseType": "string"
},
"workloadAutoScalerProfile": {
"keda": {
"enabled": "bool"
},
"verticalPodAutoscaler": {
"controlledValues": "string",
"enabled": "bool",
"updateMode": "string"
}
}
}
}
属性值
managedClusters
名字 | 描述 | 价值 |
---|---|---|
类型 | 资源类型 | “Microsoft.ContainerService/managedClusters” |
apiVersion | 资源 API 版本 | '2022-11-02-preview' |
名字 | 资源名称 | 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 |
azureMonitorProfile | 容器服务群集的 Prometheus 加载项配置文件 | ManagedClusterAzureMonitorProfile |
creationData | 如果使用快照创建/升级群集,则用于指定源快照 ID 的 CreationData。 | CreationData |
disableLocalAccounts | 如果设置为 true,将禁用此群集的静态凭据。 这只能在启用了 AAD 的托管群集上使用。 有关详细信息,请参阅 禁用本地帐户。 | bool |
diskEncryptionSetID | 此格式为:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}” | 字符串 |
dnsPrefix | 创建托管群集后,无法更新此功能。 | 字符串 |
enableNamespaceResources | 默认值为 false。 可以在创建和更新托管群集时启用/禁用它。 有关NAMESPACE作为 ARM 资源的更多详细信息,请参阅 https://aka.ms/NamespaceARMResource。 | bool |
enablePodSecurityPolicy | (已弃用)是否启用 Kubernetes Pod 安全策略(预览版)。 Kubernetes v1.21 中弃用 PodSecurityPolicy,并在 v1.25 中从 Kubernetes 中删除。 在 https://aka.ms/k8s/psp 和 https://aka.ms/aks/psp. 了解详细信息 |
bool |
enableRBAC | 是否启用 Kubernetes Role-Based 访问控制。 | bool |
fqdnSubdomain | 创建托管群集后,无法更新此功能。 | 字符串 |
guardrailsProfile | 防护栏配置文件保存给定群集的所有护栏信息 | GuardrailsProfile |
httpProxyConfig | 使用 HTTP 代理服务器预配群集的配置。 | ManagedClusterHttpProxyConfig |
identityProfile | 与群集关联的标识。 | ManagedClusterPropertiesIdentityProfile |
ingressProfile | 托管群集的入口配置文件。 | ManagedClusterIngressProfile |
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 | 包含代理池节点的资源组的名称。 | 字符串 |
nodeResourceGroupProfile | 节点资源组配置文件。 | ManagedClusterNodeResourceGroupProfile |
oidcIssuerProfile | 托管群集的 OIDC 颁发者配置文件。 | ManagedClusterOidcIssuerProfile |
podIdentityProfile | 有关 AAD Pod 标识集成的详细信息,请参阅 使用 AAD Pod 标识。 | ManagedClusterPodIdentityProfile |
privateLinkResources | 与群集关联的专用链接资源。 | PrivateLinkResource[] |
publicNetworkAccess | 允许或拒绝 AKS 的公共网络访问 | “Disabled” “Enabled” “SecuredByPerimeter” |
securityProfile | 托管群集的安全配置文件。 | ManagedClusterSecurityProfile |
servicePrincipalProfile | 有关群集用于操作 Azure API 的服务主体标识的信息。 | ManagedClusterServicePrincipalProfile |
storageProfile | 托管群集的存储配置文件。 | ManagedClusterStorageProfile |
windowsProfile | 托管群集中 Windows VM 的配置文件。 | ManagedClusterWindowsProfile |
workloadAutoScalerProfile | 托管群集的工作负荷自动缩放程序配置文件。 | ManagedClusterWorkloadAutoScalerProfile |
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[] |
capacityReservationGroupID | AKS 会将指定的代理池与容量预留组相关联。 | 字符串 |
计数 | 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 | int |
creationData | 如果使用快照创建/升级节点池,则用于指定源快照 ID 的 CreationData。 | CreationData |
enableAutoScaling | 是否启用自动缩放程序 | bool |
enableCustomCATrust | 如果设置为 true,AKS 会将一个标签添加到节点,指示已启用该功能,并将守护程序集与主机服务一起部署到节点信任存储中,以便从用户提供的 base64 编码证书列表将自定义证书颁发机构同步到节点信任存储中。 默认值为 false。 | 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” |
hostGroupID | 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}。 有关详细信息,请参阅 Azure 专用主机。 | 字符串 |
kubeletConfig | 代理池节点上的 Kubelet 配置。 | KubeletConfig |
kubeletDiskType | 确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。 | “OS” “临时” |
linuxOSConfig | Linux 代理节点的 OS 配置。 | LinuxOSConfig |
maxCount | 自动缩放的最大节点数 | int |
maxPods | 可在节点上运行的 Pod 的最大数目。 | int |
messageOfTheDay | 一个 base64 编码的字符串,将在解码后写入 /etc/motd。 这允许自定义 Linux 节点当天的消息。 它不得为 Windows 节点指定。 它必须是静态字符串(即,将打印为原始字符串,而不是作为脚本执行)。 | 字符串 |
minCount | 自动缩放的最小节点数 | int |
模式 | 群集必须随时至少有一个“系统”代理池。 有关代理池限制和最佳做法的其他信息,请参阅:/azure/aks/use-system-pools | “System” “User” |
名字 | Windows 代理池名称必须为 6 个字符或更少。 | string (必需) 约束: Pattern = ^[a-z][a-z0-9]{0,11}$ |
networkProfile | 代理池的网络相关设置。 | AgentPoolNetworkProfile |
nodeLabels | 要跨代理池中的所有节点保留的节点标签。 | ManagedClusterAgentPoolProfilePropertiesNodeLabels |
nodePublicIPPrefixID | 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} | 字符串 |
nodeTaints | 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 | string[] |
orchestratorVersion | 支持修补程序版本 {major.minor.patch} 和 {major.minor}。 指定 {major.minor} 后,会自动选择最新的受支持修补程序版本。 创建代理池后,使用相同的 {major.minor} 更新代理池不会触发升级,即使有较新的修补程序版本可用也是如此。 最佳做法是,应将 AKS 群集中的所有节点池升级到同一 Kubernetes 版本。 节点池版本必须与控制平面具有相同的主版本。 节点池次要版本必须位于控制平面版本的两个次要版本中。 节点池版本不能大于控制平面版本。 有关详细信息,请参阅 升级节点池。 | 字符串 |
osDiskSizeGB | OS 磁盘大小(以 GB 为单位)用于为主/代理池中的每个计算机指定磁盘大小。 如果指定 0,它将根据指定的 vmSize 应用默认 osDisk 大小。 | int 约束: 最小值 = 0 最大值 = 2048 |
osDiskType | 如果 VM 支持该 VM 并且缓存磁盘大于请求的 OSDiskSizeGB,则默认值为“临时”。 否则,默认为“Managed”。 创建后可能不会更改。 有关详细信息,请参阅 临时 OS。 | “临时” “Managed” |
osSKU | 指定代理池使用的 OS SKU。 如果未指定,则默认值为 Ubuntu(如果 OSType=Linux)或 Windows2019(如果 OSType=Windows)。 在 Windows2019 弃用后,默认的 Windows OSSKU 将更改为 Windows2022。 | “CBLMariner” “水手” “Ubuntu” “Windows2019” “Windows2022” |
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} | 字符串 |
windowsProfile | Windows 代理池的特定配置文件。 | AgentPoolWindowsProfile |
workloadRuntime | 确定节点可以运行的工作负荷的类型。 | 'KataMshvVmIsolation' “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 |
AgentPoolNetworkProfile
名字 | 描述 | 价值 |
---|---|---|
allowedHostPorts | 允许访问的端口范围。 允许指定的范围重叠。 | PortRange[] |
applicationSecurityGroups | 创建代理池时将关联的应用程序安全组的 ID。 | string[] |
nodePublicIPTags | 实例级公共 IP 的 IPTag。 | IPTag[] |
PortRange
名字 | 描述 | 价值 |
---|---|---|
预示 着 | 范围中包含的最大端口。 它的范围应从 1 到 65535,并且大于或等于 portStart。 | int 约束: 最小值 = 1 最大值 = 65535 |
portStart | 范围中包含的最小端口。 它的范围应从 1 到 65535,并且小于或等于 portEnd。 | int 约束: 最小值 = 1 最大值 = 65535 |
协议 | 端口的网络协议。 | “TCP” “UDP” |
IPTag
名字 | 描述 | 价值 |
---|---|---|
ipTagType | IP 标记类型。 示例:RoutingPreference。 | 字符串 |
标记 | 与公共 IP 关联的 IP 标记的值。 示例:Internet。 | 字符串 |
ManagedClusterAgentPoolProfilePropertiesNodeLabels
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | 字符串 |
PowerState
名字 | 描述 | 价值 |
---|---|---|
法典 | 指示群集是正在运行还是已停止 | “Running” “Stopped” |
AgentPoolUpgradeSettings
名字 | 描述 | 价值 |
---|---|---|
maxSurge | 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 1。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster#customize-node-surge-upgrade | 字符串 |
AgentPoolWindowsProfile
名字 | 描述 | 价值 |
---|---|---|
disableOutboundNat | 默认值为 false。 仅当群集 outboundType 为 NAT 网关且 Windows 代理池未启用节点公共 IP 时,才能禁用出站 NAT。 | bool |
ManagedClusterAPIServerAccessProfile
名字 | 描述 | 价值 |
---|---|---|
authorizedIPRanges | IP 范围以 CIDR 格式指定,例如 137.117.106.88/29。 此功能与使用公共 IP Per Node 的群集或使用基本负载均衡器的群集不兼容。 有关详细信息,请参阅 API 服务器授权 IP 范围。 | string[] |
disableRunCommand | 是否禁用群集的 run 命令。 | bool |
enablePrivateCluster | 有关详细信息,请参阅 创建专用 AKS 群集。 | bool |
enablePrivateClusterPublicFQDN | 是否为专用群集创建其他公共 FQDN。 | bool |
enableVnetIntegration | 是否为群集启用 apiserver vnet 集成。 | bool |
privateDNSZone | 默认值为 System。 有关详细信息,请参阅 配置专用 DNS 区域。 允许的值为“system”和“none”。 | 字符串 |
subnetId | 当:1 时需要用到它。 使用 BYO Vnet 创建新群集;2. 更新现有群集以启用 apiserver vnet 集成。 | 字符串 |
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
名字 | 描述 | 价值 |
---|---|---|
nodeOSUpgradeChannel | 默认值为“非托管”,但可能会更改为 GA 中的 NodeImage 或 SecurityPatch。 | “NodeImage” “None” “SecurityPatch” “非托管” |
upgradeChannel | 有关详细信息,请参阅 设置 AKS 群集自动升级通道。 | “node-image” “none” “patch” “rapid” “stable” |
ManagedClusterAzureMonitorProfile
名字 | 描述 | 价值 |
---|---|---|
指标 | prometheus 服务加载项的指标配置文件 | ManagedClusterAzureMonitorProfileMetrics |
ManagedClusterAzureMonitorProfileMetrics
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 Prometheus 收集器 | bool (必需) |
kubeStateMetrics | 容器服务群集 prometheus 加载项配置文件的 Kube 状态指标 | ManagedClusterAzureMonitorProfileKubeStateMetrics |
ManagedClusterAzureMonitorProfileKubeStateMetrics
名字 | 描述 | 价值 |
---|---|---|
metricAnnotationsAllowList | 将在资源的标签指标中使用的其他 Kubernetes 标签键的逗号分隔列表。 | 字符串 |
metricLabelsAllowlist | 将在资源的标签指标中使用的 Kubernetes 批注键的逗号分隔列表。 | 字符串 |
GuardrailsProfile
名字 | 描述 | 价值 |
---|---|---|
excludedNamespaces | 从防护检查中排除的命名空间列表 | string[] |
水平 | 要使用的护栏级别。 默认情况下,为除 AKS 通过 systemExcludedNamespaces 排除的命名空间之外的所有命名空间启用 Guardrails | “强制” “关闭” “警告”(必需) |
版本 | 要使用的约束版本 | string (必需) |
ManagedClusterHttpProxyConfig
名字 | 描述 | 价值 |
---|---|---|
httpProxy | 要使用的 HTTP 代理服务器终结点。 | 字符串 |
httpsProxy | 要使用的 HTTPS 代理服务器终结点。 | 字符串 |
noProxy | 不应通过代理的终结点。 | string[] |
trustedCa | 用于连接到代理服务器的替代 CA 证书。 | 字符串 |
ManagedClusterPropertiesIdentityProfile
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | UserAssignedIdentity |
UserAssignedIdentity
名字 | 描述 | 价值 |
---|---|---|
clientId | 用户分配标识的客户端 ID。 | 字符串 |
objectId | 用户分配标识的对象 ID。 | 字符串 |
resourceId | 用户分配标识的资源 ID。 | 字符串 |
ManagedClusterIngressProfile
名字 | 描述 | 价值 |
---|---|---|
webAppRouting | 入口配置文件的 Web 应用路由设置。 | ManagedClusterIngressProfileWebAppRouting |
ManagedClusterIngressProfileWebAppRouting
名字 | 描述 | 价值 |
---|---|---|
dnsZoneResourceId | 要与 Web 应用关联的 DNS 区域的资源 ID。 仅在启用 Web 应用路由时使用。 | 字符串 |
启用 | 是否启用 Web 应用路由。 | bool |
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]))?$ |
ebpfDataplane | 用于生成 Kubernetes 网络的 eBPF 数据平面。 | “cilium” |
ipFamilies | IP 系列用于确定单堆栈或双堆栈群集。 对于单堆栈,预期值为 IPv4。 对于双堆栈,预期值为 IPv4 和 IPv6。 | 包含任一项的字符串数组: “IPv4” “IPv6” |
kubeProxyConfig | 保留 kube-proxy 的配置自定义。 未定义的任何值都将使用 kube-proxy 默认行为。 请参阅 https://v{version}.docs.kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/ {version} 由 {major version}-{minor version} 字符串表示的位置。 Kubernetes 版本 1.23 将是“1-23”。 |
ContainerServiceNetworkProfileKubeProxyConfig |
loadBalancerProfile | 群集负载均衡器的配置文件。 | ManagedClusterLoadBalancerProfile |
loadBalancerSku | 默认值为“standard”。 有关负载均衡器 SKU 之间的差异的详细信息,请参阅 Azure 负载均衡器 SKU。 | “basic” “standard” |
natGatewayProfile | 群集 NAT 网关的配置文件。 | ManagedClusterNATGatewayProfile |
networkMode | 如果 networkPlugin 不是“azure”,则无法指定此项。 | “bridge” “transparent” |
networkPlugin | 用于生成 Kubernetes 网络的网络插件。 | “azure” “kubenet” “none” |
networkPluginMode | 用于生成 Kubernetes 网络的网络插件模式。 | “覆盖” |
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[] |
ContainerServiceNetworkProfileKubeProxyConfig
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否在群集上的 kube-proxy 上启用(如果没有“kubeProxyConfig”存在),则默认情况下在 AKS 中启用 kube-proxy,而无需进行这些自定义。 | bool |
ipvsConfig | 保存 IPVS 的配置自定义。 仅当“mode”设置为“IPVS”时,才能指定。 | ContainerServiceNetworkProfileKubeProxyConfigIpvsCon... |
模式 | 指定要使用的代理模式(“IPTABLES”或“IPVS”) | “IPTABLES” “IPVS” |
ContainerServiceNetworkProfileKubeProxyConfigIpvsCon...
名字 | 描述 | 价值 |
---|---|---|
调度 | IPVS 计划程序,有关详细信息,请参阅 http://www.linuxvirtualserver.org/docs/scheduling.html. |
“LeastConnection” “RoundRobin” |
tcpFinTimeoutSeconds | 接收 FIN 后用于 IPVS TCP 会话的超时值(以秒为单位)。 必须是正整数值。 | int |
tcpTimeoutSeconds | 用于空闲 IPVS TCP 会话的超时值(以秒为单位)。 必须是正整数值。 | int |
udpTimeoutSeconds | 用于 IPVS UDP 数据包的超时值(以秒为单位)。 必须是正整数值。 | int |
ManagedClusterLoadBalancerProfile
名字 | 描述 | 价值 |
---|---|---|
allocatedOutboundPorts | 每个 VM 分配的 SNAT 端口的所需数量。 允许的值为 0 到 64000(含)。 默认值为 0,这会导致 Azure 动态分配端口。 | int 约束: 最小值 = 0 最大值 = 64000 |
backendPoolType | 托管入站负载均衡器 BackendPool 的类型。 | “NodeIP” “NodeIPConfiguration” |
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 |
ManagedClusterNodeResourceGroupProfile
名字 | 描述 | 价值 |
---|---|---|
restrictionLevel | 应用于群集节点资源组的限制级别 | “ReadOnly” “不受限制” |
ManagedClusterOidcIssuerProfile
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 OIDC 颁发者。 | bool |
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
名字 | 描述 | 价值 |
---|---|---|
azureKeyVaultKms | Azure Key Vault 安全配置文件的密钥管理服务 设置。 | AzureKeyVaultKms |
customCATrustCertificates | 最多包含 10 个 base64 编码 CA 的列表,这些 CA 将添加到启用了自定义 CA 信任功能的节点上的信任存储。 有关详细信息,请参阅 自定义 CA 信任证书 | any[] 约束: 最大长度 = 10 |
辩护人 | Microsoft安全配置文件的 Defender 设置。 | ManagedClusterSecurityProfileDefender |
imageCleaner | 安全配置文件的 ImageCleaner 设置。 | ManagedClusterSecurityProfileImageCleaner |
nodeRestriction | 节点限制 安全配置文件的设置。 | ManagedClusterSecurityProfileNodeRestriction |
workloadIdentity | 安全配置文件的工作负荷标识 设置。 | ManagedClusterSecurityProfileWorkloadIdentity |
AzureKeyVaultKms
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 Azure Key Vault 密钥管理服务。 默认值为 false。 | bool |
keyId | Azure Key Vault 密钥的标识符。 有关详细信息,请参阅 密钥标识符格式。 启用 Azure Key Vault 密钥管理服务时,此字段是必需的,并且必须是有效的密钥标识符。 禁用 Azure Key Vault 密钥管理服务时,将字段留空。 | 字符串 |
keyVaultNetworkAccess | 密钥保管库的网络访问。 可能的值为 Public 和 Private 。
Public 意味着 Key Vault 允许从所有网络进行公共访问。
Private 意味着密钥保管库禁用公共访问并启用专用链接。 默认值为 Public 。 |
“Private” “Public” |
keyVaultResourceId | 密钥保管库的资源 ID。 当 keyVaultNetworkAccess Private 时,此字段是必需的,并且必须是有效的资源 ID。 当 keyVaultNetworkAccess Public 时,请将字段留空。 |
字符串 |
ManagedClusterSecurityProfileDefender
名字 | 描述 | 价值 |
---|---|---|
logAnalyticsWorkspaceResourceId | 要与 Microsoft Defender 关联的 Log Analytics 工作区的资源 ID。 启用Microsoft Defender 后,此字段是必需的,并且必须是有效的工作区资源 ID。 禁用Microsoft Defender 时,请将字段留空。 | 字符串 |
securityMonitoring | Microsoft安全配置文件的云设置的 Defender 威胁检测。 | ManagedClusterSecurityProfileDefenderSecurityMonitor... |
ManagedClusterSecurityProfileDefenderSecurityMonitor...
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 Defender 威胁检测 | bool |
ManagedClusterSecurityProfileImageCleaner
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否在 AKS 群集上启用 ImageCleaner。 | bool |
intervalHours | ImageCleaner 扫描间隔。 | int |
ManagedClusterSecurityProfileNodeRestriction
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用节点限制 | bool |
ManagedClusterSecurityProfileWorkloadIdentity
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用工作负荷标识 | bool |
ManagedClusterServicePrincipalProfile
名字 | 描述 | 价值 |
---|---|---|
clientId | 服务主体的 ID。 | string (必需) |
秘密 | 以纯文本形式与服务主体关联的机密密码。 | 字符串 |
ManagedClusterStorageProfile
名字 | 描述 | 价值 |
---|---|---|
blobCSIDriver | 存储配置文件的 AzureBlob CSI 驱动程序设置。 | ManagedClusterStorageProfileBlobCSIDriver |
diskCSIDriver | 存储配置文件的 AzureDisk CSI 驱动程序设置。 | ManagedClusterStorageProfileDiskCSIDriver |
fileCSIDriver | 存储配置文件的 AzureFile CSI 驱动程序设置。 | ManagedClusterStorageProfileFileCSIDriver |
snapshotController | 存储配置文件的快照控制器设置。 | ManagedClusterStorageProfileSnapshotController |
ManagedClusterStorageProfileBlobCSIDriver
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 AzureBlob CSI 驱动程序。 默认值为 false。 | bool |
ManagedClusterStorageProfileDiskCSIDriver
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 AzureDisk CSI 驱动程序。 默认值为 true。 | bool |
版本 | AzureDisk CSI 驱动程序的版本。 默认值为 v1。 | 字符串 |
ManagedClusterStorageProfileFileCSIDriver
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 AzureFile CSI 驱动程序。 默认值为 true。 | bool |
ManagedClusterStorageProfileSnapshotController
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用快照控制器。 默认值为 true。 | bool |
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 服务器,则将其设置为空。 |
字符串 |
ManagedClusterWorkloadAutoScalerProfile
名字 | 描述 | 价值 |
---|---|---|
keda | KEDA(Kubernetes 事件驱动的自动缩放)设置,用于工作负荷自动缩放程序配置文件。 | ManagedClusterWorkloadAutoScalerProfileKeda |
verticalPodAutoscaler | ManagedClusterWorkloadAutoScalerProfileVerticalPodAu... |
ManagedClusterWorkloadAutoScalerProfileKeda
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 KEDA。 | bool (必需) |
ManagedClusterWorkloadAutoScalerProfileVerticalPodAu...
名字 | 描述 | 价值 |
---|---|---|
controlledValues | 控制哪些资源值自动缩放程序将更改。 默认值为 RequestsAndLimits。 | “RequestsAndLimits” “RequestsOnly”(必需) |
启用 | 是否启用 VPA。 默认值为 false。 | bool (必需) |
updateMode | 每个更新模式级别都是较低级别的超集。 关闭<初始<重新创建<=Auto。例如:如果 UpdateMode 为 Initial,则意味着 VPA 在 VerticalPodAutoscaler 自定义资源(从 UpdateMode Off)中设置建议的资源,并分配 Pod 创建上的资源(从 Initial)。 默认值为 Off。 | “Auto” “Initial” “关闭” “重新创建”(必需) |
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-11-02-preview"
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"
]
capacityReservationGroupID = "string"
count = int
creationData = {
sourceResourceId = "string"
}
enableAutoScaling = bool
enableCustomCATrust = bool
enableEncryptionAtHost = bool
enableFIPS = bool
enableNodePublicIP = bool
enableUltraSSD = bool
gpuInstanceProfile = "string"
hostGroupID = "string"
kubeletConfig = {
allowedUnsafeSysctls = [
"string"
]
containerLogMaxFiles = int
containerLogMaxSizeMB = int
cpuCfsQuota = bool
cpuCfsQuotaPeriod = "string"
cpuManagerPolicy = "string"
failSwapOn = bool
imageGcHighThreshold = int
imageGcLowThreshold = int
podMaxPids = int
topologyManagerPolicy = "string"
}
kubeletDiskType = "string"
linuxOSConfig = {
swapFileSizeMB = int
sysctls = {
fsAioMaxNr = int
fsFileMax = int
fsInotifyMaxUserWatches = int
fsNrOpen = int
kernelThreadsMax = int
netCoreNetdevMaxBacklog = int
netCoreOptmemMax = int
netCoreRmemDefault = int
netCoreRmemMax = int
netCoreSomaxconn = int
netCoreWmemDefault = int
netCoreWmemMax = int
netIpv4IpLocalPortRange = "string"
netIpv4NeighDefaultGcThresh1 = int
netIpv4NeighDefaultGcThresh2 = int
netIpv4NeighDefaultGcThresh3 = int
netIpv4TcpFinTimeout = int
netIpv4TcpkeepaliveIntvl = int
netIpv4TcpKeepaliveProbes = int
netIpv4TcpKeepaliveTime = int
netIpv4TcpMaxSynBacklog = int
netIpv4TcpMaxTwBuckets = int
netIpv4TcpTwReuse = bool
netNetfilterNfConntrackBuckets = int
netNetfilterNfConntrackMax = int
vmMaxMapCount = int
vmSwappiness = int
vmVfsCachePressure = int
}
transparentHugePageDefrag = "string"
transparentHugePageEnabled = "string"
}
maxCount = int
maxPods = int
messageOfTheDay = "string"
minCount = int
mode = "string"
name = "string"
networkProfile = {
allowedHostPorts = [
{
portEnd = int
portStart = int
protocol = "string"
}
]
applicationSecurityGroups = [
"string"
]
nodePublicIPTags = [
{
ipTagType = "string"
tag = "string"
}
]
}
nodeLabels = {
{customized property} = "string"
}
nodePublicIPPrefixID = "string"
nodeTaints = [
"string"
]
orchestratorVersion = "string"
osDiskSizeGB = int
osDiskType = "string"
osSKU = "string"
osType = "string"
podSubnetID = "string"
powerState = {
code = "string"
}
proximityPlacementGroupID = "string"
scaleDownMode = "string"
scaleSetEvictionPolicy = "string"
scaleSetPriority = "string"
spotMaxPrice = "decimal-as-string"
tags = {}
type = "string"
upgradeSettings = {
maxSurge = "string"
}
vmSize = "string"
vnetSubnetID = "string"
windowsProfile = {
disableOutboundNat = bool
}
workloadRuntime = "string"
}
]
apiServerAccessProfile = {
authorizedIPRanges = [
"string"
]
disableRunCommand = bool
enablePrivateCluster = bool
enablePrivateClusterPublicFQDN = bool
enableVnetIntegration = bool
privateDNSZone = "string"
subnetId = "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 = {
nodeOSUpgradeChannel = "string"
upgradeChannel = "string"
}
azureMonitorProfile = {
metrics = {
enabled = bool
kubeStateMetrics = {
metricAnnotationsAllowList = "string"
metricLabelsAllowlist = "string"
}
}
}
creationData = {
sourceResourceId = "string"
}
disableLocalAccounts = bool
diskEncryptionSetID = "string"
dnsPrefix = "string"
enableNamespaceResources = bool
enablePodSecurityPolicy = bool
enableRBAC = bool
fqdnSubdomain = "string"
guardrailsProfile = {
excludedNamespaces = [
"string"
]
level = "string"
version = "string"
}
httpProxyConfig = {
httpProxy = "string"
httpsProxy = "string"
noProxy = [
"string"
]
trustedCa = "string"
}
identityProfile = {
{customized property} = {
clientId = "string"
objectId = "string"
resourceId = "string"
}
}
ingressProfile = {
webAppRouting = {
dnsZoneResourceId = "string"
enabled = bool
}
}
kubernetesVersion = "string"
linuxProfile = {
adminUsername = "string"
ssh = {
publicKeys = [
{
keyData = "string"
}
]
}
}
networkProfile = {
dnsServiceIP = "string"
dockerBridgeCidr = "string"
ebpfDataplane = "cilium"
ipFamilies = [
"string"
]
kubeProxyConfig = {
enabled = bool
ipvsConfig = {
scheduler = "string"
tcpFinTimeoutSeconds = int
tcpTimeoutSeconds = int
udpTimeoutSeconds = int
}
mode = "string"
}
loadBalancerProfile = {
allocatedOutboundPorts = int
backendPoolType = "string"
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"
networkPluginMode = "Overlay"
networkPolicy = "string"
outboundType = "string"
podCidr = "string"
podCidrs = [
"string"
]
serviceCidr = "string"
serviceCidrs = [
"string"
]
}
nodeResourceGroup = "string"
nodeResourceGroupProfile = {
restrictionLevel = "string"
}
oidcIssuerProfile = {
enabled = bool
}
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 = {
azureKeyVaultKms = {
enabled = bool
keyId = "string"
keyVaultNetworkAccess = "string"
keyVaultResourceId = "string"
}
customCATrustCertificates = [ object ]
defender = {
logAnalyticsWorkspaceResourceId = "string"
securityMonitoring = {
enabled = bool
}
}
imageCleaner = {
enabled = bool
intervalHours = int
}
nodeRestriction = {
enabled = bool
}
workloadIdentity = {
enabled = bool
}
}
servicePrincipalProfile = {
clientId = "string"
secret = "string"
}
storageProfile = {
blobCSIDriver = {
enabled = bool
}
diskCSIDriver = {
enabled = bool
version = "string"
}
fileCSIDriver = {
enabled = bool
}
snapshotController = {
enabled = bool
}
}
windowsProfile = {
adminPassword = "string"
adminUsername = "string"
enableCSIProxy = bool
gmsaProfile = {
dnsServer = "string"
enabled = bool
rootDomainName = "string"
}
licenseType = "string"
}
workloadAutoScalerProfile = {
keda = {
enabled = bool
}
verticalPodAutoscaler = {
controlledValues = "string"
enabled = bool
updateMode = "string"
}
}
}
sku = {
name = "Basic"
tier = "string"
}
extendedLocation = {
name = "string"
type = "EdgeZone"
}
})
}
属性值
managedClusters
名字 | 描述 | 价值 |
---|---|---|
类型 | 资源类型 | “Microsoft.ContainerService/managedClusters@2022-11-02-preview” |
名字 | 资源名称 | 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 |
azureMonitorProfile | 容器服务群集的 Prometheus 加载项配置文件 | ManagedClusterAzureMonitorProfile |
creationData | 如果使用快照创建/升级群集,则用于指定源快照 ID 的 CreationData。 | CreationData |
disableLocalAccounts | 如果设置为 true,将禁用此群集的静态凭据。 这只能在启用了 AAD 的托管群集上使用。 有关详细信息,请参阅 禁用本地帐户。 | bool |
diskEncryptionSetID | 此格式为:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}” | 字符串 |
dnsPrefix | 创建托管群集后,无法更新此功能。 | 字符串 |
enableNamespaceResources | 默认值为 false。 可以在创建和更新托管群集时启用/禁用它。 有关NAMESPACE作为 ARM 资源的更多详细信息,请参阅 https://aka.ms/NamespaceARMResource。 | bool |
enablePodSecurityPolicy | (已弃用)是否启用 Kubernetes Pod 安全策略(预览版)。 Kubernetes v1.21 中弃用 PodSecurityPolicy,并在 v1.25 中从 Kubernetes 中删除。 在 https://aka.ms/k8s/psp 和 https://aka.ms/aks/psp. 了解详细信息 |
bool |
enableRBAC | 是否启用 Kubernetes Role-Based 访问控制。 | bool |
fqdnSubdomain | 创建托管群集后,无法更新此功能。 | 字符串 |
guardrailsProfile | 防护栏配置文件保存给定群集的所有护栏信息 | GuardrailsProfile |
httpProxyConfig | 使用 HTTP 代理服务器预配群集的配置。 | ManagedClusterHttpProxyConfig |
identityProfile | 与群集关联的标识。 | ManagedClusterPropertiesIdentityProfile |
ingressProfile | 托管群集的入口配置文件。 | ManagedClusterIngressProfile |
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 | 包含代理池节点的资源组的名称。 | 字符串 |
nodeResourceGroupProfile | 节点资源组配置文件。 | ManagedClusterNodeResourceGroupProfile |
oidcIssuerProfile | 托管群集的 OIDC 颁发者配置文件。 | ManagedClusterOidcIssuerProfile |
podIdentityProfile | 有关 AAD Pod 标识集成的详细信息,请参阅 使用 AAD Pod 标识。 | ManagedClusterPodIdentityProfile |
privateLinkResources | 与群集关联的专用链接资源。 | PrivateLinkResource[] |
publicNetworkAccess | 允许或拒绝 AKS 的公共网络访问 | “Disabled” “已启用” “SecuredByPerimeter” |
securityProfile | 托管群集的安全配置文件。 | ManagedClusterSecurityProfile |
servicePrincipalProfile | 有关群集用于操作 Azure API 的服务主体标识的信息。 | ManagedClusterServicePrincipalProfile |
storageProfile | 托管群集的存储配置文件。 | ManagedClusterStorageProfile |
windowsProfile | 托管群集中 Windows VM 的配置文件。 | ManagedClusterWindowsProfile |
workloadAutoScalerProfile | 托管群集的工作负荷自动缩放程序配置文件。 | ManagedClusterWorkloadAutoScalerProfile |
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[] |
capacityReservationGroupID | AKS 会将指定的代理池与容量预留组相关联。 | 字符串 |
计数 | 用于托管 docker 容器的代理数(VM)。 允许的值必须在用户池的 0 到 1000(含)范围内,系统池的范围为 1 到 1000(含)。 默认值为 1。 | int |
creationData | 如果使用快照创建/升级节点池,则用于指定源快照 ID 的 CreationData。 | CreationData |
enableAutoScaling | 是否启用自动缩放程序 | bool |
enableCustomCATrust | 如果设置为 true,AKS 会将一个标签添加到节点,指示已启用该功能,并将守护程序集与主机服务一起部署到节点信任存储中,以便从用户提供的 base64 编码证书列表将自定义证书颁发机构同步到节点信任存储中。 默认值为 false。 | 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” |
hostGroupID | 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}。 有关详细信息,请参阅 Azure 专用主机。 | 字符串 |
kubeletConfig | 代理池节点上的 Kubelet 配置。 | KubeletConfig |
kubeletDiskType | 确定 emptyDir 卷、容器运行时数据根目录和 Kubelet 临时存储的位置。 | “OS” “临时” |
linuxOSConfig | Linux 代理节点的 OS 配置。 | LinuxOSConfig |
maxCount | 自动缩放的最大节点数 | int |
maxPods | 可在节点上运行的 Pod 的最大数目。 | int |
messageOfTheDay | 一个 base64 编码的字符串,将在解码后写入 /etc/motd。 这允许自定义 Linux 节点当天的消息。 它不得为 Windows 节点指定。 它必须是静态字符串(即,将打印为原始字符串,而不是作为脚本执行)。 | 字符串 |
minCount | 自动缩放的最小节点数 | int |
模式 | 群集必须随时至少有一个“系统”代理池。 有关代理池限制和最佳做法的其他信息,请参阅:/azure/aks/use-system-pools | “系统” “User” |
名字 | Windows 代理池名称必须为 6 个字符或更少。 | string (必需) 约束: Pattern = ^[a-z][a-z0-9]{0,11}$ |
networkProfile | 代理池的网络相关设置。 | AgentPoolNetworkProfile |
nodeLabels | 要跨代理池中的所有节点保留的节点标签。 | ManagedClusterAgentPoolProfilePropertiesNodeLabels |
nodePublicIPPrefixID | 此格式为:/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} | 字符串 |
nodeTaints | 在节点池创建和缩放期间添加到新节点的污点。 例如,key=value:NoSchedule。 | string[] |
orchestratorVersion | 支持修补程序版本 {major.minor.patch} 和 {major.minor}。 指定 {major.minor} 后,会自动选择最新的受支持修补程序版本。 创建代理池后,使用相同的 {major.minor} 更新代理池不会触发升级,即使有较新的修补程序版本可用也是如此。 最佳做法是,应将 AKS 群集中的所有节点池升级到同一 Kubernetes 版本。 节点池版本必须与控制平面具有相同的主版本。 节点池次要版本必须位于控制平面版本的两个次要版本中。 节点池版本不能大于控制平面版本。 有关详细信息,请参阅 升级节点池。 | 字符串 |
osDiskSizeGB | OS 磁盘大小(以 GB 为单位)用于为主/代理池中的每个计算机指定磁盘大小。 如果指定 0,它将根据指定的 vmSize 应用默认 osDisk 大小。 | int 约束: 最小值 = 0 最大值 = 2048 |
osDiskType | 如果 VM 支持该 VM 并且缓存磁盘大于请求的 OSDiskSizeGB,则默认值为“临时”。 否则,默认为“Managed”。 创建后可能不会更改。 有关详细信息,请参阅 临时 OS。 | “临时” “托管” |
osSKU | 指定代理池使用的 OS SKU。 如果未指定,则默认值为 Ubuntu(如果 OSType=Linux)或 Windows2019(如果 OSType=Windows)。 在 Windows2019 弃用后,默认的 Windows OSSKU 将更改为 Windows2022。 | “CBLMariner” “水手” “Ubuntu” “Windows2019” “Windows2022” |
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} | 字符串 |
windowsProfile | Windows 代理池的特定配置文件。 | AgentPoolWindowsProfile |
workloadRuntime | 确定节点可以运行的工作负荷的类型。 | “KataMshvVmIsolation” “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 |
AgentPoolNetworkProfile
名字 | 描述 | 价值 |
---|---|---|
allowedHostPorts | 允许访问的端口范围。 允许指定的范围重叠。 | PortRange[] |
applicationSecurityGroups | 创建代理池时将关联的应用程序安全组的 ID。 | string[] |
nodePublicIPTags | 实例级公共 IP 的 IPTag。 | IPTag[] |
PortRange
名字 | 描述 | 价值 |
---|---|---|
预示 着 | 范围中包含的最大端口。 它的范围应从 1 到 65535,并且大于或等于 portStart。 | int 约束: 最小值 = 1 最大值 = 65535 |
portStart | 范围中包含的最小端口。 它的范围应从 1 到 65535,并且小于或等于 portEnd。 | int 约束: 最小值 = 1 最大值 = 65535 |
协议 | 端口的网络协议。 | “TCP” “UDP” |
IPTag
名字 | 描述 | 价值 |
---|---|---|
ipTagType | IP 标记类型。 示例:RoutingPreference。 | 字符串 |
标记 | 与公共 IP 关联的 IP 标记的值。 示例:Internet。 | 字符串 |
ManagedClusterAgentPoolProfilePropertiesNodeLabels
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | 字符串 |
PowerState
名字 | 描述 | 价值 |
---|---|---|
法典 | 指示群集是正在运行还是已停止 | “正在运行” “已停止” |
AgentPoolUpgradeSettings
名字 | 描述 | 价值 |
---|---|---|
maxSurge | 这可以设置为整数(例如'5')或百分比(例如'50%')。 如果指定了百分比,则它是升级时代理池大小总数的百分比。 对于百分比,小数节点向上舍入。 如果未指定,则默认值为 1。 有关详细信息,包括最佳做法,请参阅:/azure/aks/upgrade-cluster#customize-node-surge-upgrade | 字符串 |
AgentPoolWindowsProfile
名字 | 描述 | 价值 |
---|---|---|
disableOutboundNat | 默认值为 false。 仅当群集 outboundType 为 NAT 网关且 Windows 代理池未启用节点公共 IP 时,才能禁用出站 NAT。 | bool |
ManagedClusterAPIServerAccessProfile
名字 | 描述 | 价值 |
---|---|---|
authorizedIPRanges | IP 范围以 CIDR 格式指定,例如 137.117.106.88/29。 此功能与使用公共 IP Per Node 的群集或使用基本负载均衡器的群集不兼容。 有关详细信息,请参阅 API 服务器授权 IP 范围。 | string[] |
disableRunCommand | 是否禁用群集的 run 命令。 | bool |
enablePrivateCluster | 有关详细信息,请参阅 创建专用 AKS 群集。 | bool |
enablePrivateClusterPublicFQDN | 是否为专用群集创建其他公共 FQDN。 | bool |
enableVnetIntegration | 是否为群集启用 apiserver vnet 集成。 | bool |
privateDNSZone | 默认值为 System。 有关详细信息,请参阅 配置专用 DNS 区域。 允许的值为“system”和“none”。 | 字符串 |
subnetId | 当:1 时需要用到它。 使用 BYO Vnet 创建新群集;2. 更新现有群集以启用 apiserver vnet 集成。 | 字符串 |
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
名字 | 描述 | 价值 |
---|---|---|
nodeOSUpgradeChannel | 默认值为“非托管”,但可能会更改为 GA 中的 NodeImage 或 SecurityPatch。 | “NodeImage” “None” “SecurityPatch” “非托管” |
upgradeChannel | 有关详细信息,请参阅 设置 AKS 群集自动升级通道。 | “node-image” “none” “patch” “rapid” “稳定” |
ManagedClusterAzureMonitorProfile
名字 | 描述 | 价值 |
---|---|---|
指标 | prometheus 服务加载项的指标配置文件 | ManagedClusterAzureMonitorProfileMetrics |
ManagedClusterAzureMonitorProfileMetrics
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 Prometheus 收集器 | bool (必需) |
kubeStateMetrics | 容器服务群集 prometheus 加载项配置文件的 Kube 状态指标 | ManagedClusterAzureMonitorProfileKubeStateMetrics |
ManagedClusterAzureMonitorProfileKubeStateMetrics
名字 | 描述 | 价值 |
---|---|---|
metricAnnotationsAllowList | 将在资源的标签指标中使用的其他 Kubernetes 标签键的逗号分隔列表。 | 字符串 |
metricLabelsAllowlist | 将在资源的标签指标中使用的 Kubernetes 批注键的逗号分隔列表。 | 字符串 |
GuardrailsProfile
名字 | 描述 | 价值 |
---|---|---|
excludedNamespaces | 从防护检查中排除的命名空间列表 | string[] |
水平 | 要使用的护栏级别。 默认情况下,为除 AKS 通过 systemExcludedNamespaces 排除的命名空间之外的所有命名空间启用 Guardrails | “强制” “关闭” “警告”(必需) |
版本 | 要使用的约束版本 | string (必需) |
ManagedClusterHttpProxyConfig
名字 | 描述 | 价值 |
---|---|---|
httpProxy | 要使用的 HTTP 代理服务器终结点。 | 字符串 |
httpsProxy | 要使用的 HTTPS 代理服务器终结点。 | 字符串 |
noProxy | 不应通过代理的终结点。 | string[] |
trustedCa | 用于连接到代理服务器的替代 CA 证书。 | 字符串 |
ManagedClusterPropertiesIdentityProfile
名字 | 描述 | 价值 |
---|---|---|
{自定义属性} | UserAssignedIdentity |
UserAssignedIdentity
名字 | 描述 | 价值 |
---|---|---|
clientId | 用户分配标识的客户端 ID。 | 字符串 |
objectId | 用户分配标识的对象 ID。 | 字符串 |
resourceId | 用户分配标识的资源 ID。 | 字符串 |
ManagedClusterIngressProfile
名字 | 描述 | 价值 |
---|---|---|
webAppRouting | 入口配置文件的 Web 应用路由设置。 | ManagedClusterIngressProfileWebAppRouting |
ManagedClusterIngressProfileWebAppRouting
名字 | 描述 | 价值 |
---|---|---|
dnsZoneResourceId | 要与 Web 应用关联的 DNS 区域的资源 ID。 仅在启用 Web 应用路由时使用。 | 字符串 |
启用 | 是否启用 Web 应用路由。 | bool |
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]))?$ |
ebpfDataplane | 用于生成 Kubernetes 网络的 eBPF 数据平面。 | “cilium” |
ipFamilies | IP 系列用于确定单堆栈或双堆栈群集。 对于单堆栈,预期值为 IPv4。 对于双堆栈,预期值为 IPv4 和 IPv6。 | 包含任一项的字符串数组: “IPv4” “IPv6” |
kubeProxyConfig | 保留 kube-proxy 的配置自定义。 未定义的任何值都将使用 kube-proxy 默认行为。 请参阅 https://v{version}.docs.kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/ {version} 由 {major version}-{minor version} 字符串表示的位置。 Kubernetes 版本 1.23 将是“1-23”。 |
ContainerServiceNetworkProfileKubeProxyConfig |
loadBalancerProfile | 群集负载均衡器的配置文件。 | ManagedClusterLoadBalancerProfile |
loadBalancerSku | 默认值为“standard”。 有关负载均衡器 SKU 之间的差异的详细信息,请参阅 Azure 负载均衡器 SKU。 | “basic” “standard” |
natGatewayProfile | 群集 NAT 网关的配置文件。 | ManagedClusterNATGatewayProfile |
networkMode | 如果 networkPlugin 不是“azure”,则无法指定此项。 | “bridge” “transparent” |
networkPlugin | 用于生成 Kubernetes 网络的网络插件。 | “azure” “kubenet” “none” |
networkPluginMode | 用于生成 Kubernetes 网络的网络插件模式。 | “覆盖” |
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[] |
ContainerServiceNetworkProfileKubeProxyConfig
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否在群集上的 kube-proxy 上启用(如果没有“kubeProxyConfig”存在),则默认情况下在 AKS 中启用 kube-proxy,而无需进行这些自定义。 | bool |
ipvsConfig | 保存 IPVS 的配置自定义。 仅当“mode”设置为“IPVS”时,才能指定。 | ContainerServiceNetworkProfileKubeProxyConfigIpvsCon... |
模式 | 指定要使用的代理模式(“IPTABLES”或“IPVS”) | “IPTABLES” “IPVS” |
ContainerServiceNetworkProfileKubeProxyConfigIpvsCon...
名字 | 描述 | 价值 |
---|---|---|
调度 | IPVS 计划程序,有关详细信息,请参阅 http://www.linuxvirtualserver.org/docs/scheduling.html. |
“LeastConnection” “RoundRobin” |
tcpFinTimeoutSeconds | 接收 FIN 后用于 IPVS TCP 会话的超时值(以秒为单位)。 必须是正整数值。 | int |
tcpTimeoutSeconds | 用于空闲 IPVS TCP 会话的超时值(以秒为单位)。 必须是正整数值。 | int |
udpTimeoutSeconds | 用于 IPVS UDP 数据包的超时值(以秒为单位)。 必须是正整数值。 | int |
ManagedClusterLoadBalancerProfile
名字 | 描述 | 价值 |
---|---|---|
allocatedOutboundPorts | 每个 VM 分配的 SNAT 端口的所需数量。 允许的值为 0 到 64000(含)。 默认值为 0,这会导致 Azure 动态分配端口。 | int 约束: 最小值 = 0 最大值 = 64000 |
backendPoolType | 托管入站负载均衡器 BackendPool 的类型。 | “NodeIP” “NodeIPConfiguration” |
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 |
ManagedClusterNodeResourceGroupProfile
名字 | 描述 | 价值 |
---|---|---|
restrictionLevel | 应用于群集节点资源组的限制级别 | “ReadOnly” “不受限制” |
ManagedClusterOidcIssuerProfile
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 OIDC 颁发者。 | bool |
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
名字 | 描述 | 价值 |
---|---|---|
azureKeyVaultKms | Azure Key Vault 安全配置文件的密钥管理服务 设置。 | AzureKeyVaultKms |
customCATrustCertificates | 最多包含 10 个 base64 编码 CA 的列表,这些 CA 将添加到启用了自定义 CA 信任功能的节点上的信任存储。 有关详细信息,请参阅 自定义 CA 信任证书 | any[] 约束: 最大长度 = 10 |
辩护人 | Microsoft安全配置文件的 Defender 设置。 | ManagedClusterSecurityProfileDefender |
imageCleaner | 安全配置文件的 ImageCleaner 设置。 | ManagedClusterSecurityProfileImageCleaner |
nodeRestriction | 节点限制 安全配置文件的设置。 | ManagedClusterSecurityProfileNodeRestriction |
workloadIdentity | 安全配置文件的工作负荷标识 设置。 | ManagedClusterSecurityProfileWorkloadIdentity |
AzureKeyVaultKms
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 Azure Key Vault 密钥管理服务。 默认值为 false。 | bool |
keyId | Azure Key Vault 密钥的标识符。 有关详细信息,请参阅 密钥标识符格式。 启用 Azure Key Vault 密钥管理服务时,此字段是必需的,并且必须是有效的密钥标识符。 禁用 Azure Key Vault 密钥管理服务时,将字段留空。 | 字符串 |
keyVaultNetworkAccess | 密钥保管库的网络访问。 可能的值为 Public 和 Private 。
Public 意味着 Key Vault 允许从所有网络进行公共访问。
Private 意味着密钥保管库禁用公共访问并启用专用链接。 默认值为 Public 。 |
“Private” “Public” |
keyVaultResourceId | 密钥保管库的资源 ID。 当 keyVaultNetworkAccess Private 时,此字段是必需的,并且必须是有效的资源 ID。 当 keyVaultNetworkAccess Public 时,请将字段留空。 |
字符串 |
ManagedClusterSecurityProfileDefender
名字 | 描述 | 价值 |
---|---|---|
logAnalyticsWorkspaceResourceId | 要与 Microsoft Defender 关联的 Log Analytics 工作区的资源 ID。 启用Microsoft Defender 后,此字段是必需的,并且必须是有效的工作区资源 ID。 禁用Microsoft Defender 时,请将字段留空。 | 字符串 |
securityMonitoring | Microsoft安全配置文件的云设置的 Defender 威胁检测。 | ManagedClusterSecurityProfileDefenderSecurityMonitor... |
ManagedClusterSecurityProfileDefenderSecurityMonitor...
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 Defender 威胁检测 | bool |
ManagedClusterSecurityProfileImageCleaner
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否在 AKS 群集上启用 ImageCleaner。 | bool |
intervalHours | ImageCleaner 扫描间隔。 | int |
ManagedClusterSecurityProfileNodeRestriction
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用节点限制 | bool |
ManagedClusterSecurityProfileWorkloadIdentity
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用工作负荷标识 | bool |
ManagedClusterServicePrincipalProfile
名字 | 描述 | 价值 |
---|---|---|
clientId | 服务主体的 ID。 | string (必需) |
秘密 | 以纯文本形式与服务主体关联的机密密码。 | 字符串 |
ManagedClusterStorageProfile
名字 | 描述 | 价值 |
---|---|---|
blobCSIDriver | 存储配置文件的 AzureBlob CSI 驱动程序设置。 | ManagedClusterStorageProfileBlobCSIDriver |
diskCSIDriver | 存储配置文件的 AzureDisk CSI 驱动程序设置。 | ManagedClusterStorageProfileDiskCSIDriver |
fileCSIDriver | 存储配置文件的 AzureFile CSI 驱动程序设置。 | ManagedClusterStorageProfileFileCSIDriver |
snapshotController | 存储配置文件的快照控制器设置。 | ManagedClusterStorageProfileSnapshotController |
ManagedClusterStorageProfileBlobCSIDriver
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 AzureBlob CSI 驱动程序。 默认值为 false。 | bool |
ManagedClusterStorageProfileDiskCSIDriver
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 AzureDisk CSI 驱动程序。 默认值为 true。 | bool |
版本 | AzureDisk CSI 驱动程序的版本。 默认值为 v1。 | 字符串 |
ManagedClusterStorageProfileFileCSIDriver
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 AzureFile CSI 驱动程序。 默认值为 true。 | bool |
ManagedClusterStorageProfileSnapshotController
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用快照控制器。 默认值为 true。 | bool |
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 服务器,则将其设置为空。 |
字符串 |
ManagedClusterWorkloadAutoScalerProfile
名字 | 描述 | 价值 |
---|---|---|
keda | KEDA(Kubernetes 事件驱动的自动缩放)设置,用于工作负荷自动缩放程序配置文件。 | ManagedClusterWorkloadAutoScalerProfileKeda |
verticalPodAutoscaler | ManagedClusterWorkloadAutoScalerProfileVerticalPodAu... |
ManagedClusterWorkloadAutoScalerProfileKeda
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否启用 KEDA。 | bool (必需) |
ManagedClusterWorkloadAutoScalerProfileVerticalPodAu...
名字 | 描述 | 价值 |
---|---|---|
controlledValues | 控制哪些资源值自动缩放程序将更改。 默认值为 RequestsAndLimits。 | “RequestsAndLimits” “RequestsOnly”(必需) |
启用 | 是否启用 VPA。 默认值为 false。 | bool (必需) |
updateMode | 每个更新模式级别都是较低级别的超集。 关闭<初始<重新创建<=Auto。例如:如果 UpdateMode 为 Initial,则意味着 VPA 在 VerticalPodAutoscaler 自定义资源(从 UpdateMode Off)中设置建议的资源,并分配 Pod 创建上的资源(从 Initial)。 默认值为 Off。 | “Auto” “Initial” “关闭” “重新创建”(必需) |
ManagedClusterSKU
名字 | 描述 | 价值 |
---|---|---|
名字 | 托管群集 SKU 的名称。 | “Basic” |
层 | 如果未指定,则默认值为“Free”。 有关详细信息,请参阅 运行时间 SLA。 | “免费” “付费” |