Microsoft.ContainerService managedClusters 2022-04-01
- más reciente
- 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
Definición de recursos de Bicep
El tipo de recurso managedClusters se puede implementar con operaciones destinadas a:
- grupos de recursos: consulte comandos de implementación de grupos de recursos
Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.
Observaciones
Para obtener información sobre los complementos disponibles, consulte complementos, extensiones y otras integraciones con Azure Kubernetes Service.
Formato de recurso
Para crear un recurso Microsoft.ContainerService/managedClusters, agregue el siguiente bicep a la plantilla.
resource symbolicname 'Microsoft.ContainerService/managedClusters@2022-04-01' = {
name: 'string'
location: 'string'
tags: {
tagName1: 'tagValue1'
tagName2: 'tagValue2'
}
sku: {
name: 'Basic'
tier: 'string'
}
extendedLocation: {
name: 'string'
type: 'EdgeZone'
}
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
properties: {
aadProfile: {
adminGroupObjectIDs: [
'string'
]
clientAppID: 'string'
enableAzureRBAC: bool
managed: bool
serverAppID: 'string'
serverAppSecret: 'string'
tenantID: 'string'
}
addonProfiles: {
{customized property}: {
config: {
{customized property}: 'string'
}
enabled: bool
}
}
agentPoolProfiles: [
{
availabilityZones: [
'string'
]
count: int
creationData: {
sourceResourceId: 'string'
}
enableAutoScaling: bool
enableEncryptionAtHost: bool
enableFIPS: bool
enableNodePublicIP: bool
enableUltraSSD: bool
gpuInstanceProfile: 'string'
kubeletConfig: {
allowedUnsafeSysctls: [
'string'
]
containerLogMaxFiles: int
containerLogMaxSizeMB: int
cpuCfsQuota: bool
cpuCfsQuotaPeriod: 'string'
cpuManagerPolicy: 'string'
failSwapOn: bool
imageGcHighThreshold: int
imageGcLowThreshold: int
podMaxPids: int
topologyManagerPolicy: 'string'
}
kubeletDiskType: 'string'
linuxOSConfig: {
swapFileSizeMB: int
sysctls: {
fsAioMaxNr: int
fsFileMax: int
fsInotifyMaxUserWatches: int
fsNrOpen: int
kernelThreadsMax: int
netCoreNetdevMaxBacklog: int
netCoreOptmemMax: int
netCoreRmemDefault: int
netCoreRmemMax: int
netCoreSomaxconn: int
netCoreWmemDefault: int
netCoreWmemMax: int
netIpv4IpLocalPortRange: 'string'
netIpv4NeighDefaultGcThresh1: int
netIpv4NeighDefaultGcThresh2: int
netIpv4NeighDefaultGcThresh3: int
netIpv4TcpFinTimeout: int
netIpv4TcpkeepaliveIntvl: int
netIpv4TcpKeepaliveProbes: int
netIpv4TcpKeepaliveTime: int
netIpv4TcpMaxSynBacklog: int
netIpv4TcpMaxTwBuckets: int
netIpv4TcpTwReuse: bool
netNetfilterNfConntrackBuckets: int
netNetfilterNfConntrackMax: int
vmMaxMapCount: int
vmSwappiness: int
vmVfsCachePressure: int
}
transparentHugePageDefrag: 'string'
transparentHugePageEnabled: 'string'
}
maxCount: int
maxPods: int
minCount: int
mode: 'string'
name: 'string'
nodeLabels: {
{customized property}: 'string'
}
nodePublicIPPrefixID: 'string'
nodeTaints: [
'string'
]
orchestratorVersion: 'string'
osDiskSizeGB: int
osDiskType: 'string'
osSKU: 'string'
osType: 'string'
podSubnetID: 'string'
powerState: {
code: 'string'
}
proximityPlacementGroupID: 'string'
scaleDownMode: 'string'
scaleSetEvictionPolicy: 'string'
scaleSetPriority: 'string'
spotMaxPrice: json('decimal-as-string')
tags: {}
type: 'string'
upgradeSettings: {
maxSurge: 'string'
}
vmSize: 'string'
vnetSubnetID: 'string'
workloadRuntime: 'string'
}
]
apiServerAccessProfile: {
authorizedIPRanges: [
'string'
]
disableRunCommand: bool
enablePrivateCluster: bool
enablePrivateClusterPublicFQDN: bool
privateDNSZone: 'string'
}
autoScalerProfile: {
'balance-similar-node-groups': 'string'
expander: 'string'
'max-empty-bulk-delete': 'string'
'max-graceful-termination-sec': 'string'
'max-node-provision-time': 'string'
'max-total-unready-percentage': 'string'
'new-pod-scale-up-delay': 'string'
'ok-total-unready-count': 'string'
'scale-down-delay-after-add': 'string'
'scale-down-delay-after-delete': 'string'
'scale-down-delay-after-failure': 'string'
'scale-down-unneeded-time': 'string'
'scale-down-unready-time': 'string'
'scale-down-utilization-threshold': 'string'
'scan-interval': 'string'
'skip-nodes-with-local-storage': 'string'
'skip-nodes-with-system-pods': 'string'
}
autoUpgradeProfile: {
upgradeChannel: 'string'
}
disableLocalAccounts: bool
diskEncryptionSetID: 'string'
dnsPrefix: 'string'
enablePodSecurityPolicy: bool
enableRBAC: bool
fqdnSubdomain: 'string'
httpProxyConfig: {
httpProxy: 'string'
httpsProxy: 'string'
noProxy: [
'string'
]
trustedCa: 'string'
}
identityProfile: {
{customized property}: {
clientId: 'string'
objectId: 'string'
resourceId: 'string'
}
}
kubernetesVersion: 'string'
linuxProfile: {
adminUsername: 'string'
ssh: {
publicKeys: [
{
keyData: 'string'
}
]
}
}
networkProfile: {
dnsServiceIP: 'string'
dockerBridgeCidr: 'string'
ipFamilies: [
'string'
]
loadBalancerProfile: {
allocatedOutboundPorts: int
effectiveOutboundIPs: [
{
id: 'string'
}
]
enableMultipleStandardLoadBalancers: bool
idleTimeoutInMinutes: int
managedOutboundIPs: {
count: int
countIPv6: int
}
outboundIPPrefixes: {
publicIPPrefixes: [
{
id: 'string'
}
]
}
outboundIPs: {
publicIPs: [
{
id: 'string'
}
]
}
}
loadBalancerSku: 'string'
natGatewayProfile: {
effectiveOutboundIPs: [
{
id: 'string'
}
]
idleTimeoutInMinutes: int
managedOutboundIPProfile: {
count: int
}
}
networkMode: 'string'
networkPlugin: 'string'
networkPolicy: 'string'
outboundType: 'string'
podCidr: 'string'
podCidrs: [
'string'
]
serviceCidr: 'string'
serviceCidrs: [
'string'
]
}
nodeResourceGroup: 'string'
podIdentityProfile: {
allowNetworkPluginKubenet: bool
enabled: bool
userAssignedIdentities: [
{
bindingSelector: 'string'
identity: {
clientId: 'string'
objectId: 'string'
resourceId: 'string'
}
name: 'string'
namespace: 'string'
}
]
userAssignedIdentityExceptions: [
{
name: 'string'
namespace: 'string'
podLabels: {
{customized property}: 'string'
}
}
]
}
privateLinkResources: [
{
groupId: 'string'
id: 'string'
name: 'string'
requiredMembers: [
'string'
]
type: 'string'
}
]
publicNetworkAccess: 'string'
securityProfile: {
azureDefender: {
enabled: bool
logAnalyticsWorkspaceResourceId: 'string'
}
}
servicePrincipalProfile: {
clientId: 'string'
secret: 'string'
}
storageProfile: {
diskCSIDriver: {
enabled: bool
}
fileCSIDriver: {
enabled: bool
}
snapshotController: {
enabled: bool
}
}
windowsProfile: {
adminPassword: 'string'
adminUsername: 'string'
enableCSIProxy: bool
gmsaProfile: {
dnsServer: 'string'
enabled: bool
rootDomainName: 'string'
}
licenseType: 'string'
}
}
}
Valores de propiedad
managedClusters
Nombre | Descripción | Valor |
---|---|---|
nombre | El nombre del recurso | string (obligatorio) Límite de caracteres: 1-63 Caracteres válidos: Caracteres alfanuméricos, caracteres de subrayado y guiones. Comience y termine con alfanumérico. |
ubicación | Ubicación geográfica donde reside el recurso | string (obligatorio) |
Etiquetas | Etiquetas de recursos. | Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas |
Sku | SKU del clúster administrado. | managedClusterSKU de |
extendedLocation | Ubicación extendida de la máquina virtual. | ExtendedLocation |
identidad | Identidad del clúster administrado, si está configurada. | managedClusterIdentity de |
Propiedades | Propiedades de un clúster administrado. | managedClusterProperties |
ExtendedLocation
Nombre | Descripción | Valor |
---|---|---|
nombre | Nombre de la ubicación extendida. | cuerda |
tipo | Tipo de la ubicación extendida. | 'EdgeZone' |
ManagedClusterIdentity
Nombre | Descripción | Valor |
---|---|---|
tipo | Para obtener más información, consulte usar identidades administradas en AKS. | 'Ninguno' 'SystemAssigned' 'UserAssigned' |
userAssignedIdentities | Las claves deben ser identificadores de recursos de ARM con el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. | managedClusterIdentityUserAssignedIdentities |
ManagedClusterIdentityUserAssignedIdentities
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | managedServiceIdentityUserAssignedIdentitiesValue |
ManagedServiceIdentityUserAssignedIdentitiesValue
Este objeto no contiene ninguna propiedad que se establezca durante la implementación. Todas las propiedades son ReadOnly.
ManagedClusterProperties
Nombre | Descripción | Valor |
---|---|---|
aadProfile | Configuración de Azure Active Directory. | ManagedClusterAADProfile |
addonProfiles | Perfil del complemento de clúster administrado. | managedClusterPropertiesAddonProfiles |
agentPoolProfiles | Propiedades del grupo de agentes. | managedClusterAgentPoolProfile [] |
apiServerAccessProfile | Perfil de acceso para el servidor de API de clúster administrado. | ManagedClusterAPIServerAccessProfile |
autoScalerProfile | Parámetros que se van a aplicar al escalador automático del clúster cuando está habilitado | managedClusterPropertiesAutoScalerProfile |
autoUpgradeProfile | Configuración de actualización automática. | ManagedClusterAutoUpgradeProfile |
disableLocalAccounts | Si se establece en true, la obtención de credenciales estáticas se deshabilitará para este clúster. Esto solo se debe usar en clústeres administrados habilitados para AAD. Para obtener más información, consulte deshabilitar las cuentas locales. | Bool |
diskEncryptionSetID | Este es el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}' | cuerda |
dnsPrefix | No se puede actualizar una vez creado el clúster administrado. | cuerda |
enablePodSecurityPolicy | (EN DESUSO) Indica si se va a habilitar la directiva de seguridad de pods de Kubernetes (versión preliminar). Esta característica se establece para su eliminación el 15 de octubre de 2020. Obtenga más información en aka.ms/aks/azpodpolicy. | Bool |
enableRBAC | Si se va a habilitar Kubernetes Role-Based Access Control. | Bool |
fqdnSubdomain | No se puede actualizar una vez creado el clúster administrado. | cuerda |
httpProxyConfig | Configuraciones para aprovisionar el clúster con servidores proxy HTTP. | managedClusterHttpProxyConfig |
identityProfile | Identidades asociadas al clúster. | managedClusterPropertiesIdentityProfile |
kubernetesVersion | Se admiten ambas versiones de revisión {major.minor.patch} (por ejemplo, 1.20.13) y {major.minor} (por ejemplo, 1.20). Cuando se especifica {major.minor}, se elige automáticamente la versión de revisión de disponibilidad general compatible más reciente. La actualización del clúster con el mismo {major.minor} una vez creado (por ejemplo, 1.14.x -} 1.14) no desencadenará una actualización, incluso si hay disponible una versión de revisión más reciente. Al actualizar un clúster de AKS compatible, no se pueden omitir las versiones secundarias de Kubernetes. Todas las actualizaciones deben realizarse secuencialmente por número de versión principal. Por ejemplo, se permiten actualizaciones entre 1.14.x -} 1.15.x o 1.15.x -} 1.16.x, pero no se permite 1.14.x -} 1.16.x. Consulte actualizar un clúster de AKS para obtener más información. | cuerda |
linuxProfile | El perfil de las máquinas virtuales Linux en el clúster administrado. | ContainerServiceLinuxProfile |
networkProfile | Perfil de configuración de red. | ContainerServiceNetworkProfile |
nodeResourceGroup | Nombre del grupo de recursos que contiene los nodos del grupo de agentes. | cuerda |
podIdentityProfile | Consulte usar de identidad de pod de AAD para obtener más información sobre la integración de identidades de pod de AAD. | ManagedClusterPodIdentityProfile |
privateLinkResources | Recursos de Private Link asociados al clúster. | PrivateLinkResource [] |
publicNetworkAccess | Permitir o denegar el acceso a la red pública para AKS | 'Deshabilitado' 'Habilitado' |
securityProfile | Perfil de seguridad para el clúster administrado. | ManagedClusterSecurityProfile |
servicePrincipalProfile | Información sobre una identidad de entidad de servicio para el clúster que se va a usar para manipular las API de Azure. | ManagedClusterServicePrincipalProfile |
storageProfile | Perfil de almacenamiento para el clúster administrado. | ManagedClusterStorageProfile |
windowsProfile | El perfil de las máquinas virtuales Windows en el clúster administrado. | ManagedClusterWindowsProfile |
ManagedClusterAADProfile
Nombre | Descripción | Valor |
---|---|---|
adminGroupObjectIDs | Lista de identificadores de objeto de grupo de AAD que tendrán el rol de administrador del clúster. | string[] |
clientAppID | Identificador de aplicación de AAD cliente. | cuerda |
enableAzureRBAC | Si se habilita RBAC de Azure para la autorización de Kubernetes. | Bool |
Administrado | Si se va a habilitar AAD administrado. | Bool |
serverAppID | Identificador de aplicación de AAD del servidor. | cuerda |
serverAppSecret | Secreto de aplicación de AAD del servidor. | cuerda |
tenantID | Identificador de inquilino de AAD que se va a usar para la autenticación. Si no se especifica, usará el inquilino de la suscripción de implementación. | cuerda |
ManagedClusterPropertiesAddonProfiles
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | ManagedClusterAddonProfile |
ManagedClusterAddonProfile
Nombre | Descripción | Valor |
---|---|---|
config | Pares clave-valor para configurar un complemento. | managedClusterAddonProfileConfig |
Habilitado | Indica si el complemento está habilitado o no. | bool (obligatorio) |
ManagedClusterAddonProfileConfig
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | cuerda |
ManagedClusterAgentPoolProfile
Nombre | Descripción | Valor |
---|---|---|
availabilityZones | Lista de zonas de disponibilidad que se van a usar para los nodos. Esto solo se puede especificar si la propiedad AgentPoolType es "VirtualMachineScaleSets". | string[] |
contar | Número de agentes (VM) para hospedar contenedores de Docker. Los valores permitidos deben estar comprendidos entre 0 y 1000 (ambos incluidos) para los grupos de usuarios y en el intervalo de 1 a 1000 (ambos incluidos) para los grupos del sistema. El valor predeterminado es 1. | Int |
creationData | CreationData que se usará para especificar el identificador de instantánea de origen si el grupo de nodos se creará o actualizará mediante una instantánea. | CreationData |
enableAutoScaling | Si se va a habilitar el escalador automático | Bool |
enableEncryptionAtHost | Esto solo se admite en determinados tamaños de máquina virtual y en determinadas regiones de Azure. Para más información, consulte : /azure/aks/enable-host-encryption | Bool |
enableFIPS | Consulte Agregar un grupo de nodos habilitado para FIPS para obtener más información. | Bool |
enableNodePublicIP | Algunos escenarios pueden requerir que los nodos de un grupo de nodos reciban sus propias direcciones IP públicas dedicadas. Un escenario común es para las cargas de trabajo de juegos, donde una consola debe realizar una conexión directa a una máquina virtual en la nube para minimizar los saltos. Para obtener más información, consulte asignación de una dirección IP pública por nodo. El valor predeterminado es false. | Bool |
enableUltraSSD | Si se va a habilitar UltraSSD | Bool |
gpuInstanceProfile | GPUInstanceProfile que se usará para especificar el perfil de instancia de MIG de GPU para la SKU de máquina virtual de GPU compatible. | 'MIG1g' 'MIG2g' 'MIG3g' 'MIG4g' 'MIG7g' |
kubeletConfig | Configuración de Kubelet en los nodos del grupo de agentes. | kubeletConfig |
kubeletDiskType | Determina la ubicación de volúmenes emptyDir, raíz de datos del entorno de ejecución del contenedor y almacenamiento efímero de Kubelet. | 'SO' 'Temporal' |
linuxOSConfig | Configuración del sistema operativo de los nodos del agente de Linux. | LinuxOSConfig |
maxCount | Número máximo de nodos para el escalado automático | Int |
maxPods | Número máximo de pods que se pueden ejecutar en un nodo. | Int |
minCount | El número mínimo de nodos para el escalado automático | Int |
modo | Un clúster debe tener al menos un grupo de agentes "System" en todo momento. Para más información sobre las restricciones y los procedimientos recomendados del grupo de agentes, consulte: /azure/aks/use-system-pools. | 'System' "Usuario" |
nombre | Los nombres del grupo de agentes de Windows deben tener 6 caracteres o menos. | string (obligatorio) Restricciones: Patrón = ^[a-z][a-z0-9]{0,11}$ |
nodeLabels | Las etiquetas de nodo que se conservarán en todos los nodos del grupo de agentes. | managedClusterAgentPoolProfilePropertiesNodeLabels |
nodePublicIPPrefixID | Este es el formato: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} | cuerda |
nodeTaints | Los taints agregados a los nuevos nodos durante la creación y escala del grupo de nodos. Por ejemplo, key=value:NoSchedule. | string[] |
orchestratorVersion | Se admiten ambas versiones de revisión {major.minor.patch} (por ejemplo, 1.20.13) y {major.minor} (por ejemplo, 1.20). Cuando se especifica {major.minor}, se elige automáticamente la versión de revisión de disponibilidad general compatible más reciente. La actualización del clúster con el mismo {major.minor} una vez creado (por ejemplo, 1.14.x -} 1.14) no desencadenará una actualización, incluso si hay disponible una versión de revisión más reciente. Como procedimiento recomendado, debe actualizar todos los grupos de nodos de un clúster de AKS a la misma versión de Kubernetes. La versión del grupo de nodos debe tener la misma versión principal que el plano de control. La versión secundaria del grupo de nodos debe estar dentro de dos versiones secundarias de la versión del plano de control. La versión del grupo de nodos no puede ser mayor que la versión del plano de control. Para obtener más información, consulte actualizar un grupo de nodos. | cuerda |
osDiskSizeGB | Tamaño del disco del sistema operativo en GB que se va a usar para especificar el tamaño del disco para cada máquina del grupo de servidores maestros o agentes. Si especifica 0, se aplicará el tamaño predeterminado de osDisk según el valor de vmSize especificado. | Int Restricciones: Valor mínimo = 0 Valor máximo = 2048 |
osDiskType | El valor predeterminado es "Efímero" si la máquina virtual la admite y tiene un disco de caché mayor que el OSDiskSizeGB solicitado. De lo contrario, el valor predeterminado es "Administrado". Es posible que no se cambie después de la creación. Para obtener más información, consulte del sistema operativo efímero. | 'Efímero' "Administrado" |
osSKU | Especifica una SKU del sistema operativo. Este valor no se debe especificar si OSType es Windows. | 'CBLMariner' 'Ubuntu' |
osType | Tipo de sistema operativo. El valor predeterminado es Linux. | "Linux" 'Windows' |
podSubnetID | Si se omite, las direcciones IP de pod se asignan estáticamente en la subred del nodo (consulte vnetSubnetID para obtener más detalles). Este es el formato: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} | cuerda |
powerState | Cuando se crea por primera vez un grupo de agentes, se ejecuta inicialmente. El grupo de agentes se puede detener estableciendo este campo en Detenido. Un grupo de agentes detenido detiene todas sus máquinas virtuales y no acumula cargos de facturación. Un grupo de agentes solo se puede detener si se está ejecutando y el estado de aprovisionamiento es Correcto | powerState |
proximityPlacementGroupID | Identificador del grupo de selección de ubicación de proximidad. | cuerda |
scaleDownMode | Esto también afecta al comportamiento del escalador automático del clúster. Si no se especifica, el valor predeterminado es Eliminar. | 'Desasignar' 'Eliminar' |
scaleSetEvictionPolicy | No se puede especificar a menos que scaleSetPriority sea "Spot". Si no se especifica, el valor predeterminado es "Delete". | 'Desasignar' 'Eliminar' |
scaleSetPriority | Prioridad del conjunto de escalado de máquinas virtuales. Si no se especifica, el valor predeterminado es "Regular". | 'Regular' 'Spot' |
spotMaxPrice | Los valores posibles son cualquier valor decimal mayor que cero o -1 que indica la voluntad de pagar cualquier precio a petición. Para más información sobre los precios puntuales, consulte |
int o json decimal |
Etiquetas | Etiquetas que se van a conservar en el conjunto de escalado de máquinas virtuales del grupo de agentes. | objeto |
tipo | Tipo de grupo de agentes. | 'AvailabilitySet' 'VirtualMachineScaleSets' |
upgradeSettings | Configuración para actualizar el grupo de agentes | AgentPoolUpgradeSettings |
vmSize | La disponibilidad del tamaño de máquina virtual varía según la región. Si un nodo contiene recursos de proceso insuficientes (memoria, cpu, etcetera) podría no ejecutarse correctamente. Para más información sobre los tamaños de máquina virtual restringidos, consulte: /azure/aks/quotas-skus-regions | cuerda |
vnetSubnetID | Si no se especifica, se generará y usará una red virtual y una subred. Si no se especifica ningún podSubnetID, esto se aplica a nodos y pods; de lo contrario, se aplica solo a los nodos. Este es el formato: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} | cuerda |
workloadRuntime | Determina el tipo de carga de trabajo que puede ejecutar un nodo. | 'OCIContainer' 'WasmWasi' |
CreationData
Nombre | Descripción | Valor |
---|---|---|
sourceResourceId | Este es el identificador de ARM del objeto de origen que se va a usar para crear el objeto de destino. | cuerda |
KubeletConfig
Nombre | Descripción | Valor |
---|---|---|
allowedUnsafeSysctls | Lista permitida de sysctls no seguros o patrones sysctl no seguros (que terminan en * ). |
string[] |
containerLogMaxFiles | Número máximo de archivos de registro de contenedor que pueden estar presentes para un contenedor. El número debe ser ≥ 2. | Int Restricciones: Valor mínimo = 2 |
containerLogMaxSizeMB | Tamaño máximo (por ejemplo, 10Mi) del archivo de registro de contenedor antes de girarlo. | Int |
cpuCfsQuota | El valor predeterminado es true. | Bool |
cpuCfsQuotaPeriod | El valor predeterminado es "100ms". Los valores válidos son una secuencia de números decimales con una fracción opcional y un sufijo de unidad. Por ejemplo: "300 ms", "2h45m". Las unidades admitidas son "ns", "us", "ms", "s", "m" y "h". | cuerda |
cpuManagerPolicy | El valor predeterminado es "none". Consulte directivas de administración de CPU de Kubernetes para obtener más información. Los valores permitidos son "none" y "static". | cuerda |
failSwapOn | Si se establece en true, se producirá un error al iniciar Kubelet si el intercambio está habilitado en el nodo. | Bool |
imageGcHighThreshold | Para deshabilitar la recolección de elementos no utilizados de imagen, establezca en 100. El valor predeterminado es 85% | Int |
imageGcLowThreshold | Esto no se puede establecer más alto que imageGcHighThreshold. El valor predeterminado es 80% | Int |
podMaxPids | Número máximo de procesos por pod. | Int |
topologyManagerPolicy | Para obtener más información, consulte administrador de topologías de Kubernetes. El valor predeterminado es "none". Los valores permitidos son "none", "best-effort", "restricted" y "single-numa-node". | cuerda |
LinuxOSConfig
SysctlConfig
Nombre | Descripción | Valor |
---|---|---|
fsAioMaxNr | Configuración de Sysctl fs.aio-max-nr. | Int |
fsFileMax | Configuración de Sysctl fs.file-max. | Int |
fsInotifyMaxUserWatches | Configuración de Sysctl fs.inotify.max_user_watches. | Int |
fsNrOpen | Configuración de Sysctl fs.nr_open. | Int |
kernelThreadsMax | Configuración de Sysctl kernel.threads-max. | Int |
netCoreNetdevMaxBacklog | Configuración de Sysctl net.core.netdev_max_backlog. | Int |
netCoreOptmemMax | Configuración de Sysctl net.core.optmem_max. | Int |
netCoreRmemDefault | Configuración de Sysctl net.core.rmem_default. | Int |
netCoreRmemMax | Configuración de Sysctl net.core.rmem_max. | Int |
netCoreSomaxconn | Configuración de Sysctl net.core.somaxconn. | Int |
netCoreWmemDefault | Configuración de Sysctl net.core.wmem_default. | Int |
netCoreWmemMax | Configuración de Sysctl net.core.wmem_max. | Int |
netIpv4IpLocalPortRange | Configuración de Sysctl net.ipv4.ip_local_port_range. | cuerda |
netIpv4NeighDefaultGcThresh1 | Configuración de Sysctl net.ipv4.neigh.default.gc_thresh1. | Int |
netIpv4NeighDefaultGcThresh2 | Configuración de Sysctl net.ipv4.neigh.default.gc_thresh2. | Int |
netIpv4NeighDefaultGcThresh3 | Configuración de Sysctl net.ipv4.neigh.default.gc_thresh3. | Int |
netIpv4TcpFinTimeout | Configuración de Sysctl net.ipv4.tcp_fin_timeout. | Int |
netIpv4TcpkeepaliveIntvl | Configuración de Sysctl net.ipv4.tcp_keepalive_intvl. | Int |
netIpv4TcpKeepaliveProbes | Configuración de Sysctl net.ipv4.tcp_keepalive_probes. | Int |
netIpv4TcpKeepaliveTime | Configuración de Sysctl net.ipv4.tcp_keepalive_time. | Int |
netIpv4TcpMaxSynBacklog | Configuración de Sysctl net.ipv4.tcp_max_syn_backlog. | Int |
netIpv4TcpMaxTwBuckets | Configuración de Sysctl net.ipv4.tcp_max_tw_buckets. | Int |
netIpv4TcpTwReuse | Configuración de Sysctl net.ipv4.tcp_tw_reuse. | Bool |
netNetfilterNfConntrackBuckets | Configuración de Sysctl net.netfilter.nf_conntrack_buckets. | Int |
netNetfilterNfConntrackMax | Configuración de Sysctl net.netfilter.nf_conntrack_max. | Int |
vmMaxMapCount | Configuración de Sysctl vm.max_map_count. | Int |
vmSwappiness | Configuración de Sysctl vm.swappiness. | Int |
vmVfsCachePressure | Configuración de Sysctl vm.vfs_cache_pressure. | Int |
ManagedClusterAgentPoolProfilePropertiesNodeLabels
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | cuerda |
PowerState
Nombre | Descripción | Valor |
---|---|---|
código | Indica si el clúster está en ejecución o detenido. | "En ejecución" 'Detenido' |
AgentPoolUpgradeSettings
Nombre | Descripción | Valor |
---|---|---|
maxSurge | Esto puede establecerse en un entero (por ejemplo, "5") o en un porcentaje (por ejemplo, "50%"). Si se especifica un porcentaje, es el porcentaje del tamaño total del grupo de agentes en el momento de la actualización. En porcentajes, los nodos fraccionarios se redondean hacia arriba. Si no se especifica, el valor predeterminado es 1. Para obtener más información, incluidos los procedimientos recomendados, consulte: /azure/aks/upgrade-cluster#customize-node-surge-upgrade | cuerda |
ManagedClusterAPIServerAccessProfile
Nombre | Descripción | Valor |
---|---|---|
authorizedIPRanges | Los intervalos IP se especifican en formato CIDR, por ejemplo, 137.117.106.88/29. Esta característica no es compatible con clústeres que usan ip pública por nodo o clústeres que usan un equilibrador de carga básico. Para obtener más información, consulte intervalos IP autorizados del servidor de API. | string[] |
disableRunCommand | Si se deshabilita el comando run para el clúster o no. | Bool |
enablePrivateCluster | Para obtener más información, consulte Creación de un clúster de AKS privado. | Bool |
enablePrivateClusterPublicFQDN | Si se va a crear un FQDN público adicional para el clúster privado o no. | Bool |
privateDNSZone | El valor predeterminado es System. Para obtener más información, consulte configurar la zona DNS privada. Los valores permitidos son "system" y "none". | cuerda |
ManagedClusterPropertiesAutoScalerProfile
ManagedClusterAutoUpgradeProfile
Nombre | Descripción | Valor |
---|---|---|
upgradeChannel | Para obtener más información, consulte configuración del canal de actualización automática del clúster de AKS. | 'node-image' 'none' 'patch' "rapid" 'estable' |
ManagedClusterHttpProxyConfig
Nombre | Descripción | Valor |
---|---|---|
httpProxy | Punto de conexión del servidor proxy HTTP que se va a usar. | cuerda |
httpsProxy | Punto de conexión del servidor proxy HTTPS que se va a usar. | cuerda |
noProxy | Los puntos de conexión que no deben pasar por el proxy. | string[] |
trustedCa | Certificado de ENTIDAD de certificación alternativo que se usará para conectarse a servidores proxy. | cuerda |
ManagedClusterPropertiesIdentityProfile
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | UserAssignedIdentity |
UserAssignedIdentity
Nombre | Descripción | Valor |
---|---|---|
clientId | Identificador de cliente de la identidad asignada por el usuario. | cuerda |
objectId | Identificador de objeto de la identidad asignada por el usuario. | cuerda |
resourceId | Identificador de recurso de la identidad asignada por el usuario. | cuerda |
ContainerServiceLinuxProfile
Nombre | Descripción | Valor |
---|---|---|
adminUsername | Nombre de usuario del administrador que se va a usar para máquinas virtuales Linux. | string (obligatorio) Restricciones: Patrón = ^[A-Za-z][-A-Za-z0-9_]*$ |
ssh | Configuración de SSH para máquinas virtuales basadas en Linux que se ejecutan en Azure. | containerServiceSshConfiguration (obligatorio) |
ContainerServiceSshConfiguration
Nombre | Descripción | Valor |
---|---|---|
publicKeys | Lista de claves públicas SSH que se usan para autenticarse con máquinas virtuales basadas en Linux. Se puede especificar un máximo de 1 clave. | ContainerServiceSshPublicKey[] (obligatorio) |
ContainerServiceSshPublicKey
Nombre | Descripción | Valor |
---|---|---|
keyData | Clave pública de certificado que se usa para autenticarse con máquinas virtuales a través de SSH. El certificado debe estar en formato PEM con o sin encabezados. | string (obligatorio) |
ContainerServiceNetworkProfile
Nombre | Descripción | Valor |
---|---|---|
dnsServiceIP | Una dirección IP asignada al servicio DNS de Kubernetes. Debe estar dentro del intervalo de direcciones del servicio kubernetes especificado en serviceCidr. | cuerda Restricciones: Patrón = ^(?:(?: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 | Intervalo IP de notación CIDR asignado a la red del puente de Docker. No se debe superponer con ningún intervalo IP de subred ni con el intervalo de direcciones del servicio Kubernetes. | cuerda Restricciones: Patrón = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
ipFamilies | Las familias ip se usan para determinar clústeres de pila única o de doble pila. Para una sola pila, el valor esperado es IPv4. En el caso de la pila doble, los valores esperados son IPv4 e IPv6. | Matriz de cadenas que contiene cualquiera de: 'IPv4' 'IPv6' |
loadBalancerProfile | Perfil del equilibrador de carga del clúster. | ManagedClusterLoadBalancerProfile |
loadBalancerSku | El valor predeterminado es "estándar". Consulte SKU de Azure Load Balancer para obtener más información sobre las diferencias entre las SKU del equilibrador de carga. | 'basic' 'estándar' |
natGatewayProfile | Perfil de la puerta de enlace NAT del clúster. | ManagedClusterNATGatewayProfile |
networkMode | No se puede especificar si networkPlugin es distinto de "azure". | 'bridge' 'transparente' |
networkPlugin | Complemento de red que se usa para compilar la red de Kubernetes. | "azure" 'kubenet' |
networkPolicy | Directiva de red que se usa para compilar la red de Kubernetes. | "azure" 'calico' |
outboundType | Esto solo se puede establecer en el momento de creación del clúster y no se puede cambiar más adelante. Para obtener más información, vea tipo de salida. | 'loadBalancer' 'managedNATGateway' 'userAssignedNATGateway' 'userDefinedRouting' |
podCidr | Intervalo IP de notación CIDR desde el que se van a asignar direcciones IP de pod cuando se usa kubenet. | cuerda Restricciones: Patrón = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
podCidrs | Se espera un CIDR IPv4 para las redes de una sola pila. Se esperan dos CIDR, uno para cada familia IP (IPv4/IPv6) para las redes de doble pila. | string[] |
serviceCidr | Intervalo IP de notación CIDR desde el que se van a asignar direcciones IP del clúster de servicio. No debe superponerse con ningún intervalo IP de subred. | cuerda Restricciones: Patrón = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
serviceCidrs | Se espera un CIDR IPv4 para las redes de una sola pila. Se esperan dos CIDR, uno para cada familia IP (IPv4/IPv6) para las redes de doble pila. No deben superponerse con ningún intervalo IP de subred. | string[] |
ManagedClusterLoadBalancerProfile
Nombre | Descripción | Valor |
---|---|---|
allocatedOutboundPorts | Número deseado de puertos SNAT asignados por máquina virtual. Los valores permitidos están en el intervalo de 0 a 64000 (ambos incluidos). El valor predeterminado es 0, lo que da como resultado la asignación dinámica de puertos de Azure. | Int Restricciones: Valor mínimo = 0 Valor máximo = 64000 |
effectiveOutboundIPs | Los recursos DE IP de salida efectivos del equilibrador de carga del clúster. | ResourceReference[] |
enableMultipleStandardLoadBalancers | Habilite varios equilibradores de carga estándar por clúster de AKS o no. | Bool |
idleTimeoutInMinutes | Tiempo de espera de inactividad de flujo de salida deseado en minutos. Los valores permitidos están en el intervalo de 4 a 120 (ambos incluidos). El valor predeterminado es 30 minutos. | Int Restricciones: Valor mínimo = 4 Valor máximo = 120 |
managedOutboundIPs | Direcciones IP de salida administradas deseadas para el equilibrador de carga del clúster. | managedClusterLoadBalancerProfileManagedOutboundIPs |
outboundIPPrefixes | Recursos de prefijo ip de salida deseados para el equilibrador de carga del clúster. | ManagedClusterLoadBalancerProfileOutboundIPPrefixes |
outboundIPs | Recursos IP de salida deseados para el equilibrador de carga del clúster. | ManagedClusterLoadBalancerProfileOutboundIPs |
ResourceReference
Nombre | Descripción | Valor |
---|---|---|
identificación | Identificador completo del recurso de Azure. | cuerda |
ManagedClusterLoadBalancerProfileManagedOutboundIPs
Nombre | Descripción | Valor |
---|---|---|
contar | Número deseado de direcciones IP de salida IPv4 creadas o administradas por Azure para el equilibrador de carga del clúster. Los valores permitidos deben estar en el intervalo de 1 a 100 (ambos incluidos). El valor predeterminado es 1. | Int Restricciones: Valor mínimo = 1 Valor máximo = 100 |
countIPv6 | Número deseado de direcciones IP de salida IPv6 creadas o administradas por Azure para el equilibrador de carga del clúster. Los valores permitidos deben estar en el intervalo de 1 a 100 (ambos incluidos). El valor predeterminado es 0 para una sola pila y 1 para la pila doble. | Int Restricciones: Valor mínimo = 0 Valor máximo = 100 |
ManagedClusterLoadBalancerProfileOutboundIPPrefixes
Nombre | Descripción | Valor |
---|---|---|
publicIPPrefixes | Lista de recursos de prefijo de IP pública. | ResourceReference[] |
ManagedClusterLoadBalancerProfileOutboundIPs
Nombre | Descripción | Valor |
---|---|---|
publicIPs | Lista de recursos de ip pública. | ResourceReference[] |
ManagedClusterNATGatewayProfile
Nombre | Descripción | Valor |
---|---|---|
effectiveOutboundIPs | Los recursos ip de salida efectivos de la puerta de enlace NAT del clúster. | ResourceReference[] |
idleTimeoutInMinutes | Tiempo de espera de inactividad de flujo de salida deseado en minutos. Los valores permitidos están en el intervalo de 4 a 120 (ambos incluidos). El valor predeterminado es 4 minutos. | Int Restricciones: Valor mínimo = 4 Valor máximo = 120 |
managedOutboundIPProfile | Perfil de los recursos ip de salida administrados de la puerta de enlace NAT del clúster. | managedClusterManagedOutboundIPProfile |
ManagedClusterManagedOutboundIPProfile
Nombre | Descripción | Valor |
---|---|---|
contar | Número deseado de direcciones IP de salida creadas o administradas por Azure. Los valores permitidos deben estar en el intervalo de 1 a 16 (ambos incluidos). El valor predeterminado es 1. | Int Restricciones: Valor mínimo = 1 Valor máximo = 16 |
ManagedClusterPodIdentityProfile
Nombre | Descripción | Valor |
---|---|---|
allowNetworkPluginKubenet | La ejecución en Kubenet está deshabilitada de forma predeterminada debido a la naturaleza relacionada con la seguridad de la identidad de pod de AAD y los riesgos de suplantación de ip. Consulte mediante el complemento de red Kubenet con AAD Pod Identity para obtener más información. | Bool |
Habilitado | Indica si el complemento de identidad de pod está habilitado. | Bool |
userAssignedIdentities | Identidades de pod que se van a usar en el clúster. | managedClusterPodIdentity[] |
userAssignedIdentityExceptions | Excepciones de identidad de pod que se van a permitir. | managedClusterPodIdentityException[] |
ManagedClusterPodIdentity
ManagedClusterPodIdentityException
Nombre | Descripción | Valor |
---|---|---|
nombre | Nombre de la excepción de identidad del pod. | string (obligatorio) |
espacio de nombres | Espacio de nombres de la excepción de identidad de pod. | string (obligatorio) |
podLabels | Etiquetas de pod que se van a buscar coincidencias. | ManagedClusterPodIdentityExceptionPodLabels (obligatorio) |
ManagedClusterPodIdentityExceptionPodLabels
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | cuerda |
PrivateLinkResource
Nombre | Descripción | Valor |
---|---|---|
groupId | Identificador de grupo del recurso. | cuerda |
identificación | Identificador del recurso private link. | cuerda |
nombre | Nombre del recurso private link. | cuerda |
requiredMembers | RequiredMembers del recurso | string[] |
tipo | Tipo de recurso. | cuerda |
ManagedClusterSecurityProfile
Nombre | Descripción | Valor |
---|---|---|
azureDefender | Configuración de Azure Defender para el perfil de seguridad. | ManagedClusterSecurityProfileAzureDefender |
ManagedClusterSecurityProfileAzureDefender
Nombre | Descripción | Valor |
---|---|---|
Habilitado | Si se va a habilitar Azure Defender | Bool |
logAnalyticsWorkspaceResourceId | Identificador de recurso del área de trabajo de Log Analytics que se va a asociar a Azure Defender. Cuando Azure Defender está habilitado, este campo es necesario y debe ser un identificador de recurso de área de trabajo válido. Cuando Azure Defender esté deshabilitado, deje el campo vacío. | cuerda |
ManagedClusterServicePrincipalProfile
Nombre | Descripción | Valor |
---|---|---|
clientId | Identificador de la entidad de servicio. | string (obligatorio) |
secreto | Contraseña secreta asociada a la entidad de servicio en texto sin formato. | cuerda |
ManagedClusterStorageProfile
Nombre | Descripción | Valor |
---|---|---|
diskCSIDriver | Configuración del controlador CSI de AzureDisk para el perfil de almacenamiento. | managedClusterStorageProfileDiskCSIDriver |
fileCSIDriver | Configuración del controlador CSI de AzureFile para el perfil de almacenamiento. | managedClusterStorageProfileFileCSIDriver |
snapshotController | Configuración del controlador de instantáneas para el perfil de almacenamiento. | ManagedClusterStorageProfileSnapshotController |
ManagedClusterStorageProfileDiskCSIDriver
Nombre | Descripción | Valor |
---|---|---|
Habilitado | Si se va a habilitar el controlador CSI de AzureDisk. El valor predeterminado es true. | Bool |
ManagedClusterStorageProfileFileCSIDriver
Nombre | Descripción | Valor |
---|---|---|
Habilitado | Si se va a habilitar el controlador CSI de AzureFile. El valor predeterminado es true. | Bool |
ManagedClusterStorageProfileSnapshotController
Nombre | Descripción | Valor |
---|---|---|
Habilitado | Si se va a habilitar el controlador de instantáneas. El valor predeterminado es true. | Bool |
ManagedClusterWindowsProfile
Nombre | Descripción | Valor |
---|---|---|
adminPassword | Especifica la contraseña de la cuenta de administrador. longitud mínima: 8 caracteres longitud máxima: 123 caracteres requisitos de complejidad: 3 de 4 condiciones siguientes deben cumplirse. Tiene caracteres inferiores Tiene caracteres superiores Tiene un dígito Tiene un carácter especial (coincidencia regex [\W_]) valores no permitidos: "abc@123", "P@$$w 0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" |
cuerda |
adminUsername | Especifica el nombre de la cuenta de administrador. restricción de : no puede terminar en "." valores no permitidos: "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". longitud mínima: 1 carácter longitud máxima: 20 caracteres |
string (obligatorio) |
enableCSIProxy | Para obtener más información sobre el proxy CSI, consulte el repositorio de GitHub del proxy CSI de . | Bool |
gmsaProfile | Perfil de gMSA de Windows en el clúster administrado. | WindowsGmsaProfile |
licenseType | Tipo de licencia que se va a usar para máquinas virtuales Windows. Consulte ventajas del usuario híbrido de Azure para más información. | 'Ninguno' "Windows_Server" |
WindowsGmsaProfile
Nombre | Descripción | Valor |
---|---|---|
dnsServer | Especifica el servidor DNS para gMSA de Windows. Establézcalo en vacío si ha configurado el servidor DNS en la red virtual que se usa para crear el clúster administrado. |
cuerda |
Habilitado | Especifica si se va a habilitar gMSA de Windows en el clúster administrado. | Bool |
rootDomainName | Especifica el nombre de dominio raíz para gMSA de Windows. Establézcalo en vacío si ha configurado el servidor DNS en la red virtual que se usa para crear el clúster administrado. |
cuerda |
ManagedClusterSKU
Plantillas de inicio rápido
Las siguientes plantillas de inicio rápido implementan este tipo de recurso.
Plantilla | Descripción |
---|---|
CI/CD mediante Jenkins en Azure Container Service (AKS) |
Los contenedores facilitan la compilación e implementación continua de las aplicaciones. Mediante la orquestación de la implementación de esos contenedores mediante Kubernetes en Azure Container Service, puede lograr clústeres replicables y administrables de contenedores. Al configurar una compilación continua para generar las imágenes de contenedor y la orquestación, puede aumentar la velocidad y confiabilidad de la implementación. |
min.io azure Gateway |
Implementación de puerta de enlace de Azure min.io totalmente privada para proporcionar una API de almacenamiento compatible con S3 respaldada por Blob Storage |
clúster de AKS con una puerta de enlace NAT y un de Application Gateway |
En este ejemplo se muestra cómo implementar un clúster de AKS con NAT Gateway para las conexiones salientes y una instancia de Application Gateway para las conexiones entrantes. |
Crear un clúster de AKS privado |
En este ejemplo se muestra cómo crear un clúster de AKS privado en una red virtual junto con una máquina virtual jumpbox. |
Crear un clúster de AKS privado con una zona DNS pública |
En este ejemplo se muestra cómo implementar un clúster de AKS privado con una zona DNS pública. |
Implementación de un clúster de Kubernetes administrado (AKS) |
Esta plantilla de ARM muestra la implementación de una instancia de AKS con características avanzadas de red en una red virtual existente. Además, a la entidad de servicio elegida se le asigna el rol Colaborador de red en la subred que contiene el clúster de AKS. |
Implementación de un clúster de Kubernetes administrado con AAD (AKS) |
Esta plantilla de ARM muestra la implementación de una instancia de AKS con características de red avanzadas en una red virtual existente y la integeración de Azure AD. Además, a la entidad de servicio elegida se le asigna el rol Colaborador de red en la subred que contiene el clúster de AKS. |
Implementación de un clúster de AKS para Azure ML |
Esta plantilla le permite implementar un clúster de AKS compatible con entreprise que se puede asociar a Azure ML. |
de Azure Container Service (AKS) |
Implementación de un clúster administrado con Azure Container Service (AKS) |
de Azure Container Service (AKS) |
Implementación de un clúster administrado con Azure Container Service (AKS) mediante hosts de contenedor linux de Azure |
Azure Container Service (AKS) con Helm |
Implementación de un clúster administrado con Azure Container Service (AKS) con Helm |
de Azure Kubernetes Service (AKS) |
Implementa un clúster de Kubernetes administrado mediante Azure Kubernetes Service (AKS) |
clúster de AKS con el controlador de entrada de Application Gateway |
En este ejemplo se muestra cómo implementar un clúster de AKS con Application Gateway, Application Gateway Ingress Controller, Azure Container Registry, Log Analytics y Key Vault |
Definición de recursos de plantilla de ARM
El tipo de recurso managedClusters se puede implementar con operaciones destinadas a:
- grupos de recursos: consulte comandos de implementación de grupos de recursos
Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.
Observaciones
Para obtener información sobre los complementos disponibles, consulte complementos, extensiones y otras integraciones con Azure Kubernetes Service.
Formato de recurso
Para crear un recurso Microsoft.ContainerService/managedClusters, agregue el siguiente JSON a la plantilla.
{
"type": "Microsoft.ContainerService/managedClusters",
"apiVersion": "2022-04-01",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"sku": {
"name": "Basic",
"tier": "string"
},
"extendedLocation": {
"name": "string",
"type": "EdgeZone"
},
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {}
}
},
"properties": {
"aadProfile": {
"adminGroupObjectIDs": [ "string" ],
"clientAppID": "string",
"enableAzureRBAC": "bool",
"managed": "bool",
"serverAppID": "string",
"serverAppSecret": "string",
"tenantID": "string"
},
"addonProfiles": {
"{customized property}": {
"config": {
"{customized property}": "string"
},
"enabled": "bool"
}
},
"agentPoolProfiles": [
{
"availabilityZones": [ "string" ],
"count": "int",
"creationData": {
"sourceResourceId": "string"
},
"enableAutoScaling": "bool",
"enableEncryptionAtHost": "bool",
"enableFIPS": "bool",
"enableNodePublicIP": "bool",
"enableUltraSSD": "bool",
"gpuInstanceProfile": "string",
"kubeletConfig": {
"allowedUnsafeSysctls": [ "string" ],
"containerLogMaxFiles": "int",
"containerLogMaxSizeMB": "int",
"cpuCfsQuota": "bool",
"cpuCfsQuotaPeriod": "string",
"cpuManagerPolicy": "string",
"failSwapOn": "bool",
"imageGcHighThreshold": "int",
"imageGcLowThreshold": "int",
"podMaxPids": "int",
"topologyManagerPolicy": "string"
},
"kubeletDiskType": "string",
"linuxOSConfig": {
"swapFileSizeMB": "int",
"sysctls": {
"fsAioMaxNr": "int",
"fsFileMax": "int",
"fsInotifyMaxUserWatches": "int",
"fsNrOpen": "int",
"kernelThreadsMax": "int",
"netCoreNetdevMaxBacklog": "int",
"netCoreOptmemMax": "int",
"netCoreRmemDefault": "int",
"netCoreRmemMax": "int",
"netCoreSomaxconn": "int",
"netCoreWmemDefault": "int",
"netCoreWmemMax": "int",
"netIpv4IpLocalPortRange": "string",
"netIpv4NeighDefaultGcThresh1": "int",
"netIpv4NeighDefaultGcThresh2": "int",
"netIpv4NeighDefaultGcThresh3": "int",
"netIpv4TcpFinTimeout": "int",
"netIpv4TcpkeepaliveIntvl": "int",
"netIpv4TcpKeepaliveProbes": "int",
"netIpv4TcpKeepaliveTime": "int",
"netIpv4TcpMaxSynBacklog": "int",
"netIpv4TcpMaxTwBuckets": "int",
"netIpv4TcpTwReuse": "bool",
"netNetfilterNfConntrackBuckets": "int",
"netNetfilterNfConntrackMax": "int",
"vmMaxMapCount": "int",
"vmSwappiness": "int",
"vmVfsCachePressure": "int"
},
"transparentHugePageDefrag": "string",
"transparentHugePageEnabled": "string"
},
"maxCount": "int",
"maxPods": "int",
"minCount": "int",
"mode": "string",
"name": "string",
"nodeLabels": {
"{customized property}": "string"
},
"nodePublicIPPrefixID": "string",
"nodeTaints": [ "string" ],
"orchestratorVersion": "string",
"osDiskSizeGB": "int",
"osDiskType": "string",
"osSKU": "string",
"osType": "string",
"podSubnetID": "string",
"powerState": {
"code": "string"
},
"proximityPlacementGroupID": "string",
"scaleDownMode": "string",
"scaleSetEvictionPolicy": "string",
"scaleSetPriority": "string",
"spotMaxPrice": "[json('decimal-as-string')]",
"tags": {},
"type": "string",
"upgradeSettings": {
"maxSurge": "string"
},
"vmSize": "string",
"vnetSubnetID": "string",
"workloadRuntime": "string"
}
],
"apiServerAccessProfile": {
"authorizedIPRanges": [ "string" ],
"disableRunCommand": "bool",
"enablePrivateCluster": "bool",
"enablePrivateClusterPublicFQDN": "bool",
"privateDNSZone": "string"
},
"autoScalerProfile": {
"balance-similar-node-groups": "string",
"expander": "string",
"max-empty-bulk-delete": "string",
"max-graceful-termination-sec": "string",
"max-node-provision-time": "string",
"max-total-unready-percentage": "string",
"new-pod-scale-up-delay": "string",
"ok-total-unready-count": "string",
"scale-down-delay-after-add": "string",
"scale-down-delay-after-delete": "string",
"scale-down-delay-after-failure": "string",
"scale-down-unneeded-time": "string",
"scale-down-unready-time": "string",
"scale-down-utilization-threshold": "string",
"scan-interval": "string",
"skip-nodes-with-local-storage": "string",
"skip-nodes-with-system-pods": "string"
},
"autoUpgradeProfile": {
"upgradeChannel": "string"
},
"disableLocalAccounts": "bool",
"diskEncryptionSetID": "string",
"dnsPrefix": "string",
"enablePodSecurityPolicy": "bool",
"enableRBAC": "bool",
"fqdnSubdomain": "string",
"httpProxyConfig": {
"httpProxy": "string",
"httpsProxy": "string",
"noProxy": [ "string" ],
"trustedCa": "string"
},
"identityProfile": {
"{customized property}": {
"clientId": "string",
"objectId": "string",
"resourceId": "string"
}
},
"kubernetesVersion": "string",
"linuxProfile": {
"adminUsername": "string",
"ssh": {
"publicKeys": [
{
"keyData": "string"
}
]
}
},
"networkProfile": {
"dnsServiceIP": "string",
"dockerBridgeCidr": "string",
"ipFamilies": [ "string" ],
"loadBalancerProfile": {
"allocatedOutboundPorts": "int",
"effectiveOutboundIPs": [
{
"id": "string"
}
],
"enableMultipleStandardLoadBalancers": "bool",
"idleTimeoutInMinutes": "int",
"managedOutboundIPs": {
"count": "int",
"countIPv6": "int"
},
"outboundIPPrefixes": {
"publicIPPrefixes": [
{
"id": "string"
}
]
},
"outboundIPs": {
"publicIPs": [
{
"id": "string"
}
]
}
},
"loadBalancerSku": "string",
"natGatewayProfile": {
"effectiveOutboundIPs": [
{
"id": "string"
}
],
"idleTimeoutInMinutes": "int",
"managedOutboundIPProfile": {
"count": "int"
}
},
"networkMode": "string",
"networkPlugin": "string",
"networkPolicy": "string",
"outboundType": "string",
"podCidr": "string",
"podCidrs": [ "string" ],
"serviceCidr": "string",
"serviceCidrs": [ "string" ]
},
"nodeResourceGroup": "string",
"podIdentityProfile": {
"allowNetworkPluginKubenet": "bool",
"enabled": "bool",
"userAssignedIdentities": [
{
"bindingSelector": "string",
"identity": {
"clientId": "string",
"objectId": "string",
"resourceId": "string"
},
"name": "string",
"namespace": "string"
}
],
"userAssignedIdentityExceptions": [
{
"name": "string",
"namespace": "string",
"podLabels": {
"{customized property}": "string"
}
}
]
},
"privateLinkResources": [
{
"groupId": "string",
"id": "string",
"name": "string",
"requiredMembers": [ "string" ],
"type": "string"
}
],
"publicNetworkAccess": "string",
"securityProfile": {
"azureDefender": {
"enabled": "bool",
"logAnalyticsWorkspaceResourceId": "string"
}
},
"servicePrincipalProfile": {
"clientId": "string",
"secret": "string"
},
"storageProfile": {
"diskCSIDriver": {
"enabled": "bool"
},
"fileCSIDriver": {
"enabled": "bool"
},
"snapshotController": {
"enabled": "bool"
}
},
"windowsProfile": {
"adminPassword": "string",
"adminUsername": "string",
"enableCSIProxy": "bool",
"gmsaProfile": {
"dnsServer": "string",
"enabled": "bool",
"rootDomainName": "string"
},
"licenseType": "string"
}
}
}
Valores de propiedad
managedClusters
Nombre | Descripción | Valor |
---|---|---|
tipo | El tipo de recurso | "Microsoft.ContainerService/managedClusters" |
apiVersion | La versión de la API de recursos | '2022-04-01' |
nombre | El nombre del recurso | string (obligatorio) Límite de caracteres: 1-63 Caracteres válidos: Caracteres alfanuméricos, caracteres de subrayado y guiones. Comience y termine con alfanumérico. |
ubicación | Ubicación geográfica donde reside el recurso | string (obligatorio) |
Etiquetas | Etiquetas de recursos. | Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas |
Sku | SKU del clúster administrado. | managedClusterSKU de |
extendedLocation | Ubicación extendida de la máquina virtual. | ExtendedLocation |
identidad | Identidad del clúster administrado, si está configurada. | managedClusterIdentity de |
Propiedades | Propiedades de un clúster administrado. | managedClusterProperties |
ExtendedLocation
Nombre | Descripción | Valor |
---|---|---|
nombre | Nombre de la ubicación extendida. | cuerda |
tipo | Tipo de la ubicación extendida. | 'EdgeZone' |
ManagedClusterIdentity
Nombre | Descripción | Valor |
---|---|---|
tipo | Para obtener más información, consulte usar identidades administradas en AKS. | 'Ninguno' 'SystemAssigned' 'UserAssigned' |
userAssignedIdentities | Las claves deben ser identificadores de recursos de ARM con el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. | managedClusterIdentityUserAssignedIdentities |
ManagedClusterIdentityUserAssignedIdentities
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | managedServiceIdentityUserAssignedIdentitiesValue |
ManagedServiceIdentityUserAssignedIdentitiesValue
Este objeto no contiene ninguna propiedad que se establezca durante la implementación. Todas las propiedades son ReadOnly.
ManagedClusterProperties
Nombre | Descripción | Valor |
---|---|---|
aadProfile | Configuración de Azure Active Directory. | ManagedClusterAADProfile |
addonProfiles | Perfil del complemento de clúster administrado. | managedClusterPropertiesAddonProfiles |
agentPoolProfiles | Propiedades del grupo de agentes. | managedClusterAgentPoolProfile [] |
apiServerAccessProfile | Perfil de acceso para el servidor de API de clúster administrado. | ManagedClusterAPIServerAccessProfile |
autoScalerProfile | Parámetros que se van a aplicar al escalador automático del clúster cuando está habilitado | managedClusterPropertiesAutoScalerProfile |
autoUpgradeProfile | Configuración de actualización automática. | ManagedClusterAutoUpgradeProfile |
disableLocalAccounts | Si se establece en true, la obtención de credenciales estáticas se deshabilitará para este clúster. Esto solo se debe usar en clústeres administrados habilitados para AAD. Para obtener más información, consulte deshabilitar las cuentas locales. | Bool |
diskEncryptionSetID | Este es el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}' | cuerda |
dnsPrefix | No se puede actualizar una vez creado el clúster administrado. | cuerda |
enablePodSecurityPolicy | (EN DESUSO) Indica si se va a habilitar la directiva de seguridad de pods de Kubernetes (versión preliminar). Esta característica se establece para su eliminación el 15 de octubre de 2020. Obtenga más información en aka.ms/aks/azpodpolicy. | Bool |
enableRBAC | Si se va a habilitar Kubernetes Role-Based Access Control. | Bool |
fqdnSubdomain | No se puede actualizar una vez creado el clúster administrado. | cuerda |
httpProxyConfig | Configuraciones para aprovisionar el clúster con servidores proxy HTTP. | managedClusterHttpProxyConfig |
identityProfile | Identidades asociadas al clúster. | managedClusterPropertiesIdentityProfile |
kubernetesVersion | Se admiten ambas versiones de revisión {major.minor.patch} (por ejemplo, 1.20.13) y {major.minor} (por ejemplo, 1.20). Cuando se especifica {major.minor}, se elige automáticamente la versión de revisión de disponibilidad general compatible más reciente. La actualización del clúster con el mismo {major.minor} una vez creado (por ejemplo, 1.14.x -} 1.14) no desencadenará una actualización, incluso si hay disponible una versión de revisión más reciente. Al actualizar un clúster de AKS compatible, no se pueden omitir las versiones secundarias de Kubernetes. Todas las actualizaciones deben realizarse secuencialmente por número de versión principal. Por ejemplo, se permiten actualizaciones entre 1.14.x -} 1.15.x o 1.15.x -} 1.16.x, pero no se permite 1.14.x -} 1.16.x. Consulte actualizar un clúster de AKS para obtener más información. | cuerda |
linuxProfile | El perfil de las máquinas virtuales Linux en el clúster administrado. | ContainerServiceLinuxProfile |
networkProfile | Perfil de configuración de red. | ContainerServiceNetworkProfile |
nodeResourceGroup | Nombre del grupo de recursos que contiene los nodos del grupo de agentes. | cuerda |
podIdentityProfile | Consulte usar de identidad de pod de AAD para obtener más información sobre la integración de identidades de pod de AAD. | ManagedClusterPodIdentityProfile |
privateLinkResources | Recursos de Private Link asociados al clúster. | PrivateLinkResource [] |
publicNetworkAccess | Permitir o denegar el acceso a la red pública para AKS | 'Deshabilitado' 'Habilitado' |
securityProfile | Perfil de seguridad para el clúster administrado. | ManagedClusterSecurityProfile |
servicePrincipalProfile | Información sobre una identidad de entidad de servicio para el clúster que se va a usar para manipular las API de Azure. | ManagedClusterServicePrincipalProfile |
storageProfile | Perfil de almacenamiento para el clúster administrado. | ManagedClusterStorageProfile |
windowsProfile | El perfil de las máquinas virtuales Windows en el clúster administrado. | ManagedClusterWindowsProfile |
ManagedClusterAADProfile
Nombre | Descripción | Valor |
---|---|---|
adminGroupObjectIDs | Lista de identificadores de objeto de grupo de AAD que tendrán el rol de administrador del clúster. | string[] |
clientAppID | Identificador de aplicación de AAD cliente. | cuerda |
enableAzureRBAC | Si se habilita RBAC de Azure para la autorización de Kubernetes. | Bool |
Administrado | Si se va a habilitar AAD administrado. | Bool |
serverAppID | Identificador de aplicación de AAD del servidor. | cuerda |
serverAppSecret | Secreto de aplicación de AAD del servidor. | cuerda |
tenantID | Identificador de inquilino de AAD que se va a usar para la autenticación. Si no se especifica, usará el inquilino de la suscripción de implementación. | cuerda |
ManagedClusterPropertiesAddonProfiles
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | ManagedClusterAddonProfile |
ManagedClusterAddonProfile
Nombre | Descripción | Valor |
---|---|---|
config | Pares clave-valor para configurar un complemento. | managedClusterAddonProfileConfig |
Habilitado | Indica si el complemento está habilitado o no. | bool (obligatorio) |
ManagedClusterAddonProfileConfig
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | cuerda |
ManagedClusterAgentPoolProfile
Nombre | Descripción | Valor |
---|---|---|
availabilityZones | Lista de zonas de disponibilidad que se van a usar para los nodos. Esto solo se puede especificar si la propiedad AgentPoolType es "VirtualMachineScaleSets". | string[] |
contar | Número de agentes (VM) para hospedar contenedores de Docker. Los valores permitidos deben estar comprendidos entre 0 y 1000 (ambos incluidos) para los grupos de usuarios y en el intervalo de 1 a 1000 (ambos incluidos) para los grupos del sistema. El valor predeterminado es 1. | Int |
creationData | CreationData que se usará para especificar el identificador de instantánea de origen si el grupo de nodos se creará o actualizará mediante una instantánea. | CreationData |
enableAutoScaling | Si se va a habilitar el escalador automático | Bool |
enableEncryptionAtHost | Esto solo se admite en determinados tamaños de máquina virtual y en determinadas regiones de Azure. Para más información, consulte : /azure/aks/enable-host-encryption | Bool |
enableFIPS | Consulte Agregar un grupo de nodos habilitado para FIPS para obtener más información. | Bool |
enableNodePublicIP | Algunos escenarios pueden requerir que los nodos de un grupo de nodos reciban sus propias direcciones IP públicas dedicadas. Un escenario común es para las cargas de trabajo de juegos, donde una consola debe realizar una conexión directa a una máquina virtual en la nube para minimizar los saltos. Para obtener más información, consulte asignación de una dirección IP pública por nodo. El valor predeterminado es false. | Bool |
enableUltraSSD | Si se va a habilitar UltraSSD | Bool |
gpuInstanceProfile | GPUInstanceProfile que se usará para especificar el perfil de instancia de MIG de GPU para la SKU de máquina virtual de GPU compatible. | 'MIG1g' 'MIG2g' 'MIG3g' 'MIG4g' 'MIG7g' |
kubeletConfig | Configuración de Kubelet en los nodos del grupo de agentes. | kubeletConfig |
kubeletDiskType | Determina la ubicación de volúmenes emptyDir, raíz de datos del entorno de ejecución del contenedor y almacenamiento efímero de Kubelet. | 'SO' 'Temporal' |
linuxOSConfig | Configuración del sistema operativo de los nodos del agente de Linux. | LinuxOSConfig |
maxCount | Número máximo de nodos para el escalado automático | Int |
maxPods | Número máximo de pods que se pueden ejecutar en un nodo. | Int |
minCount | El número mínimo de nodos para el escalado automático | Int |
modo | Un clúster debe tener al menos un grupo de agentes "System" en todo momento. Para más información sobre las restricciones y los procedimientos recomendados del grupo de agentes, consulte: /azure/aks/use-system-pools. | 'System' "Usuario" |
nombre | Los nombres del grupo de agentes de Windows deben tener 6 caracteres o menos. | string (obligatorio) Restricciones: Patrón = ^[a-z][a-z0-9]{0,11}$ |
nodeLabels | Las etiquetas de nodo que se conservarán en todos los nodos del grupo de agentes. | managedClusterAgentPoolProfilePropertiesNodeLabels |
nodePublicIPPrefixID | Este es el formato: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} | cuerda |
nodeTaints | Los taints agregados a los nuevos nodos durante la creación y escala del grupo de nodos. Por ejemplo, key=value:NoSchedule. | string[] |
orchestratorVersion | Se admiten ambas versiones de revisión {major.minor.patch} (por ejemplo, 1.20.13) y {major.minor} (por ejemplo, 1.20). Cuando se especifica {major.minor}, se elige automáticamente la versión de revisión de disponibilidad general compatible más reciente. La actualización del clúster con el mismo {major.minor} una vez creado (por ejemplo, 1.14.x -} 1.14) no desencadenará una actualización, incluso si hay disponible una versión de revisión más reciente. Como procedimiento recomendado, debe actualizar todos los grupos de nodos de un clúster de AKS a la misma versión de Kubernetes. La versión del grupo de nodos debe tener la misma versión principal que el plano de control. La versión secundaria del grupo de nodos debe estar dentro de dos versiones secundarias de la versión del plano de control. La versión del grupo de nodos no puede ser mayor que la versión del plano de control. Para obtener más información, consulte actualizar un grupo de nodos. | cuerda |
osDiskSizeGB | Tamaño del disco del sistema operativo en GB que se va a usar para especificar el tamaño del disco para cada máquina del grupo de servidores maestros o agentes. Si especifica 0, se aplicará el tamaño predeterminado de osDisk según el valor de vmSize especificado. | Int Restricciones: Valor mínimo = 0 Valor máximo = 2048 |
osDiskType | El valor predeterminado es "Efímero" si la máquina virtual la admite y tiene un disco de caché mayor que el OSDiskSizeGB solicitado. De lo contrario, el valor predeterminado es "Administrado". Es posible que no se cambie después de la creación. Para obtener más información, consulte del sistema operativo efímero. | 'Efímero' "Administrado" |
osSKU | Especifica una SKU del sistema operativo. Este valor no se debe especificar si OSType es Windows. | 'CBLMariner' 'Ubuntu' |
osType | Tipo de sistema operativo. El valor predeterminado es Linux. | "Linux" 'Windows' |
podSubnetID | Si se omite, las direcciones IP de pod se asignan estáticamente en la subred del nodo (consulte vnetSubnetID para obtener más detalles). Este es el formato: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} | cuerda |
powerState | Cuando se crea por primera vez un grupo de agentes, se ejecuta inicialmente. El grupo de agentes se puede detener estableciendo este campo en Detenido. Un grupo de agentes detenido detiene todas sus máquinas virtuales y no acumula cargos de facturación. Un grupo de agentes solo se puede detener si se está ejecutando y el estado de aprovisionamiento es Correcto | powerState |
proximityPlacementGroupID | Identificador del grupo de selección de ubicación de proximidad. | cuerda |
scaleDownMode | Esto también afecta al comportamiento del escalador automático del clúster. Si no se especifica, el valor predeterminado es Eliminar. | 'Desasignar' 'Eliminar' |
scaleSetEvictionPolicy | No se puede especificar a menos que scaleSetPriority sea "Spot". Si no se especifica, el valor predeterminado es "Delete". | 'Desasignar' 'Eliminar' |
scaleSetPriority | Prioridad del conjunto de escalado de máquinas virtuales. Si no se especifica, el valor predeterminado es "Regular". | 'Regular' 'Spot' |
spotMaxPrice | Los valores posibles son cualquier valor decimal mayor que cero o -1 que indica la voluntad de pagar cualquier precio a petición. Para más información sobre los precios puntuales, consulte |
int o json decimal |
Etiquetas | Etiquetas que se van a conservar en el conjunto de escalado de máquinas virtuales del grupo de agentes. | objeto |
tipo | Tipo de grupo de agentes. | 'AvailabilitySet' 'VirtualMachineScaleSets' |
upgradeSettings | Configuración para actualizar el grupo de agentes | AgentPoolUpgradeSettings |
vmSize | La disponibilidad del tamaño de máquina virtual varía según la región. Si un nodo contiene recursos de proceso insuficientes (memoria, cpu, etcetera) podría no ejecutarse correctamente. Para más información sobre los tamaños de máquina virtual restringidos, consulte: /azure/aks/quotas-skus-regions | cuerda |
vnetSubnetID | Si no se especifica, se generará y usará una red virtual y una subred. Si no se especifica ningún podSubnetID, esto se aplica a nodos y pods; de lo contrario, se aplica solo a los nodos. Este es el formato: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} | cuerda |
workloadRuntime | Determina el tipo de carga de trabajo que puede ejecutar un nodo. | 'OCIContainer' 'WasmWasi' |
CreationData
Nombre | Descripción | Valor |
---|---|---|
sourceResourceId | Este es el identificador de ARM del objeto de origen que se va a usar para crear el objeto de destino. | cuerda |
KubeletConfig
Nombre | Descripción | Valor |
---|---|---|
allowedUnsafeSysctls | Lista permitida de sysctls no seguros o patrones sysctl no seguros (que terminan en * ). |
string[] |
containerLogMaxFiles | Número máximo de archivos de registro de contenedor que pueden estar presentes para un contenedor. El número debe ser ≥ 2. | Int Restricciones: Valor mínimo = 2 |
containerLogMaxSizeMB | Tamaño máximo (por ejemplo, 10Mi) del archivo de registro de contenedor antes de girarlo. | Int |
cpuCfsQuota | El valor predeterminado es true. | Bool |
cpuCfsQuotaPeriod | El valor predeterminado es "100ms". Los valores válidos son una secuencia de números decimales con una fracción opcional y un sufijo de unidad. Por ejemplo: "300 ms", "2h45m". Las unidades admitidas son "ns", "us", "ms", "s", "m" y "h". | cuerda |
cpuManagerPolicy | El valor predeterminado es "none". Consulte directivas de administración de CPU de Kubernetes para obtener más información. Los valores permitidos son "none" y "static". | cuerda |
failSwapOn | Si se establece en true, se producirá un error al iniciar Kubelet si el intercambio está habilitado en el nodo. | Bool |
imageGcHighThreshold | Para deshabilitar la recolección de elementos no utilizados de imagen, establezca en 100. El valor predeterminado es 85% | Int |
imageGcLowThreshold | Esto no se puede establecer más alto que imageGcHighThreshold. El valor predeterminado es 80% | Int |
podMaxPids | Número máximo de procesos por pod. | Int |
topologyManagerPolicy | Para obtener más información, consulte administrador de topologías de Kubernetes. El valor predeterminado es "none". Los valores permitidos son "none", "best-effort", "restricted" y "single-numa-node". | cuerda |
LinuxOSConfig
SysctlConfig
Nombre | Descripción | Valor |
---|---|---|
fsAioMaxNr | Configuración de Sysctl fs.aio-max-nr. | Int |
fsFileMax | Configuración de Sysctl fs.file-max. | Int |
fsInotifyMaxUserWatches | Configuración de Sysctl fs.inotify.max_user_watches. | Int |
fsNrOpen | Configuración de Sysctl fs.nr_open. | Int |
kernelThreadsMax | Configuración de Sysctl kernel.threads-max. | Int |
netCoreNetdevMaxBacklog | Configuración de Sysctl net.core.netdev_max_backlog. | Int |
netCoreOptmemMax | Configuración de Sysctl net.core.optmem_max. | Int |
netCoreRmemDefault | Configuración de Sysctl net.core.rmem_default. | Int |
netCoreRmemMax | Configuración de Sysctl net.core.rmem_max. | Int |
netCoreSomaxconn | Configuración de Sysctl net.core.somaxconn. | Int |
netCoreWmemDefault | Configuración de Sysctl net.core.wmem_default. | Int |
netCoreWmemMax | Configuración de Sysctl net.core.wmem_max. | Int |
netIpv4IpLocalPortRange | Configuración de Sysctl net.ipv4.ip_local_port_range. | cuerda |
netIpv4NeighDefaultGcThresh1 | Configuración de Sysctl net.ipv4.neigh.default.gc_thresh1. | Int |
netIpv4NeighDefaultGcThresh2 | Configuración de Sysctl net.ipv4.neigh.default.gc_thresh2. | Int |
netIpv4NeighDefaultGcThresh3 | Configuración de Sysctl net.ipv4.neigh.default.gc_thresh3. | Int |
netIpv4TcpFinTimeout | Configuración de Sysctl net.ipv4.tcp_fin_timeout. | Int |
netIpv4TcpkeepaliveIntvl | Configuración de Sysctl net.ipv4.tcp_keepalive_intvl. | Int |
netIpv4TcpKeepaliveProbes | Configuración de Sysctl net.ipv4.tcp_keepalive_probes. | Int |
netIpv4TcpKeepaliveTime | Configuración de Sysctl net.ipv4.tcp_keepalive_time. | Int |
netIpv4TcpMaxSynBacklog | Configuración de Sysctl net.ipv4.tcp_max_syn_backlog. | Int |
netIpv4TcpMaxTwBuckets | Configuración de Sysctl net.ipv4.tcp_max_tw_buckets. | Int |
netIpv4TcpTwReuse | Configuración de Sysctl net.ipv4.tcp_tw_reuse. | Bool |
netNetfilterNfConntrackBuckets | Configuración de Sysctl net.netfilter.nf_conntrack_buckets. | Int |
netNetfilterNfConntrackMax | Configuración de Sysctl net.netfilter.nf_conntrack_max. | Int |
vmMaxMapCount | Configuración de Sysctl vm.max_map_count. | Int |
vmSwappiness | Configuración de Sysctl vm.swappiness. | Int |
vmVfsCachePressure | Configuración de Sysctl vm.vfs_cache_pressure. | Int |
ManagedClusterAgentPoolProfilePropertiesNodeLabels
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | cuerda |
PowerState
Nombre | Descripción | Valor |
---|---|---|
código | Indica si el clúster está en ejecución o detenido. | "En ejecución" 'Detenido' |
AgentPoolUpgradeSettings
Nombre | Descripción | Valor |
---|---|---|
maxSurge | Esto puede establecerse en un entero (por ejemplo, "5") o en un porcentaje (por ejemplo, "50%"). Si se especifica un porcentaje, es el porcentaje del tamaño total del grupo de agentes en el momento de la actualización. En porcentajes, los nodos fraccionarios se redondean hacia arriba. Si no se especifica, el valor predeterminado es 1. Para obtener más información, incluidos los procedimientos recomendados, consulte: /azure/aks/upgrade-cluster#customize-node-surge-upgrade | cuerda |
ManagedClusterAPIServerAccessProfile
Nombre | Descripción | Valor |
---|---|---|
authorizedIPRanges | Los intervalos IP se especifican en formato CIDR, por ejemplo, 137.117.106.88/29. Esta característica no es compatible con clústeres que usan ip pública por nodo o clústeres que usan un equilibrador de carga básico. Para obtener más información, consulte intervalos IP autorizados del servidor de API. | string[] |
disableRunCommand | Si se deshabilita el comando run para el clúster o no. | Bool |
enablePrivateCluster | Para obtener más información, consulte Creación de un clúster de AKS privado. | Bool |
enablePrivateClusterPublicFQDN | Si se va a crear un FQDN público adicional para el clúster privado o no. | Bool |
privateDNSZone | El valor predeterminado es System. Para obtener más información, consulte configurar la zona DNS privada. Los valores permitidos son "system" y "none". | cuerda |
ManagedClusterPropertiesAutoScalerProfile
ManagedClusterAutoUpgradeProfile
Nombre | Descripción | Valor |
---|---|---|
upgradeChannel | Para obtener más información, consulte configuración del canal de actualización automática del clúster de AKS. | 'node-image' 'none' 'patch' "rapid" 'estable' |
ManagedClusterHttpProxyConfig
Nombre | Descripción | Valor |
---|---|---|
httpProxy | Punto de conexión del servidor proxy HTTP que se va a usar. | cuerda |
httpsProxy | Punto de conexión del servidor proxy HTTPS que se va a usar. | cuerda |
noProxy | Los puntos de conexión que no deben pasar por el proxy. | string[] |
trustedCa | Certificado de ENTIDAD de certificación alternativo que se usará para conectarse a servidores proxy. | cuerda |
ManagedClusterPropertiesIdentityProfile
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | UserAssignedIdentity |
UserAssignedIdentity
Nombre | Descripción | Valor |
---|---|---|
clientId | Identificador de cliente de la identidad asignada por el usuario. | cuerda |
objectId | Identificador de objeto de la identidad asignada por el usuario. | cuerda |
resourceId | Identificador de recurso de la identidad asignada por el usuario. | cuerda |
ContainerServiceLinuxProfile
Nombre | Descripción | Valor |
---|---|---|
adminUsername | Nombre de usuario del administrador que se va a usar para máquinas virtuales Linux. | string (obligatorio) Restricciones: Patrón = ^[A-Za-z][-A-Za-z0-9_]*$ |
ssh | Configuración de SSH para máquinas virtuales basadas en Linux que se ejecutan en Azure. | containerServiceSshConfiguration (obligatorio) |
ContainerServiceSshConfiguration
Nombre | Descripción | Valor |
---|---|---|
publicKeys | Lista de claves públicas SSH que se usan para autenticarse con máquinas virtuales basadas en Linux. Se puede especificar un máximo de 1 clave. | ContainerServiceSshPublicKey[] (obligatorio) |
ContainerServiceSshPublicKey
Nombre | Descripción | Valor |
---|---|---|
keyData | Clave pública de certificado que se usa para autenticarse con máquinas virtuales a través de SSH. El certificado debe estar en formato PEM con o sin encabezados. | string (obligatorio) |
ContainerServiceNetworkProfile
Nombre | Descripción | Valor |
---|---|---|
dnsServiceIP | Una dirección IP asignada al servicio DNS de Kubernetes. Debe estar dentro del intervalo de direcciones del servicio kubernetes especificado en serviceCidr. | cuerda Restricciones: Patrón = ^(?:(?: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 | Intervalo IP de notación CIDR asignado a la red del puente de Docker. No se debe superponer con ningún intervalo IP de subred ni con el intervalo de direcciones del servicio Kubernetes. | cuerda Restricciones: Patrón = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
ipFamilies | Las familias ip se usan para determinar clústeres de pila única o de doble pila. Para una sola pila, el valor esperado es IPv4. En el caso de la pila doble, los valores esperados son IPv4 e IPv6. | Matriz de cadenas que contiene cualquiera de: 'IPv4' 'IPv6' |
loadBalancerProfile | Perfil del equilibrador de carga del clúster. | ManagedClusterLoadBalancerProfile |
loadBalancerSku | El valor predeterminado es "estándar". Consulte SKU de Azure Load Balancer para obtener más información sobre las diferencias entre las SKU del equilibrador de carga. | 'basic' 'estándar' |
natGatewayProfile | Perfil de la puerta de enlace NAT del clúster. | ManagedClusterNATGatewayProfile |
networkMode | No se puede especificar si networkPlugin es distinto de "azure". | 'bridge' 'transparente' |
networkPlugin | Complemento de red que se usa para compilar la red de Kubernetes. | "azure" 'kubenet' |
networkPolicy | Directiva de red que se usa para compilar la red de Kubernetes. | "azure" 'calico' |
outboundType | Esto solo se puede establecer en el momento de creación del clúster y no se puede cambiar más adelante. Para obtener más información, vea tipo de salida. | 'loadBalancer' 'managedNATGateway' 'userAssignedNATGateway' 'userDefinedRouting' |
podCidr | Intervalo IP de notación CIDR desde el que se van a asignar direcciones IP de pod cuando se usa kubenet. | cuerda Restricciones: Patrón = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
podCidrs | Se espera un CIDR IPv4 para las redes de una sola pila. Se esperan dos CIDR, uno para cada familia IP (IPv4/IPv6) para las redes de doble pila. | string[] |
serviceCidr | Intervalo IP de notación CIDR desde el que se van a asignar direcciones IP del clúster de servicio. No debe superponerse con ningún intervalo IP de subred. | cuerda Restricciones: Patrón = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
serviceCidrs | Se espera un CIDR IPv4 para las redes de una sola pila. Se esperan dos CIDR, uno para cada familia IP (IPv4/IPv6) para las redes de doble pila. No deben superponerse con ningún intervalo IP de subred. | string[] |
ManagedClusterLoadBalancerProfile
Nombre | Descripción | Valor |
---|---|---|
allocatedOutboundPorts | Número deseado de puertos SNAT asignados por máquina virtual. Los valores permitidos están en el intervalo de 0 a 64000 (ambos incluidos). El valor predeterminado es 0, lo que da como resultado la asignación dinámica de puertos de Azure. | Int Restricciones: Valor mínimo = 0 Valor máximo = 64000 |
effectiveOutboundIPs | Los recursos DE IP de salida efectivos del equilibrador de carga del clúster. | ResourceReference[] |
enableMultipleStandardLoadBalancers | Habilite varios equilibradores de carga estándar por clúster de AKS o no. | Bool |
idleTimeoutInMinutes | Tiempo de espera de inactividad de flujo de salida deseado en minutos. Los valores permitidos están en el intervalo de 4 a 120 (ambos incluidos). El valor predeterminado es 30 minutos. | Int Restricciones: Valor mínimo = 4 Valor máximo = 120 |
managedOutboundIPs | Direcciones IP de salida administradas deseadas para el equilibrador de carga del clúster. | managedClusterLoadBalancerProfileManagedOutboundIPs |
outboundIPPrefixes | Recursos de prefijo ip de salida deseados para el equilibrador de carga del clúster. | ManagedClusterLoadBalancerProfileOutboundIPPrefixes |
outboundIPs | Recursos IP de salida deseados para el equilibrador de carga del clúster. | ManagedClusterLoadBalancerProfileOutboundIPs |
ResourceReference
Nombre | Descripción | Valor |
---|---|---|
identificación | Identificador completo del recurso de Azure. | cuerda |
ManagedClusterLoadBalancerProfileManagedOutboundIPs
Nombre | Descripción | Valor |
---|---|---|
contar | Número deseado de direcciones IP de salida IPv4 creadas o administradas por Azure para el equilibrador de carga del clúster. Los valores permitidos deben estar en el intervalo de 1 a 100 (ambos incluidos). El valor predeterminado es 1. | Int Restricciones: Valor mínimo = 1 Valor máximo = 100 |
countIPv6 | Número deseado de direcciones IP de salida IPv6 creadas o administradas por Azure para el equilibrador de carga del clúster. Los valores permitidos deben estar en el intervalo de 1 a 100 (ambos incluidos). El valor predeterminado es 0 para una sola pila y 1 para la pila doble. | Int Restricciones: Valor mínimo = 0 Valor máximo = 100 |
ManagedClusterLoadBalancerProfileOutboundIPPrefixes
Nombre | Descripción | Valor |
---|---|---|
publicIPPrefixes | Lista de recursos de prefijo de IP pública. | ResourceReference[] |
ManagedClusterLoadBalancerProfileOutboundIPs
Nombre | Descripción | Valor |
---|---|---|
publicIPs | Lista de recursos de ip pública. | ResourceReference[] |
ManagedClusterNATGatewayProfile
Nombre | Descripción | Valor |
---|---|---|
effectiveOutboundIPs | Los recursos ip de salida efectivos de la puerta de enlace NAT del clúster. | ResourceReference[] |
idleTimeoutInMinutes | Tiempo de espera de inactividad de flujo de salida deseado en minutos. Los valores permitidos están en el intervalo de 4 a 120 (ambos incluidos). El valor predeterminado es 4 minutos. | Int Restricciones: Valor mínimo = 4 Valor máximo = 120 |
managedOutboundIPProfile | Perfil de los recursos ip de salida administrados de la puerta de enlace NAT del clúster. | managedClusterManagedOutboundIPProfile |
ManagedClusterManagedOutboundIPProfile
Nombre | Descripción | Valor |
---|---|---|
contar | Número deseado de direcciones IP de salida creadas o administradas por Azure. Los valores permitidos deben estar en el intervalo de 1 a 16 (ambos incluidos). El valor predeterminado es 1. | Int Restricciones: Valor mínimo = 1 Valor máximo = 16 |
ManagedClusterPodIdentityProfile
Nombre | Descripción | Valor |
---|---|---|
allowNetworkPluginKubenet | La ejecución en Kubenet está deshabilitada de forma predeterminada debido a la naturaleza relacionada con la seguridad de la identidad de pod de AAD y los riesgos de suplantación de ip. Consulte mediante el complemento de red Kubenet con AAD Pod Identity para obtener más información. | Bool |
Habilitado | Indica si el complemento de identidad de pod está habilitado. | Bool |
userAssignedIdentities | Identidades de pod que se van a usar en el clúster. | managedClusterPodIdentity[] |
userAssignedIdentityExceptions | Excepciones de identidad de pod que se van a permitir. | managedClusterPodIdentityException[] |
ManagedClusterPodIdentity
ManagedClusterPodIdentityException
Nombre | Descripción | Valor |
---|---|---|
nombre | Nombre de la excepción de identidad del pod. | string (obligatorio) |
espacio de nombres | Espacio de nombres de la excepción de identidad de pod. | string (obligatorio) |
podLabels | Etiquetas de pod que se van a buscar coincidencias. | ManagedClusterPodIdentityExceptionPodLabels (obligatorio) |
ManagedClusterPodIdentityExceptionPodLabels
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | cuerda |
PrivateLinkResource
Nombre | Descripción | Valor |
---|---|---|
groupId | Identificador de grupo del recurso. | cuerda |
identificación | Identificador del recurso private link. | cuerda |
nombre | Nombre del recurso private link. | cuerda |
requiredMembers | RequiredMembers del recurso | string[] |
tipo | Tipo de recurso. | cuerda |
ManagedClusterSecurityProfile
Nombre | Descripción | Valor |
---|---|---|
azureDefender | Configuración de Azure Defender para el perfil de seguridad. | ManagedClusterSecurityProfileAzureDefender |
ManagedClusterSecurityProfileAzureDefender
Nombre | Descripción | Valor |
---|---|---|
Habilitado | Si se va a habilitar Azure Defender | Bool |
logAnalyticsWorkspaceResourceId | Identificador de recurso del área de trabajo de Log Analytics que se va a asociar a Azure Defender. Cuando Azure Defender está habilitado, este campo es necesario y debe ser un identificador de recurso de área de trabajo válido. Cuando Azure Defender esté deshabilitado, deje el campo vacío. | cuerda |
ManagedClusterServicePrincipalProfile
Nombre | Descripción | Valor |
---|---|---|
clientId | Identificador de la entidad de servicio. | string (obligatorio) |
secreto | Contraseña secreta asociada a la entidad de servicio en texto sin formato. | cuerda |
ManagedClusterStorageProfile
Nombre | Descripción | Valor |
---|---|---|
diskCSIDriver | Configuración del controlador CSI de AzureDisk para el perfil de almacenamiento. | managedClusterStorageProfileDiskCSIDriver |
fileCSIDriver | Configuración del controlador CSI de AzureFile para el perfil de almacenamiento. | managedClusterStorageProfileFileCSIDriver |
snapshotController | Configuración del controlador de instantáneas para el perfil de almacenamiento. | ManagedClusterStorageProfileSnapshotController |
ManagedClusterStorageProfileDiskCSIDriver
Nombre | Descripción | Valor |
---|---|---|
Habilitado | Si se va a habilitar el controlador CSI de AzureDisk. El valor predeterminado es true. | Bool |
ManagedClusterStorageProfileFileCSIDriver
Nombre | Descripción | Valor |
---|---|---|
Habilitado | Si se va a habilitar el controlador CSI de AzureFile. El valor predeterminado es true. | Bool |
ManagedClusterStorageProfileSnapshotController
Nombre | Descripción | Valor |
---|---|---|
Habilitado | Si se va a habilitar el controlador de instantáneas. El valor predeterminado es true. | Bool |
ManagedClusterWindowsProfile
Nombre | Descripción | Valor |
---|---|---|
adminPassword | Especifica la contraseña de la cuenta de administrador. longitud mínima: 8 caracteres longitud máxima: 123 caracteres requisitos de complejidad: 3 de 4 condiciones siguientes deben cumplirse. Tiene caracteres inferiores Tiene caracteres superiores Tiene un dígito Tiene un carácter especial (coincidencia regex [\W_]) valores no permitidos: "abc@123", "P@$$w 0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" |
cuerda |
adminUsername | Especifica el nombre de la cuenta de administrador. restricción de : no puede terminar en "." valores no permitidos: "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". longitud mínima: 1 carácter longitud máxima: 20 caracteres |
string (obligatorio) |
enableCSIProxy | Para obtener más información sobre el proxy CSI, consulte el repositorio de GitHub del proxy CSI de . | Bool |
gmsaProfile | Perfil de gMSA de Windows en el clúster administrado. | WindowsGmsaProfile |
licenseType | Tipo de licencia que se va a usar para máquinas virtuales Windows. Consulte ventajas del usuario híbrido de Azure para más información. | 'Ninguno' "Windows_Server" |
WindowsGmsaProfile
Nombre | Descripción | Valor |
---|---|---|
dnsServer | Especifica el servidor DNS para gMSA de Windows. Establézcalo en vacío si ha configurado el servidor DNS en la red virtual que se usa para crear el clúster administrado. |
cuerda |
Habilitado | Especifica si se va a habilitar gMSA de Windows en el clúster administrado. | Bool |
rootDomainName | Especifica el nombre de dominio raíz para gMSA de Windows. Establézcalo en vacío si ha configurado el servidor DNS en la red virtual que se usa para crear el clúster administrado. |
cuerda |
ManagedClusterSKU
Plantillas de inicio rápido
Las siguientes plantillas de inicio rápido implementan este tipo de recurso.
Plantilla | Descripción |
---|---|
CI/CD mediante Jenkins en Azure Container Service (AKS) |
Los contenedores facilitan la compilación e implementación continua de las aplicaciones. Mediante la orquestación de la implementación de esos contenedores mediante Kubernetes en Azure Container Service, puede lograr clústeres replicables y administrables de contenedores. Al configurar una compilación continua para generar las imágenes de contenedor y la orquestación, puede aumentar la velocidad y confiabilidad de la implementación. |
min.io azure Gateway |
Implementación de puerta de enlace de Azure min.io totalmente privada para proporcionar una API de almacenamiento compatible con S3 respaldada por Blob Storage |
clúster de AKS con una puerta de enlace NAT y un de Application Gateway |
En este ejemplo se muestra cómo implementar un clúster de AKS con NAT Gateway para las conexiones salientes y una instancia de Application Gateway para las conexiones entrantes. |
Crear un clúster de AKS privado |
En este ejemplo se muestra cómo crear un clúster de AKS privado en una red virtual junto con una máquina virtual jumpbox. |
Crear un clúster de AKS privado con una zona DNS pública |
En este ejemplo se muestra cómo implementar un clúster de AKS privado con una zona DNS pública. |
Implementación de un clúster de Kubernetes administrado (AKS) |
Esta plantilla de ARM muestra la implementación de una instancia de AKS con características avanzadas de red en una red virtual existente. Además, a la entidad de servicio elegida se le asigna el rol Colaborador de red en la subred que contiene el clúster de AKS. |
Implementación de un clúster de Kubernetes administrado con AAD (AKS) |
Esta plantilla de ARM muestra la implementación de una instancia de AKS con características de red avanzadas en una red virtual existente y la integeración de Azure AD. Además, a la entidad de servicio elegida se le asigna el rol Colaborador de red en la subred que contiene el clúster de AKS. |
Implementación de un clúster de AKS para Azure ML |
Esta plantilla le permite implementar un clúster de AKS compatible con entreprise que se puede asociar a Azure ML. |
de Azure Container Service (AKS) |
Implementación de un clúster administrado con Azure Container Service (AKS) |
de Azure Container Service (AKS) |
Implementación de un clúster administrado con Azure Container Service (AKS) mediante hosts de contenedor linux de Azure |
Azure Container Service (AKS) con Helm |
Implementación de un clúster administrado con Azure Container Service (AKS) con Helm |
de Azure Kubernetes Service (AKS) |
Implementa un clúster de Kubernetes administrado mediante Azure Kubernetes Service (AKS) |
clúster de AKS con el controlador de entrada de Application Gateway |
En este ejemplo se muestra cómo implementar un clúster de AKS con Application Gateway, Application Gateway Ingress Controller, Azure Container Registry, Log Analytics y Key Vault |
Definición de recursos de Terraform (proveedor AzAPI)
El tipo de recurso managedClusters se puede implementar con operaciones destinadas a:
- grupos de recursos de
Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.
Formato de recurso
Para crear un recurso Microsoft.ContainerService/managedClusters, agregue el siguiente Terraform a la plantilla.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.ContainerService/managedClusters@2022-04-01"
name = "string"
location = "string"
parent_id = "string"
tags = {
tagName1 = "tagValue1"
tagName2 = "tagValue2"
}
identity {
type = "string"
identity_ids = []
}
body = jsonencode({
properties = {
aadProfile = {
adminGroupObjectIDs = [
"string"
]
clientAppID = "string"
enableAzureRBAC = bool
managed = bool
serverAppID = "string"
serverAppSecret = "string"
tenantID = "string"
}
addonProfiles = {
{customized property} = {
config = {
{customized property} = "string"
}
enabled = bool
}
}
agentPoolProfiles = [
{
availabilityZones = [
"string"
]
count = int
creationData = {
sourceResourceId = "string"
}
enableAutoScaling = bool
enableEncryptionAtHost = bool
enableFIPS = bool
enableNodePublicIP = bool
enableUltraSSD = bool
gpuInstanceProfile = "string"
kubeletConfig = {
allowedUnsafeSysctls = [
"string"
]
containerLogMaxFiles = int
containerLogMaxSizeMB = int
cpuCfsQuota = bool
cpuCfsQuotaPeriod = "string"
cpuManagerPolicy = "string"
failSwapOn = bool
imageGcHighThreshold = int
imageGcLowThreshold = int
podMaxPids = int
topologyManagerPolicy = "string"
}
kubeletDiskType = "string"
linuxOSConfig = {
swapFileSizeMB = int
sysctls = {
fsAioMaxNr = int
fsFileMax = int
fsInotifyMaxUserWatches = int
fsNrOpen = int
kernelThreadsMax = int
netCoreNetdevMaxBacklog = int
netCoreOptmemMax = int
netCoreRmemDefault = int
netCoreRmemMax = int
netCoreSomaxconn = int
netCoreWmemDefault = int
netCoreWmemMax = int
netIpv4IpLocalPortRange = "string"
netIpv4NeighDefaultGcThresh1 = int
netIpv4NeighDefaultGcThresh2 = int
netIpv4NeighDefaultGcThresh3 = int
netIpv4TcpFinTimeout = int
netIpv4TcpkeepaliveIntvl = int
netIpv4TcpKeepaliveProbes = int
netIpv4TcpKeepaliveTime = int
netIpv4TcpMaxSynBacklog = int
netIpv4TcpMaxTwBuckets = int
netIpv4TcpTwReuse = bool
netNetfilterNfConntrackBuckets = int
netNetfilterNfConntrackMax = int
vmMaxMapCount = int
vmSwappiness = int
vmVfsCachePressure = int
}
transparentHugePageDefrag = "string"
transparentHugePageEnabled = "string"
}
maxCount = int
maxPods = int
minCount = int
mode = "string"
name = "string"
nodeLabels = {
{customized property} = "string"
}
nodePublicIPPrefixID = "string"
nodeTaints = [
"string"
]
orchestratorVersion = "string"
osDiskSizeGB = int
osDiskType = "string"
osSKU = "string"
osType = "string"
podSubnetID = "string"
powerState = {
code = "string"
}
proximityPlacementGroupID = "string"
scaleDownMode = "string"
scaleSetEvictionPolicy = "string"
scaleSetPriority = "string"
spotMaxPrice = "decimal-as-string"
tags = {}
type = "string"
upgradeSettings = {
maxSurge = "string"
}
vmSize = "string"
vnetSubnetID = "string"
workloadRuntime = "string"
}
]
apiServerAccessProfile = {
authorizedIPRanges = [
"string"
]
disableRunCommand = bool
enablePrivateCluster = bool
enablePrivateClusterPublicFQDN = bool
privateDNSZone = "string"
}
autoScalerProfile = {
balance-similar-node-groups = "string"
expander = "string"
max-empty-bulk-delete = "string"
max-graceful-termination-sec = "string"
max-node-provision-time = "string"
max-total-unready-percentage = "string"
new-pod-scale-up-delay = "string"
ok-total-unready-count = "string"
scale-down-delay-after-add = "string"
scale-down-delay-after-delete = "string"
scale-down-delay-after-failure = "string"
scale-down-unneeded-time = "string"
scale-down-unready-time = "string"
scale-down-utilization-threshold = "string"
scan-interval = "string"
skip-nodes-with-local-storage = "string"
skip-nodes-with-system-pods = "string"
}
autoUpgradeProfile = {
upgradeChannel = "string"
}
disableLocalAccounts = bool
diskEncryptionSetID = "string"
dnsPrefix = "string"
enablePodSecurityPolicy = bool
enableRBAC = bool
fqdnSubdomain = "string"
httpProxyConfig = {
httpProxy = "string"
httpsProxy = "string"
noProxy = [
"string"
]
trustedCa = "string"
}
identityProfile = {
{customized property} = {
clientId = "string"
objectId = "string"
resourceId = "string"
}
}
kubernetesVersion = "string"
linuxProfile = {
adminUsername = "string"
ssh = {
publicKeys = [
{
keyData = "string"
}
]
}
}
networkProfile = {
dnsServiceIP = "string"
dockerBridgeCidr = "string"
ipFamilies = [
"string"
]
loadBalancerProfile = {
allocatedOutboundPorts = int
effectiveOutboundIPs = [
{
id = "string"
}
]
enableMultipleStandardLoadBalancers = bool
idleTimeoutInMinutes = int
managedOutboundIPs = {
count = int
countIPv6 = int
}
outboundIPPrefixes = {
publicIPPrefixes = [
{
id = "string"
}
]
}
outboundIPs = {
publicIPs = [
{
id = "string"
}
]
}
}
loadBalancerSku = "string"
natGatewayProfile = {
effectiveOutboundIPs = [
{
id = "string"
}
]
idleTimeoutInMinutes = int
managedOutboundIPProfile = {
count = int
}
}
networkMode = "string"
networkPlugin = "string"
networkPolicy = "string"
outboundType = "string"
podCidr = "string"
podCidrs = [
"string"
]
serviceCidr = "string"
serviceCidrs = [
"string"
]
}
nodeResourceGroup = "string"
podIdentityProfile = {
allowNetworkPluginKubenet = bool
enabled = bool
userAssignedIdentities = [
{
bindingSelector = "string"
identity = {
clientId = "string"
objectId = "string"
resourceId = "string"
}
name = "string"
namespace = "string"
}
]
userAssignedIdentityExceptions = [
{
name = "string"
namespace = "string"
podLabels = {
{customized property} = "string"
}
}
]
}
privateLinkResources = [
{
groupId = "string"
id = "string"
name = "string"
requiredMembers = [
"string"
]
type = "string"
}
]
publicNetworkAccess = "string"
securityProfile = {
azureDefender = {
enabled = bool
logAnalyticsWorkspaceResourceId = "string"
}
}
servicePrincipalProfile = {
clientId = "string"
secret = "string"
}
storageProfile = {
diskCSIDriver = {
enabled = bool
}
fileCSIDriver = {
enabled = bool
}
snapshotController = {
enabled = bool
}
}
windowsProfile = {
adminPassword = "string"
adminUsername = "string"
enableCSIProxy = bool
gmsaProfile = {
dnsServer = "string"
enabled = bool
rootDomainName = "string"
}
licenseType = "string"
}
}
sku = {
name = "Basic"
tier = "string"
}
extendedLocation = {
name = "string"
type = "EdgeZone"
}
})
}
Valores de propiedad
managedClusters
Nombre | Descripción | Valor |
---|---|---|
tipo | El tipo de recurso | "Microsoft.ContainerService/managedClusters@2022-04-01" |
nombre | El nombre del recurso | string (obligatorio) Límite de caracteres: 1-63 Caracteres válidos: Caracteres alfanuméricos, caracteres de subrayado y guiones. Comience y termine con alfanumérico. |
ubicación | Ubicación geográfica donde reside el recurso | string (obligatorio) |
parent_id | Para realizar la implementación en un grupo de recursos, use el identificador de ese grupo de recursos. | string (obligatorio) |
Etiquetas | Etiquetas de recursos. | Diccionario de nombres y valores de etiqueta. |
Sku | SKU del clúster administrado. | managedClusterSKU de |
extendedLocation | Ubicación extendida de la máquina virtual. | ExtendedLocation |
identidad | Identidad del clúster administrado, si está configurada. | managedClusterIdentity de |
Propiedades | Propiedades de un clúster administrado. | managedClusterProperties |
ExtendedLocation
Nombre | Descripción | Valor |
---|---|---|
nombre | Nombre de la ubicación extendida. | cuerda |
tipo | Tipo de la ubicación extendida. | "EdgeZone" |
ManagedClusterIdentity
Nombre | Descripción | Valor |
---|---|---|
tipo | Para obtener más información, consulte usar identidades administradas en AKS. | "SystemAssigned" "UserAssigned" |
identity_ids | Las claves deben ser identificadores de recursos de ARM con el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. | Matriz de identificadores de identidad de usuario. |
ManagedClusterIdentityUserAssignedIdentities
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | managedServiceIdentityUserAssignedIdentitiesValue |
ManagedServiceIdentityUserAssignedIdentitiesValue
Este objeto no contiene ninguna propiedad que se establezca durante la implementación. Todas las propiedades son ReadOnly.
ManagedClusterProperties
Nombre | Descripción | Valor |
---|---|---|
aadProfile | Configuración de Azure Active Directory. | ManagedClusterAADProfile |
addonProfiles | Perfil del complemento de clúster administrado. | managedClusterPropertiesAddonProfiles |
agentPoolProfiles | Propiedades del grupo de agentes. | managedClusterAgentPoolProfile [] |
apiServerAccessProfile | Perfil de acceso para el servidor de API de clúster administrado. | ManagedClusterAPIServerAccessProfile |
autoScalerProfile | Parámetros que se van a aplicar al escalador automático del clúster cuando está habilitado | managedClusterPropertiesAutoScalerProfile |
autoUpgradeProfile | Configuración de actualización automática. | ManagedClusterAutoUpgradeProfile |
disableLocalAccounts | Si se establece en true, la obtención de credenciales estáticas se deshabilitará para este clúster. Esto solo se debe usar en clústeres administrados habilitados para AAD. Para obtener más información, consulte deshabilitar las cuentas locales. | Bool |
diskEncryptionSetID | Este es el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}' | cuerda |
dnsPrefix | No se puede actualizar una vez creado el clúster administrado. | cuerda |
enablePodSecurityPolicy | (EN DESUSO) Indica si se va a habilitar la directiva de seguridad de pods de Kubernetes (versión preliminar). Esta característica se establece para su eliminación el 15 de octubre de 2020. Obtenga más información en aka.ms/aks/azpodpolicy. | Bool |
enableRBAC | Si se va a habilitar Kubernetes Role-Based Access Control. | Bool |
fqdnSubdomain | No se puede actualizar una vez creado el clúster administrado. | cuerda |
httpProxyConfig | Configuraciones para aprovisionar el clúster con servidores proxy HTTP. | managedClusterHttpProxyConfig |
identityProfile | Identidades asociadas al clúster. | managedClusterPropertiesIdentityProfile |
kubernetesVersion | Se admiten ambas versiones de revisión {major.minor.patch} (por ejemplo, 1.20.13) y {major.minor} (por ejemplo, 1.20). Cuando se especifica {major.minor}, se elige automáticamente la versión de revisión de disponibilidad general compatible más reciente. La actualización del clúster con el mismo {major.minor} una vez creado (por ejemplo, 1.14.x -} 1.14) no desencadenará una actualización, incluso si hay disponible una versión de revisión más reciente. Al actualizar un clúster de AKS compatible, no se pueden omitir las versiones secundarias de Kubernetes. Todas las actualizaciones deben realizarse secuencialmente por número de versión principal. Por ejemplo, se permiten actualizaciones entre 1.14.x -} 1.15.x o 1.15.x -} 1.16.x, pero no se permite 1.14.x -} 1.16.x. Consulte actualizar un clúster de AKS para obtener más información. | cuerda |
linuxProfile | El perfil de las máquinas virtuales Linux en el clúster administrado. | ContainerServiceLinuxProfile |
networkProfile | Perfil de configuración de red. | ContainerServiceNetworkProfile |
nodeResourceGroup | Nombre del grupo de recursos que contiene los nodos del grupo de agentes. | cuerda |
podIdentityProfile | Consulte usar de identidad de pod de AAD para obtener más información sobre la integración de identidades de pod de AAD. | ManagedClusterPodIdentityProfile |
privateLinkResources | Recursos de Private Link asociados al clúster. | PrivateLinkResource [] |
publicNetworkAccess | Permitir o denegar el acceso a la red pública para AKS | "Deshabilitado" "Habilitado" |
securityProfile | Perfil de seguridad para el clúster administrado. | ManagedClusterSecurityProfile |
servicePrincipalProfile | Información sobre una identidad de entidad de servicio para el clúster que se va a usar para manipular las API de Azure. | ManagedClusterServicePrincipalProfile |
storageProfile | Perfil de almacenamiento para el clúster administrado. | ManagedClusterStorageProfile |
windowsProfile | El perfil de las máquinas virtuales Windows en el clúster administrado. | ManagedClusterWindowsProfile |
ManagedClusterAADProfile
Nombre | Descripción | Valor |
---|---|---|
adminGroupObjectIDs | Lista de identificadores de objeto de grupo de AAD que tendrán el rol de administrador del clúster. | string[] |
clientAppID | Identificador de aplicación de AAD cliente. | cuerda |
enableAzureRBAC | Si se habilita RBAC de Azure para la autorización de Kubernetes. | Bool |
Administrado | Si se va a habilitar AAD administrado. | Bool |
serverAppID | Identificador de aplicación de AAD del servidor. | cuerda |
serverAppSecret | Secreto de aplicación de AAD del servidor. | cuerda |
tenantID | Identificador de inquilino de AAD que se va a usar para la autenticación. Si no se especifica, usará el inquilino de la suscripción de implementación. | cuerda |
ManagedClusterPropertiesAddonProfiles
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | ManagedClusterAddonProfile |
ManagedClusterAddonProfile
Nombre | Descripción | Valor |
---|---|---|
config | Pares clave-valor para configurar un complemento. | managedClusterAddonProfileConfig |
Habilitado | Indica si el complemento está habilitado o no. | bool (obligatorio) |
ManagedClusterAddonProfileConfig
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | cuerda |
ManagedClusterAgentPoolProfile
Nombre | Descripción | Valor |
---|---|---|
availabilityZones | Lista de zonas de disponibilidad que se van a usar para los nodos. Esto solo se puede especificar si la propiedad AgentPoolType es "VirtualMachineScaleSets". | string[] |
contar | Número de agentes (VM) para hospedar contenedores de Docker. Los valores permitidos deben estar comprendidos entre 0 y 1000 (ambos incluidos) para los grupos de usuarios y en el intervalo de 1 a 1000 (ambos incluidos) para los grupos del sistema. El valor predeterminado es 1. | Int |
creationData | CreationData que se usará para especificar el identificador de instantánea de origen si el grupo de nodos se creará o actualizará mediante una instantánea. | CreationData |
enableAutoScaling | Si se va a habilitar el escalador automático | Bool |
enableEncryptionAtHost | Esto solo se admite en determinados tamaños de máquina virtual y en determinadas regiones de Azure. Para más información, consulte : /azure/aks/enable-host-encryption | Bool |
enableFIPS | Consulte Agregar un grupo de nodos habilitado para FIPS para obtener más información. | Bool |
enableNodePublicIP | Algunos escenarios pueden requerir que los nodos de un grupo de nodos reciban sus propias direcciones IP públicas dedicadas. Un escenario común es para las cargas de trabajo de juegos, donde una consola debe realizar una conexión directa a una máquina virtual en la nube para minimizar los saltos. Para obtener más información, consulte asignación de una dirección IP pública por nodo. El valor predeterminado es false. | Bool |
enableUltraSSD | Si se va a habilitar UltraSSD | Bool |
gpuInstanceProfile | GPUInstanceProfile que se usará para especificar el perfil de instancia de MIG de GPU para la SKU de máquina virtual de GPU compatible. | "MIG1g" "MIG2g" "MIG3g" "MIG4g" "MIG7g" |
kubeletConfig | Configuración de Kubelet en los nodos del grupo de agentes. | kubeletConfig |
kubeletDiskType | Determina la ubicación de volúmenes emptyDir, raíz de datos del entorno de ejecución del contenedor y almacenamiento efímero de Kubelet. | "SO" "Temporal" |
linuxOSConfig | Configuración del sistema operativo de los nodos del agente de Linux. | LinuxOSConfig |
maxCount | Número máximo de nodos para el escalado automático | Int |
maxPods | Número máximo de pods que se pueden ejecutar en un nodo. | Int |
minCount | El número mínimo de nodos para el escalado automático | Int |
modo | Un clúster debe tener al menos un grupo de agentes "System" en todo momento. Para más información sobre las restricciones y los procedimientos recomendados del grupo de agentes, consulte: /azure/aks/use-system-pools. | "Sistema" "Usuario" |
nombre | Los nombres del grupo de agentes de Windows deben tener 6 caracteres o menos. | string (obligatorio) Restricciones: Patrón = ^[a-z][a-z0-9]{0,11}$ |
nodeLabels | Las etiquetas de nodo que se conservarán en todos los nodos del grupo de agentes. | managedClusterAgentPoolProfilePropertiesNodeLabels |
nodePublicIPPrefixID | Este es el formato: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} | cuerda |
nodeTaints | Los taints agregados a los nuevos nodos durante la creación y escala del grupo de nodos. Por ejemplo, key=value:NoSchedule. | string[] |
orchestratorVersion | Se admiten ambas versiones de revisión {major.minor.patch} (por ejemplo, 1.20.13) y {major.minor} (por ejemplo, 1.20). Cuando se especifica {major.minor}, se elige automáticamente la versión de revisión de disponibilidad general compatible más reciente. La actualización del clúster con el mismo {major.minor} una vez creado (por ejemplo, 1.14.x -} 1.14) no desencadenará una actualización, incluso si hay disponible una versión de revisión más reciente. Como procedimiento recomendado, debe actualizar todos los grupos de nodos de un clúster de AKS a la misma versión de Kubernetes. La versión del grupo de nodos debe tener la misma versión principal que el plano de control. La versión secundaria del grupo de nodos debe estar dentro de dos versiones secundarias de la versión del plano de control. La versión del grupo de nodos no puede ser mayor que la versión del plano de control. Para obtener más información, consulte actualizar un grupo de nodos. | cuerda |
osDiskSizeGB | Tamaño del disco del sistema operativo en GB que se va a usar para especificar el tamaño del disco para cada máquina del grupo de servidores maestros o agentes. Si especifica 0, se aplicará el tamaño predeterminado de osDisk según el valor de vmSize especificado. | Int Restricciones: Valor mínimo = 0 Valor máximo = 2048 |
osDiskType | El valor predeterminado es "Efímero" si la máquina virtual la admite y tiene un disco de caché mayor que el OSDiskSizeGB solicitado. De lo contrario, el valor predeterminado es "Administrado". Es posible que no se cambie después de la creación. Para obtener más información, consulte del sistema operativo efímero. | "Efímero" "Administrado" |
osSKU | Especifica una SKU del sistema operativo. Este valor no se debe especificar si OSType es Windows. | "CBLMariner" "Ubuntu" |
osType | Tipo de sistema operativo. El valor predeterminado es Linux. | "Linux" "Windows" |
podSubnetID | Si se omite, las direcciones IP de pod se asignan estáticamente en la subred del nodo (consulte vnetSubnetID para obtener más detalles). Este es el formato: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} | cuerda |
powerState | Cuando se crea por primera vez un grupo de agentes, se ejecuta inicialmente. El grupo de agentes se puede detener estableciendo este campo en Detenido. Un grupo de agentes detenido detiene todas sus máquinas virtuales y no acumula cargos de facturación. Un grupo de agentes solo se puede detener si se está ejecutando y el estado de aprovisionamiento es Correcto | powerState |
proximityPlacementGroupID | Identificador del grupo de selección de ubicación de proximidad. | cuerda |
scaleDownMode | Esto también afecta al comportamiento del escalador automático del clúster. Si no se especifica, el valor predeterminado es Eliminar. | "Desasignar" "Eliminar" |
scaleSetEvictionPolicy | No se puede especificar a menos que scaleSetPriority sea "Spot". Si no se especifica, el valor predeterminado es "Delete". | "Desasignar" "Eliminar" |
scaleSetPriority | Prioridad del conjunto de escalado de máquinas virtuales. Si no se especifica, el valor predeterminado es "Regular". | "Normal" "Spot" |
spotMaxPrice | Los valores posibles son cualquier valor decimal mayor que cero o -1 que indica la voluntad de pagar cualquier precio a petición. Para obtener más información sobre los precios puntuales, consulte precios de máquinas virtuales puntuales Especificar un valor decimal como una cadena. | int o json decimal |
Etiquetas | Etiquetas que se van a conservar en el conjunto de escalado de máquinas virtuales del grupo de agentes. | objeto |
tipo | Tipo de grupo de agentes. | "AvailabilitySet" "VirtualMachineScaleSets" |
upgradeSettings | Configuración para actualizar el grupo de agentes | AgentPoolUpgradeSettings |
vmSize | La disponibilidad del tamaño de máquina virtual varía según la región. Si un nodo contiene recursos de proceso insuficientes (memoria, cpu, etcetera) podría no ejecutarse correctamente. Para más información sobre los tamaños de máquina virtual restringidos, consulte: /azure/aks/quotas-skus-regions | cuerda |
vnetSubnetID | Si no se especifica, se generará y usará una red virtual y una subred. Si no se especifica ningún podSubnetID, esto se aplica a nodos y pods; de lo contrario, se aplica solo a los nodos. Este es el formato: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} | cuerda |
workloadRuntime | Determina el tipo de carga de trabajo que puede ejecutar un nodo. | "OCIContainer" "WasmWasi" |
CreationData
Nombre | Descripción | Valor |
---|---|---|
sourceResourceId | Este es el identificador de ARM del objeto de origen que se va a usar para crear el objeto de destino. | cuerda |
KubeletConfig
Nombre | Descripción | Valor |
---|---|---|
allowedUnsafeSysctls | Lista permitida de sysctls no seguros o patrones sysctl no seguros (que terminan en * ). |
string[] |
containerLogMaxFiles | Número máximo de archivos de registro de contenedor que pueden estar presentes para un contenedor. El número debe ser ≥ 2. | Int Restricciones: Valor mínimo = 2 |
containerLogMaxSizeMB | Tamaño máximo (por ejemplo, 10Mi) del archivo de registro de contenedor antes de girarlo. | Int |
cpuCfsQuota | El valor predeterminado es true. | Bool |
cpuCfsQuotaPeriod | El valor predeterminado es "100ms". Los valores válidos son una secuencia de números decimales con una fracción opcional y un sufijo de unidad. Por ejemplo: "300 ms", "2h45m". Las unidades admitidas son "ns", "us", "ms", "s", "m" y "h". | cuerda |
cpuManagerPolicy | El valor predeterminado es "none". Consulte directivas de administración de CPU de Kubernetes para obtener más información. Los valores permitidos son "none" y "static". | cuerda |
failSwapOn | Si se establece en true, se producirá un error al iniciar Kubelet si el intercambio está habilitado en el nodo. | Bool |
imageGcHighThreshold | Para deshabilitar la recolección de elementos no utilizados de imagen, establezca en 100. El valor predeterminado es 85% | Int |
imageGcLowThreshold | Esto no se puede establecer más alto que imageGcHighThreshold. El valor predeterminado es 80% | Int |
podMaxPids | Número máximo de procesos por pod. | Int |
topologyManagerPolicy | Para obtener más información, consulte administrador de topologías de Kubernetes. El valor predeterminado es "none". Los valores permitidos son "none", "best-effort", "restricted" y "single-numa-node". | cuerda |
LinuxOSConfig
SysctlConfig
Nombre | Descripción | Valor |
---|---|---|
fsAioMaxNr | Configuración de Sysctl fs.aio-max-nr. | Int |
fsFileMax | Configuración de Sysctl fs.file-max. | Int |
fsInotifyMaxUserWatches | Configuración de Sysctl fs.inotify.max_user_watches. | Int |
fsNrOpen | Configuración de Sysctl fs.nr_open. | Int |
kernelThreadsMax | Configuración de Sysctl kernel.threads-max. | Int |
netCoreNetdevMaxBacklog | Configuración de Sysctl net.core.netdev_max_backlog. | Int |
netCoreOptmemMax | Configuración de Sysctl net.core.optmem_max. | Int |
netCoreRmemDefault | Configuración de Sysctl net.core.rmem_default. | Int |
netCoreRmemMax | Configuración de Sysctl net.core.rmem_max. | Int |
netCoreSomaxconn | Configuración de Sysctl net.core.somaxconn. | Int |
netCoreWmemDefault | Configuración de Sysctl net.core.wmem_default. | Int |
netCoreWmemMax | Configuración de Sysctl net.core.wmem_max. | Int |
netIpv4IpLocalPortRange | Configuración de Sysctl net.ipv4.ip_local_port_range. | cuerda |
netIpv4NeighDefaultGcThresh1 | Configuración de Sysctl net.ipv4.neigh.default.gc_thresh1. | Int |
netIpv4NeighDefaultGcThresh2 | Configuración de Sysctl net.ipv4.neigh.default.gc_thresh2. | Int |
netIpv4NeighDefaultGcThresh3 | Configuración de Sysctl net.ipv4.neigh.default.gc_thresh3. | Int |
netIpv4TcpFinTimeout | Configuración de Sysctl net.ipv4.tcp_fin_timeout. | Int |
netIpv4TcpkeepaliveIntvl | Configuración de Sysctl net.ipv4.tcp_keepalive_intvl. | Int |
netIpv4TcpKeepaliveProbes | Configuración de Sysctl net.ipv4.tcp_keepalive_probes. | Int |
netIpv4TcpKeepaliveTime | Configuración de Sysctl net.ipv4.tcp_keepalive_time. | Int |
netIpv4TcpMaxSynBacklog | Configuración de Sysctl net.ipv4.tcp_max_syn_backlog. | Int |
netIpv4TcpMaxTwBuckets | Configuración de Sysctl net.ipv4.tcp_max_tw_buckets. | Int |
netIpv4TcpTwReuse | Configuración de Sysctl net.ipv4.tcp_tw_reuse. | Bool |
netNetfilterNfConntrackBuckets | Configuración de Sysctl net.netfilter.nf_conntrack_buckets. | Int |
netNetfilterNfConntrackMax | Configuración de Sysctl net.netfilter.nf_conntrack_max. | Int |
vmMaxMapCount | Configuración de Sysctl vm.max_map_count. | Int |
vmSwappiness | Configuración de Sysctl vm.swappiness. | Int |
vmVfsCachePressure | Configuración de Sysctl vm.vfs_cache_pressure. | Int |
ManagedClusterAgentPoolProfilePropertiesNodeLabels
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | cuerda |
PowerState
Nombre | Descripción | Valor |
---|---|---|
código | Indica si el clúster está en ejecución o detenido. | "En ejecución" "Detenido" |
AgentPoolUpgradeSettings
Nombre | Descripción | Valor |
---|---|---|
maxSurge | Esto puede establecerse en un entero (por ejemplo, "5") o en un porcentaje (por ejemplo, "50%"). Si se especifica un porcentaje, es el porcentaje del tamaño total del grupo de agentes en el momento de la actualización. En porcentajes, los nodos fraccionarios se redondean hacia arriba. Si no se especifica, el valor predeterminado es 1. Para obtener más información, incluidos los procedimientos recomendados, consulte: /azure/aks/upgrade-cluster#customize-node-surge-upgrade | cuerda |
ManagedClusterAPIServerAccessProfile
Nombre | Descripción | Valor |
---|---|---|
authorizedIPRanges | Los intervalos IP se especifican en formato CIDR, por ejemplo, 137.117.106.88/29. Esta característica no es compatible con clústeres que usan ip pública por nodo o clústeres que usan un equilibrador de carga básico. Para obtener más información, consulte intervalos IP autorizados del servidor de API. | string[] |
disableRunCommand | Si se deshabilita el comando run para el clúster o no. | Bool |
enablePrivateCluster | Para obtener más información, consulte Creación de un clúster de AKS privado. | Bool |
enablePrivateClusterPublicFQDN | Si se va a crear un FQDN público adicional para el clúster privado o no. | Bool |
privateDNSZone | El valor predeterminado es System. Para obtener más información, consulte configurar la zona DNS privada. Los valores permitidos son "system" y "none". | cuerda |
ManagedClusterPropertiesAutoScalerProfile
ManagedClusterAutoUpgradeProfile
Nombre | Descripción | Valor |
---|---|---|
upgradeChannel | Para obtener más información, consulte configuración del canal de actualización automática del clúster de AKS. | "node-image" "none" "revisión" "rápido" "estable" |
ManagedClusterHttpProxyConfig
Nombre | Descripción | Valor |
---|---|---|
httpProxy | Punto de conexión del servidor proxy HTTP que se va a usar. | cuerda |
httpsProxy | Punto de conexión del servidor proxy HTTPS que se va a usar. | cuerda |
noProxy | Los puntos de conexión que no deben pasar por el proxy. | string[] |
trustedCa | Certificado de ENTIDAD de certificación alternativo que se usará para conectarse a servidores proxy. | cuerda |
ManagedClusterPropertiesIdentityProfile
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | UserAssignedIdentity |
UserAssignedIdentity
Nombre | Descripción | Valor |
---|---|---|
clientId | Identificador de cliente de la identidad asignada por el usuario. | cuerda |
objectId | Identificador de objeto de la identidad asignada por el usuario. | cuerda |
resourceId | Identificador de recurso de la identidad asignada por el usuario. | cuerda |
ContainerServiceLinuxProfile
Nombre | Descripción | Valor |
---|---|---|
adminUsername | Nombre de usuario del administrador que se va a usar para máquinas virtuales Linux. | string (obligatorio) Restricciones: Patrón = ^[A-Za-z][-A-Za-z0-9_]*$ |
ssh | Configuración de SSH para máquinas virtuales basadas en Linux que se ejecutan en Azure. | containerServiceSshConfiguration (obligatorio) |
ContainerServiceSshConfiguration
Nombre | Descripción | Valor |
---|---|---|
publicKeys | Lista de claves públicas SSH que se usan para autenticarse con máquinas virtuales basadas en Linux. Se puede especificar un máximo de 1 clave. | ContainerServiceSshPublicKey[] (obligatorio) |
ContainerServiceSshPublicKey
Nombre | Descripción | Valor |
---|---|---|
keyData | Clave pública de certificado que se usa para autenticarse con máquinas virtuales a través de SSH. El certificado debe estar en formato PEM con o sin encabezados. | string (obligatorio) |
ContainerServiceNetworkProfile
Nombre | Descripción | Valor |
---|---|---|
dnsServiceIP | Una dirección IP asignada al servicio DNS de Kubernetes. Debe estar dentro del intervalo de direcciones del servicio kubernetes especificado en serviceCidr. | cuerda Restricciones: Patrón = ^(?:(?: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 | Intervalo IP de notación CIDR asignado a la red del puente de Docker. No se debe superponer con ningún intervalo IP de subred ni con el intervalo de direcciones del servicio Kubernetes. | cuerda Restricciones: Patrón = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
ipFamilies | Las familias ip se usan para determinar clústeres de pila única o de doble pila. Para una sola pila, el valor esperado es IPv4. En el caso de la pila doble, los valores esperados son IPv4 e IPv6. | Matriz de cadenas que contiene cualquiera de: "IPv4" "IPv6" |
loadBalancerProfile | Perfil del equilibrador de carga del clúster. | ManagedClusterLoadBalancerProfile |
loadBalancerSku | El valor predeterminado es "estándar". Consulte SKU de Azure Load Balancer para obtener más información sobre las diferencias entre las SKU del equilibrador de carga. | "básico" "estándar" |
natGatewayProfile | Perfil de la puerta de enlace NAT del clúster. | ManagedClusterNATGatewayProfile |
networkMode | No se puede especificar si networkPlugin es distinto de "azure". | "puente" "transparente" |
networkPlugin | Complemento de red que se usa para compilar la red de Kubernetes. | "azure" "kubenet" |
networkPolicy | Directiva de red que se usa para compilar la red de Kubernetes. | "azure" "calico" |
outboundType | Esto solo se puede establecer en el momento de creación del clúster y no se puede cambiar más adelante. Para obtener más información, vea tipo de salida. | "loadBalancer" "managedNATGateway" "userAssignedNATGateway" "userDefinedRouting" |
podCidr | Intervalo IP de notación CIDR desde el que se van a asignar direcciones IP de pod cuando se usa kubenet. | cuerda Restricciones: Patrón = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
podCidrs | Se espera un CIDR IPv4 para las redes de una sola pila. Se esperan dos CIDR, uno para cada familia IP (IPv4/IPv6) para las redes de doble pila. | string[] |
serviceCidr | Intervalo IP de notación CIDR desde el que se van a asignar direcciones IP del clúster de servicio. No debe superponerse con ningún intervalo IP de subred. | cuerda Restricciones: Patrón = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
serviceCidrs | Se espera un CIDR IPv4 para las redes de una sola pila. Se esperan dos CIDR, uno para cada familia IP (IPv4/IPv6) para las redes de doble pila. No deben superponerse con ningún intervalo IP de subred. | string[] |
ManagedClusterLoadBalancerProfile
Nombre | Descripción | Valor |
---|---|---|
allocatedOutboundPorts | Número deseado de puertos SNAT asignados por máquina virtual. Los valores permitidos están en el intervalo de 0 a 64000 (ambos incluidos). El valor predeterminado es 0, lo que da como resultado la asignación dinámica de puertos de Azure. | Int Restricciones: Valor mínimo = 0 Valor máximo = 64000 |
effectiveOutboundIPs | Los recursos DE IP de salida efectivos del equilibrador de carga del clúster. | ResourceReference[] |
enableMultipleStandardLoadBalancers | Habilite varios equilibradores de carga estándar por clúster de AKS o no. | Bool |
idleTimeoutInMinutes | Tiempo de espera de inactividad de flujo de salida deseado en minutos. Los valores permitidos están en el intervalo de 4 a 120 (ambos incluidos). El valor predeterminado es 30 minutos. | Int Restricciones: Valor mínimo = 4 Valor máximo = 120 |
managedOutboundIPs | Direcciones IP de salida administradas deseadas para el equilibrador de carga del clúster. | managedClusterLoadBalancerProfileManagedOutboundIPs |
outboundIPPrefixes | Recursos de prefijo ip de salida deseados para el equilibrador de carga del clúster. | ManagedClusterLoadBalancerProfileOutboundIPPrefixes |
outboundIPs | Recursos IP de salida deseados para el equilibrador de carga del clúster. | ManagedClusterLoadBalancerProfileOutboundIPs |
ResourceReference
Nombre | Descripción | Valor |
---|---|---|
identificación | Identificador completo del recurso de Azure. | cuerda |
ManagedClusterLoadBalancerProfileManagedOutboundIPs
Nombre | Descripción | Valor |
---|---|---|
contar | Número deseado de direcciones IP de salida IPv4 creadas o administradas por Azure para el equilibrador de carga del clúster. Los valores permitidos deben estar en el intervalo de 1 a 100 (ambos incluidos). El valor predeterminado es 1. | Int Restricciones: Valor mínimo = 1 Valor máximo = 100 |
countIPv6 | Número deseado de direcciones IP de salida IPv6 creadas o administradas por Azure para el equilibrador de carga del clúster. Los valores permitidos deben estar en el intervalo de 1 a 100 (ambos incluidos). El valor predeterminado es 0 para una sola pila y 1 para la pila doble. | Int Restricciones: Valor mínimo = 0 Valor máximo = 100 |
ManagedClusterLoadBalancerProfileOutboundIPPrefixes
Nombre | Descripción | Valor |
---|---|---|
publicIPPrefixes | Lista de recursos de prefijo de IP pública. | ResourceReference[] |
ManagedClusterLoadBalancerProfileOutboundIPs
Nombre | Descripción | Valor |
---|---|---|
publicIPs | Lista de recursos de ip pública. | ResourceReference[] |
ManagedClusterNATGatewayProfile
Nombre | Descripción | Valor |
---|---|---|
effectiveOutboundIPs | Los recursos ip de salida efectivos de la puerta de enlace NAT del clúster. | ResourceReference[] |
idleTimeoutInMinutes | Tiempo de espera de inactividad de flujo de salida deseado en minutos. Los valores permitidos están en el intervalo de 4 a 120 (ambos incluidos). El valor predeterminado es 4 minutos. | Int Restricciones: Valor mínimo = 4 Valor máximo = 120 |
managedOutboundIPProfile | Perfil de los recursos ip de salida administrados de la puerta de enlace NAT del clúster. | managedClusterManagedOutboundIPProfile |
ManagedClusterManagedOutboundIPProfile
Nombre | Descripción | Valor |
---|---|---|
contar | Número deseado de direcciones IP de salida creadas o administradas por Azure. Los valores permitidos deben estar en el intervalo de 1 a 16 (ambos incluidos). El valor predeterminado es 1. | Int Restricciones: Valor mínimo = 1 Valor máximo = 16 |
ManagedClusterPodIdentityProfile
Nombre | Descripción | Valor |
---|---|---|
allowNetworkPluginKubenet | La ejecución en Kubenet está deshabilitada de forma predeterminada debido a la naturaleza relacionada con la seguridad de la identidad de pod de AAD y los riesgos de suplantación de ip. Consulte mediante el complemento de red Kubenet con AAD Pod Identity para obtener más información. | Bool |
Habilitado | Indica si el complemento de identidad de pod está habilitado. | Bool |
userAssignedIdentities | Identidades de pod que se van a usar en el clúster. | managedClusterPodIdentity[] |
userAssignedIdentityExceptions | Excepciones de identidad de pod que se van a permitir. | managedClusterPodIdentityException[] |
ManagedClusterPodIdentity
ManagedClusterPodIdentityException
Nombre | Descripción | Valor |
---|---|---|
nombre | Nombre de la excepción de identidad del pod. | string (obligatorio) |
espacio de nombres | Espacio de nombres de la excepción de identidad de pod. | string (obligatorio) |
podLabels | Etiquetas de pod que se van a buscar coincidencias. | ManagedClusterPodIdentityExceptionPodLabels (obligatorio) |
ManagedClusterPodIdentityExceptionPodLabels
Nombre | Descripción | Valor |
---|---|---|
{propiedad personalizada} | cuerda |
PrivateLinkResource
Nombre | Descripción | Valor |
---|---|---|
groupId | Identificador de grupo del recurso. | cuerda |
identificación | Identificador del recurso private link. | cuerda |
nombre | Nombre del recurso private link. | cuerda |
requiredMembers | RequiredMembers del recurso | string[] |
tipo | Tipo de recurso. | cuerda |
ManagedClusterSecurityProfile
Nombre | Descripción | Valor |
---|---|---|
azureDefender | Configuración de Azure Defender para el perfil de seguridad. | ManagedClusterSecurityProfileAzureDefender |
ManagedClusterSecurityProfileAzureDefender
Nombre | Descripción | Valor |
---|---|---|
Habilitado | Si se va a habilitar Azure Defender | Bool |
logAnalyticsWorkspaceResourceId | Identificador de recurso del área de trabajo de Log Analytics que se va a asociar a Azure Defender. Cuando Azure Defender está habilitado, este campo es necesario y debe ser un identificador de recurso de área de trabajo válido. Cuando Azure Defender esté deshabilitado, deje el campo vacío. | cuerda |
ManagedClusterServicePrincipalProfile
Nombre | Descripción | Valor |
---|---|---|
clientId | Identificador de la entidad de servicio. | string (obligatorio) |
secreto | Contraseña secreta asociada a la entidad de servicio en texto sin formato. | cuerda |
ManagedClusterStorageProfile
Nombre | Descripción | Valor |
---|---|---|
diskCSIDriver | Configuración del controlador CSI de AzureDisk para el perfil de almacenamiento. | managedClusterStorageProfileDiskCSIDriver |
fileCSIDriver | Configuración del controlador CSI de AzureFile para el perfil de almacenamiento. | managedClusterStorageProfileFileCSIDriver |
snapshotController | Configuración del controlador de instantáneas para el perfil de almacenamiento. | ManagedClusterStorageProfileSnapshotController |
ManagedClusterStorageProfileDiskCSIDriver
Nombre | Descripción | Valor |
---|---|---|
Habilitado | Si se va a habilitar el controlador CSI de AzureDisk. El valor predeterminado es true. | Bool |
ManagedClusterStorageProfileFileCSIDriver
Nombre | Descripción | Valor |
---|---|---|
Habilitado | Si se va a habilitar el controlador CSI de AzureFile. El valor predeterminado es true. | Bool |
ManagedClusterStorageProfileSnapshotController
Nombre | Descripción | Valor |
---|---|---|
Habilitado | Si se va a habilitar el controlador de instantáneas. El valor predeterminado es true. | Bool |
ManagedClusterWindowsProfile
Nombre | Descripción | Valor |
---|---|---|
adminPassword | Especifica la contraseña de la cuenta de administrador. longitud mínima: 8 caracteres longitud máxima: 123 caracteres requisitos de complejidad: 3 de 4 condiciones siguientes deben cumplirse. Tiene caracteres inferiores Tiene caracteres superiores Tiene un dígito Tiene un carácter especial (coincidencia regex [\W_]) valores no permitidos: "abc@123", "P@$$w 0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" |
cuerda |
adminUsername | Especifica el nombre de la cuenta de administrador. restricción de : no puede terminar en "." valores no permitidos: "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". longitud mínima: 1 carácter longitud máxima: 20 caracteres |
string (obligatorio) |
enableCSIProxy | Para obtener más información sobre el proxy CSI, consulte el repositorio de GitHub del proxy CSI de . | Bool |
gmsaProfile | Perfil de gMSA de Windows en el clúster administrado. | WindowsGmsaProfile |
licenseType | Tipo de licencia que se va a usar para máquinas virtuales Windows. Consulte ventajas del usuario híbrido de Azure para más información. | "Ninguno" "Windows_Server" |
WindowsGmsaProfile
Nombre | Descripción | Valor |
---|---|---|
dnsServer | Especifica el servidor DNS para gMSA de Windows. Establézcalo en vacío si ha configurado el servidor DNS en la red virtual que se usa para crear el clúster administrado. |
cuerda |
Habilitado | Especifica si se va a habilitar gMSA de Windows en el clúster administrado. | Bool |
rootDomainName | Especifica el nombre de dominio raíz para gMSA de Windows. Establézcalo en vacío si ha configurado el servidor DNS en la red virtual que se usa para crear el clúster administrado. |
cuerda |