Compartilhar via


Microsoft.ContainerService managedClusters 2020-01-01

Observações

Para obter informações sobre complementos disponíveis, consulte Complementos, extensões e outras integrações com o Serviço de Kubernetes do Azure.

Definição de recurso do Bicep

O tipo de recurso managedClusters pode ser implantado com operações de destino:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte de log de alterações.

Formato de recurso

Para criar um recurso Microsoft.ContainerService/managedClusters, adicione o seguinte Bicep ao modelo.

resource symbolicname 'Microsoft.ContainerService/managedClusters@2020-01-01' = {
  identity: {
    type: 'string'
  }
  location: 'string'
  name: 'string'
  properties: {
    aadProfile: {
      clientAppID: 'string'
      serverAppID: 'string'
      serverAppSecret: 'string'
      tenantID: 'string'
    }
    addonProfiles: {
      {customized property}: {
        config: {
          {customized property}: 'string'
        }
        enabled: bool
      }
    }
    agentPoolProfiles: [
      {
        availabilityZones: [
          'string'
        ]
        count: int
        enableAutoScaling: bool
        enableNodePublicIP: bool
        maxCount: int
        maxPods: int
        minCount: int
        name: 'string'
        nodeLabels: {
          {customized property}: 'string'
        }
        nodeTaints: [
          'string'
        ]
        orchestratorVersion: 'string'
        osDiskSizeGB: int
        osType: 'string'
        scaleSetEvictionPolicy: 'string'
        scaleSetPriority: 'string'
        tags: {
          {customized property}: 'string'
        }
        type: 'string'
        vmSize: 'string'
        vnetSubnetID: 'string'
      }
    ]
    apiServerAccessProfile: {
      authorizedIPRanges: [
        'string'
      ]
      enablePrivateCluster: bool
    }
    diskEncryptionSetID: 'string'
    dnsPrefix: 'string'
    enablePodSecurityPolicy: bool
    enableRBAC: bool
    identityProfile: {
      {customized property}: {
        clientId: 'string'
        objectId: 'string'
        resourceId: 'string'
      }
    }
    kubernetesVersion: 'string'
    linuxProfile: {
      adminUsername: 'string'
      ssh: {
        publicKeys: [
          {
            keyData: 'string'
          }
        ]
      }
    }
    networkProfile: {
      dnsServiceIP: 'string'
      dockerBridgeCidr: 'string'
      loadBalancerProfile: {
        allocatedOutboundPorts: int
        effectiveOutboundIPs: [
          {
            id: 'string'
          }
        ]
        idleTimeoutInMinutes: int
        managedOutboundIPs: {
          count: int
        }
        outboundIPPrefixes: {
          publicIPPrefixes: [
            {
              id: 'string'
            }
          ]
        }
        outboundIPs: {
          publicIPs: [
            {
              id: 'string'
            }
          ]
        }
      }
      loadBalancerSku: 'string'
      networkPlugin: 'string'
      networkPolicy: 'string'
      outboundType: 'string'
      podCidr: 'string'
      serviceCidr: 'string'
    }
    nodeResourceGroup: 'string'
    servicePrincipalProfile: {
      clientId: 'string'
      secret: 'string'
    }
    windowsProfile: {
      adminPassword: 'string'
      adminUsername: 'string'
    }
  }
  tags: {
    {customized property}: 'string'
  }
}

Valores de propriedade

ContainerServiceLinuxProfile

Nome Descrição Valor
adminUsername O nome de usuário do administrador a ser usado para VMs linux. corda

Restrições:
Padrão = ^[A-Za-z][-A-Za-z0-9_]*$ (obrigatório)
ssh Configuração de SSH para VMs baseadas em Linux em execução no Azure. ContainerServiceSshConfiguration (obrigatório)

ContainerServiceNetworkProfile

Nome Descrição Valor
dnsServiceIP Um endereço IP atribuído ao serviço DNS do Kubernetes. Ele deve estar dentro do intervalo de endereços de serviço do Kubernetes especificado no serviceCidr. corda

Restrições:
Padrão = ^(?:(?: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 Um intervalo de IP de notação CIDR atribuído à rede de ponte do Docker. Ele não deve se sobrepor a nenhum intervalo de IP de sub-rede ou ao intervalo de endereços de serviço do Kubernetes. corda

Restrições:
Padrão = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
loadBalancerProfile Perfil do balanceador de carga do cluster. ManagedClusterLoadBalancerProfile
loadBalancerSku O sku do balanceador de carga para o cluster gerenciado. 'básico'
'standard'
networkPlugin Plug-in de rede usado para criar a rede do Kubernetes. 'azure'
'kubenet'
networkPolicy Política de rede usada para a criação da rede do Kubernetes. 'azure'
'calico'
outboundType O método de roteamento de saída (saída). 'loadBalancer'
'userDefinedRouting'
podCidr Um intervalo de IP de notação CIDR do qual atribuir IPs de pod quando kubenet é usado. corda

Restrições:
Padrão = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
serviceCidr Um intervalo de IP de notação CIDR do qual atribuir IPs de cluster de serviço. Ele não deve se sobrepor a nenhum intervalo de IP de sub-rede. corda

Restrições:
Padrão = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$

ContainerServiceSshConfiguration

Nome Descrição Valor
publicKeys A lista de chaves públicas SSH usadas para autenticar com VMs baseadas em Linux. Espere apenas uma chave especificada. ContainerServiceSshPublicKey [] (obrigatório)

ContainerServiceSshPublicKey

Nome Descrição Valor
keyData Chave pública de certificado usada para autenticar com VMs por meio do SSH. O certificado deve estar no formato PEM com ou sem cabeçalhos. cadeia de caracteres (obrigatório)

ManagedClusterAADProfile

Nome Descrição Valor
clientAppID A ID do aplicativo AAD do cliente. cadeia de caracteres (obrigatório)
serverAppID A ID do aplicativo AAD do servidor. cadeia de caracteres (obrigatório)
serverAppSecret O segredo do aplicativo AAD do servidor. corda
tenantID A ID do locatário do AAD a ser usada para autenticação. Se não for especificado, usará o locatário da assinatura de implantação. corda

ManagedClusterAddonProfile

Nome Descrição Valor
configuração Pares chave-valor para configurar um complemento. ManagedClusterAddonProfileConfig
Habilitado Se o complemento está habilitado ou não. bool (obrigatório)

ManagedClusterAddonProfileConfig

Nome Descrição Valor

ManagedClusterAgentPoolProfile

Nome Descrição Valor
availabilityZones Zonas de disponibilidade para nós. Deve usar VirtualMachineScaleSets AgentPoolType. string[]
contar Número de agentes (VMs) para hospedar contêineres do Docker. Os valores permitidos devem estar no intervalo de 1 a 100 (inclusive). O valor padrão é 1. int
enableAutoScaling Se o dimensionador automático deve ser habilitado Bool
enableNodePublicIP Habilitar IP público para nós Bool
maxCount Número máximo de nós para dimensionamento automático int
maxPods Número máximo de pods que podem ser executados em um nó. int
minCount Número mínimo de nós para dimensionamento automático int
nome Nome exclusivo do perfil do pool de agentes no contexto da assinatura e do grupo de recursos. corda

Restrições:
Padrão = ^[a-z][a-z0-9]{0,11}$ (obrigatório)
nodeLabels Rótulos de nó do pool de agentes a serem persistidos em todos os nós no pool de agentes. ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodeTaints Taints adicionados a novos nós durante a criação e a escala do pool de nós. Por exemplo, key=value:NoSchedule. string[]
orchestratorVersion Versão do orquestrador especificada ao criar o cluster gerenciado. corda
osDiskSizeGB Tamanho do disco do sistema operacional em GB a ser usado para especificar o tamanho do disco para cada computador neste pool mestre/agente. Se você especificar 0, ele aplicará o tamanho do osDisk padrão de acordo com o vmSize especificado. int

Restrições:
Valor mínimo = 0
Valor máximo = 1023
osType OsType a ser usado para especificar o tipo de sistema operacional. Escolha entre Linux e Windows. Padrão para Linux. 'Linux'
'Windows'
scaleSetEvictionPolicy ScaleSetEvictionPolicy a ser usado para especificar a política de remoção para o conjunto de dimensionamento de máquinas virtuais de baixa prioridade. Padrão para Excluir. 'Desalocar'
'Delete'
scaleSetPriority ScaleSetPriority a ser usado para especificar a prioridade do conjunto de dimensionamento de máquinas virtuais. Padrão para regular. 'Baixo'
'Regular'
Tags Marcas de pool de agentes a serem mantidas no conjunto de dimensionamento de máquinas virtuais do pool de agentes. ManagedClusterAgentPoolProfilePropertiesTags
tipo AgentPoolType representa tipos de um pool de agentes 'AvailabilitySet'
'VirtualMachineScaleSets'
vmSize Tamanho das VMs do agente. 'Standard_A1'
'Standard_A10'
'Standard_A11'
'Standard_A1_v2'
'Standard_A2'
'Standard_A2m_v2'
'Standard_A2_v2'
'Standard_A3'
'Standard_A4'
'Standard_A4m_v2'
'Standard_A4_v2'
'Standard_A5'
'Standard_A6'
'Standard_A7'
'Standard_A8'
'Standard_A8m_v2'
'Standard_A8_v2'
'Standard_A9'
'Standard_B2ms'
'Standard_B2s'
'Standard_B4ms'
'Standard_B8ms'
'Standard_D1'
'Standard_D11'
'Standard_D11_v2'
'Standard_D11_v2_Promo'
'Standard_D12'
'Standard_D12_v2'
'Standard_D12_v2_Promo'
'Standard_D13'
'Standard_D13_v2'
'Standard_D13_v2_Promo'
'Standard_D14'
'Standard_D14_v2'
'Standard_D14_v2_Promo'
'Standard_D15_v2'
'Standard_D16s_v3'
'Standard_D16_v3'
'Standard_D1_v2'
'Standard_D2'
'Standard_D2s_v3'
'Standard_D2_v2'
'Standard_D2_v2_Promo'
'Standard_D2_v3'
'Standard_D3'
'Standard_D32s_v3'
'Standard_D32_v3'
'Standard_D3_v2'
'Standard_D3_v2_Promo'
'Standard_D4'
'Standard_D4s_v3'
'Standard_D4_v2'
'Standard_D4_v2_Promo'
'Standard_D4_v3'
'Standard_D5_v2'
'Standard_D5_v2_Promo'
'Standard_D64s_v3'
'Standard_D64_v3'
'Standard_D8s_v3'
'Standard_D8_v3'
'Standard_DS1'
'Standard_DS11'
'Standard_DS11_v2'
'Standard_DS11_v2_Promo'
'Standard_DS12'
'Standard_DS12_v2'
'Standard_DS12_v2_Promo'
'Standard_DS13'
'Standard_DS13-2_v2'
'Standard_DS13-4_v2'
'Standard_DS13_v2'
'Standard_DS13_v2_Promo'
'Standard_DS14'
'Standard_DS14-4_v2'
'Standard_DS14-8_v2'
'Standard_DS14_v2'
'Standard_DS14_v2_Promo'
'Standard_DS15_v2'
'Standard_DS1_v2'
'Standard_DS2'
'Standard_DS2_v2'
'Standard_DS2_v2_Promo'
'Standard_DS3'
'Standard_DS3_v2'
'Standard_DS3_v2_Promo'
'Standard_DS4'
'Standard_DS4_v2'
'Standard_DS4_v2_Promo'
'Standard_DS5_v2'
'Standard_DS5_v2_Promo'
'Standard_E16s_v3'
'Standard_E16_v3'
'Standard_E2s_v3'
'Standard_E2_v3'
'Standard_E32-16s_v3'
'Standard_E32-8s_v3'
'Standard_E32s_v3'
'Standard_E32_v3'
'Standard_E4s_v3'
'Standard_E4_v3'
'Standard_E64-16s_v3'
'Standard_E64-32s_v3'
'Standard_E64s_v3'
'Standard_E64_v3'
'Standard_E8s_v3'
'Standard_E8_v3'
'Standard_F1'
'Standard_F16'
'Standard_F16s'
'Standard_F16s_v2'
'Standard_F1s'
'Standard_F2'
'Standard_F2s'
'Standard_F2s_v2'
'Standard_F32s_v2'
'Standard_F4'
'Standard_F4s'
'Standard_F4s_v2'
'Standard_F64s_v2'
'Standard_F72s_v2'
'Standard_F8'
'Standard_F8s'
'Standard_F8s_v2'
'Standard_G1'
'Standard_G2'
'Standard_G3'
'Standard_G4'
'Standard_G5'
'Standard_GS1'
'Standard_GS2'
'Standard_GS3'
'Standard_GS4'
'Standard_GS4-4'
'Standard_GS4-8'
'Standard_GS5'
'Standard_GS5-16'
'Standard_GS5-8'
'Standard_H16'
'Standard_H16m'
'Standard_H16mr'
'Standard_H16r'
'Standard_H8'
'Standard_H8m'
'Standard_L16s'
'Standard_L32s'
'Standard_L4s'
'Standard_L8s'
'Standard_M128-32ms'
'Standard_M128-64ms'
'Standard_M128ms'
'Standard_M128s'
'Standard_M64-16ms'
'Standard_M64-32ms'
'Standard_M64ms'
'Standard_M64s'
'Standard_NC12'
'Standard_NC12s_v2'
'Standard_NC12s_v3'
'Standard_NC24'
'Standard_NC24r'
'Standard_NC24rs_v2'
'Standard_NC24rs_v3'
'Standard_NC24s_v2'
'Standard_NC24s_v3'
'Standard_NC6'
'Standard_NC6s_v2'
'Standard_NC6s_v3'
'Standard_ND12s'
'Standard_ND24rs'
'Standard_ND24s'
'Standard_ND6s'
'Standard_NV12'
'Standard_NV24'
'Standard_NV6'
vnetSubnetID A SubnetID da VNet especifica o identificador de sub-rede da VNet. corda

ManagedClusterAgentPoolProfilePropertiesNodeLabels

Nome Descrição Valor

ManagedClusterAgentPoolProfilePropertiesTags

Nome Descrição Valor

ManagedClusterAPIServerAccessProfile

Nome Descrição Valor
authorizedIPRanges Intervalos de IP autorizados para o servidor de API do kubernetes. string[]
enablePrivateCluster Se o cluster deve ser criado como um cluster privado ou não. Bool

ManagedClusterIdentity

Nome Descrição Valor
tipo O tipo de identidade usado para o cluster gerenciado. O tipo 'SystemAssigned' usará uma identidade criada implicitamente em componentes mestres e uma identidade atribuída pelo usuário criada automaticamente em MC_ grupo de recursos em nós do agente. O tipo 'None' não usará MSI para o cluster gerenciado, a entidade de serviço será usada em vez disso. 'None'
'SystemAssigned'

ManagedClusterLoadBalancerProfile

Nome Descrição Valor
allocatedOutboundPorts Número desejado de portas SNAT alocadas por VM. Os valores permitidos devem estar no intervalo de 0 a 64000 (inclusive). O valor padrão é 0, o que resulta na alocação dinâmica de portas do Azure. int

Restrições:
Valor mínimo = 0
Valor máximo = 64000
effectiveOutboundIPs Os recursos de IP de saída efetivos do balanceador de carga do cluster. ResourceReference []
idleTimeoutInMinutes Tempo limite de ociosidade do fluxo de saída desejado em minutos. Os valores permitidos devem estar no intervalo de 4 a 120 (inclusive). O valor padrão é 30 minutos. int

Restrições:
Valor mínimo = 4
Valor máximo = 120
managedOutboundIPs IPs de saída gerenciados desejados para o balanceador de carga do cluster. ManagedClusterLoadBalancerProfileManagedOutboundIPs
outboundIPPrefixes Recursos de prefixo de IP de saída desejados para o balanceador de carga do cluster. ManagedClusterLoadBalancerProfileOutboundIPPrefixes
outboundIPs Recursos de IP de saída desejados para o balanceador de carga do cluster. ManagedClusterLoadBalancerProfileOutboundIPs

ManagedClusterLoadBalancerProfileManagedOutboundIPs

Nome Descrição Valor
contar Número desejado de IP de saída criado/gerenciado pelo Azure para o balanceador de carga de cluster. Os valores permitidos devem estar no intervalo de 1 a 100 (inclusive). O valor padrão é 1. int

Restrições:
Valor mínimo = 1
Valor máximo = 100

ManagedClusterLoadBalancerProfileOutboundIPPrefixes

Nome Descrição Valor
publicIPPrefixes Uma lista de recursos de prefixo ip público. ResourceReference []

ManagedClusterLoadBalancerProfileOutboundIPs

Nome Descrição Valor
publicIPs Uma lista de recursos ip públicos. ResourceReference []

ManagedClusterProperties

Nome Descrição Valor
aadProfile Perfil da configuração do Azure Active Directory. ManagedClusterAADProfile
addonProfiles Perfil do complemento de cluster gerenciado. ManagedClusterPropertiesAddonProfiles
agentPoolProfiles Propriedades do pool de agentes. ManagedClusterAgentPoolProfile[]
apiServerAccessProfile Perfil de acesso para o servidor de API de cluster gerenciado. ManagedClusterAPIServerAccessProfile
diskEncryptionSetID ResourceId do conjunto de criptografia de disco a ser usado para habilitar a criptografia em repouso. corda
dnsPrefix Prefixo DNS especificado ao criar o cluster gerenciado. corda
enablePodSecurityPolicy (PRETERINDO) Se deseja habilitar a política de segurança do pod do Kubernetes (versão prévia). Esse recurso está definido para remoção em 15 de outubro de 2020. Saiba mais em aka.ms/aks/azpodpolicy. Bool
enableRBAC Se deseja habilitar o Kubernetes Role-Based Controle de Acesso. Bool
identityProfile Identidades associadas ao cluster. ManagedClusterPropertiesIdentityProfile
kubernetesVersion Versão do Kubernetes especificada ao criar o cluster gerenciado. corda
linuxProfile Perfil para VMs linux no cluster de serviço de contêiner. ContainerServiceLinuxProfile
networkProfile Perfil da configuração de rede. ContainerServiceNetworkProfile
nodeResourceGroup Nome do grupo de recursos que contém nós do pool de agentes. corda
servicePrincipalProfile Informações sobre uma identidade de entidade de serviço para o cluster a ser usado para manipular APIs do Azure. ManagedClusterServicePrincipalProfile
windowsProfile Perfil para VMs do Windows no cluster do serviço de contêiner. ManagedClusterWindowsProfile

ManagedClusterPropertiesAddonProfiles

Nome Descrição Valor

ManagedClusterPropertiesIdentityProfile

Nome Descrição Valor

ManagedClusterPropertiesIdentityProfileValue

Nome Descrição Valor
clientId A ID do cliente da identidade atribuída pelo usuário. corda
objectId A ID do objeto da identidade atribuída pelo usuário. corda
resourceId A ID do recurso da identidade atribuída pelo usuário. corda

ManagedClusterServicePrincipalProfile

Nome Descrição Valor
clientId A ID da entidade de serviço. cadeia de caracteres (obrigatório)
segredo A senha secreta associada à entidade de serviço em texto sem formatação. corda

ManagedClusterWindowsProfile

Nome Descrição Valor
adminPassword Especifica a senha da conta de administrador.

Comprimento mínimo: 8 caracteres

comprimento máximo: 123 caracteres

requisitos de complexidade: 3 de 4 condições abaixo precisam ser atendidas
Tem caracteres inferiores
Tem caracteres superiores
Tem um dígito
Tem um caractere especial (correspondência regex [\W_])

valores não permitidos: "abc@123", "P@$$w 0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!"
corda
adminUsername Especifica o nome da conta de administrador.

restrição : Não é possível terminar em "".

valores não permitidos: "administrador", "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".

Comprimento mínimo: 1 caractere

comprimento máximo: 20 caracteres
cadeia de caracteres (obrigatório)

Microsoft.ContainerService/managedClusters

Nome Descrição Valor
identidade A identidade do cluster gerenciado, se configurada. ManagedClusterIdentity
localização Local do recurso cadeia de caracteres (obrigatório)
nome O nome do recurso corda

Restrições:
Comprimento mínimo = 1
Comprimento máximo = 1
Padrão = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$ (obrigatório)
Propriedades Propriedades de um cluster gerenciado. ManagedClusterProperties
Tags Marcas de recurso Dicionário de nomes e valores de marca. Consulte Marcas em modelos

ResourceReference

Nome Descrição Valor
id A ID de recurso do Azure totalmente qualificada. corda

ResourceTags

Nome Descrição Valor

Exemplos de início rápido

Os exemplos de início rápido a seguir implantam esse tipo de recurso.

Arquivo Bicep Descrição
cluster do AKS com um Gateway nat e um gateway de aplicativo Este exemplo mostra como implantar um cluster do AKS com o Gateway de NAT para conexões de saída e um Gateway de Aplicativo para conexões de entrada.
cluster do AKS com o Controlador de Entrada do Gateway de Aplicativo Este exemplo mostra como implantar um cluster do AKS com o Gateway de Aplicativo, o Controlador de Entrada do Gateway de Aplicativo, o Registro de Contêiner do Azure, o Log Analytics e o Key Vault
do AKS (Serviço de Contêiner do Azure) Implantar um cluster gerenciado com o AKS (Serviço de Contêiner do Azure) usando hosts de contêiner do Linux do Azure
do AKS (Serviço de Contêiner do Azure) Implantar um cluster gerenciado com o AKS (Serviço de Contêiner do Azure)
AKS (Serviço de Contêiner do Azure) com o Helm Implantar um cluster gerenciado com o AKS (Serviço de Contêiner do Azure) com o Helm
do AKS (Serviço de Kubernetes do Azure) Implanta um cluster kubernetes gerenciado por meio do AKS (Serviço de Kubernetes do Azure)
configuração segura de ponta a ponta do Azure Machine Learning Esse conjunto de modelos do Bicep demonstra como configurar o Azure Machine Learning de ponta a ponta em uma configuração segura. Essa implementação de referência inclui o Workspace, um cluster de computação, uma instância de computação e um cluster do AKS privado anexado.
configuração segura de ponta a ponta do Azure Machine Learning (herdada) Esse conjunto de modelos do Bicep demonstra como configurar o Azure Machine Learning de ponta a ponta em uma configuração segura. Essa implementação de referência inclui o Workspace, um cluster de computação, uma instância de computação e um cluster do AKS privado anexado.
criar um cluster privado do AKS Este exemplo mostra como criar um cluster do AKS privado em uma rede virtual, juntamente com uma máquina virtual jumpbox.
Criar AKS com Prometheus e Grafana com o link privae Isso criará um grafana do Azure, o AKS e instalará o Prometheus, um kit de ferramentas de monitoramento e alertas de software livre, em um cluster do AKS (Serviço de Kubernetes do Azure). Em seguida, você usa o ponto de extremidade privado gerenciado do Grafana Gerenciado do Azure para se conectar a este servidor Prometheus e exibir os dados do Prometheus em um painel do Grafana

Definição de recurso de modelo do ARM

O tipo de recurso managedClusters pode ser implantado com operações de destino:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte de log de alterações.

Formato de recurso

Para criar um recurso Microsoft.ContainerService/managedClusters, adicione o JSON a seguir ao modelo.

{
  "type": "Microsoft.ContainerService/managedClusters",
  "apiVersion": "2020-01-01",
  "name": "string",
  "identity": {
    "type": "string"
  },
  "location": "string",
  "properties": {
    "aadProfile": {
      "clientAppID": "string",
      "serverAppID": "string",
      "serverAppSecret": "string",
      "tenantID": "string"
    },
    "addonProfiles": {
      "{customized property}": {
        "config": {
          "{customized property}": "string"
        },
        "enabled": "bool"
      }
    },
    "agentPoolProfiles": [
      {
        "availabilityZones": [ "string" ],
        "count": "int",
        "enableAutoScaling": "bool",
        "enableNodePublicIP": "bool",
        "maxCount": "int",
        "maxPods": "int",
        "minCount": "int",
        "name": "string",
        "nodeLabels": {
          "{customized property}": "string"
        },
        "nodeTaints": [ "string" ],
        "orchestratorVersion": "string",
        "osDiskSizeGB": "int",
        "osType": "string",
        "scaleSetEvictionPolicy": "string",
        "scaleSetPriority": "string",
        "tags": {
          "{customized property}": "string"
        },
        "type": "string",
        "vmSize": "string",
        "vnetSubnetID": "string"
      }
    ],
    "apiServerAccessProfile": {
      "authorizedIPRanges": [ "string" ],
      "enablePrivateCluster": "bool"
    },
    "diskEncryptionSetID": "string",
    "dnsPrefix": "string",
    "enablePodSecurityPolicy": "bool",
    "enableRBAC": "bool",
    "identityProfile": {
      "{customized property}": {
        "clientId": "string",
        "objectId": "string",
        "resourceId": "string"
      }
    },
    "kubernetesVersion": "string",
    "linuxProfile": {
      "adminUsername": "string",
      "ssh": {
        "publicKeys": [
          {
            "keyData": "string"
          }
        ]
      }
    },
    "networkProfile": {
      "dnsServiceIP": "string",
      "dockerBridgeCidr": "string",
      "loadBalancerProfile": {
        "allocatedOutboundPorts": "int",
        "effectiveOutboundIPs": [
          {
            "id": "string"
          }
        ],
        "idleTimeoutInMinutes": "int",
        "managedOutboundIPs": {
          "count": "int"
        },
        "outboundIPPrefixes": {
          "publicIPPrefixes": [
            {
              "id": "string"
            }
          ]
        },
        "outboundIPs": {
          "publicIPs": [
            {
              "id": "string"
            }
          ]
        }
      },
      "loadBalancerSku": "string",
      "networkPlugin": "string",
      "networkPolicy": "string",
      "outboundType": "string",
      "podCidr": "string",
      "serviceCidr": "string"
    },
    "nodeResourceGroup": "string",
    "servicePrincipalProfile": {
      "clientId": "string",
      "secret": "string"
    },
    "windowsProfile": {
      "adminPassword": "string",
      "adminUsername": "string"
    }
  },
  "tags": {
    "{customized property}": "string"
  }
}

Valores de propriedade

ContainerServiceLinuxProfile

Nome Descrição Valor
adminUsername O nome de usuário do administrador a ser usado para VMs linux. corda

Restrições:
Padrão = ^[A-Za-z][-A-Za-z0-9_]*$ (obrigatório)
ssh Configuração de SSH para VMs baseadas em Linux em execução no Azure. ContainerServiceSshConfiguration (obrigatório)

ContainerServiceNetworkProfile

Nome Descrição Valor
dnsServiceIP Um endereço IP atribuído ao serviço DNS do Kubernetes. Ele deve estar dentro do intervalo de endereços de serviço do Kubernetes especificado no serviceCidr. corda

Restrições:
Padrão = ^(?:(?: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 Um intervalo de IP de notação CIDR atribuído à rede de ponte do Docker. Ele não deve se sobrepor a nenhum intervalo de IP de sub-rede ou ao intervalo de endereços de serviço do Kubernetes. corda

Restrições:
Padrão = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
loadBalancerProfile Perfil do balanceador de carga do cluster. ManagedClusterLoadBalancerProfile
loadBalancerSku O sku do balanceador de carga para o cluster gerenciado. 'básico'
'standard'
networkPlugin Plug-in de rede usado para criar a rede do Kubernetes. 'azure'
'kubenet'
networkPolicy Política de rede usada para a criação da rede do Kubernetes. 'azure'
'calico'
outboundType O método de roteamento de saída (saída). 'loadBalancer'
'userDefinedRouting'
podCidr Um intervalo de IP de notação CIDR do qual atribuir IPs de pod quando kubenet é usado. corda

Restrições:
Padrão = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
serviceCidr Um intervalo de IP de notação CIDR do qual atribuir IPs de cluster de serviço. Ele não deve se sobrepor a nenhum intervalo de IP de sub-rede. corda

Restrições:
Padrão = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$

ContainerServiceSshConfiguration

Nome Descrição Valor
publicKeys A lista de chaves públicas SSH usadas para autenticar com VMs baseadas em Linux. Espere apenas uma chave especificada. ContainerServiceSshPublicKey [] (obrigatório)

ContainerServiceSshPublicKey

Nome Descrição Valor
keyData Chave pública de certificado usada para autenticar com VMs por meio do SSH. O certificado deve estar no formato PEM com ou sem cabeçalhos. cadeia de caracteres (obrigatório)

ManagedClusterAADProfile

Nome Descrição Valor
clientAppID A ID do aplicativo AAD do cliente. cadeia de caracteres (obrigatório)
serverAppID A ID do aplicativo AAD do servidor. cadeia de caracteres (obrigatório)
serverAppSecret O segredo do aplicativo AAD do servidor. corda
tenantID A ID do locatário do AAD a ser usada para autenticação. Se não for especificado, usará o locatário da assinatura de implantação. corda

ManagedClusterAddonProfile

Nome Descrição Valor
configuração Pares chave-valor para configurar um complemento. ManagedClusterAddonProfileConfig
Habilitado Se o complemento está habilitado ou não. bool (obrigatório)

ManagedClusterAddonProfileConfig

Nome Descrição Valor

ManagedClusterAgentPoolProfile

Nome Descrição Valor
availabilityZones Zonas de disponibilidade para nós. Deve usar VirtualMachineScaleSets AgentPoolType. string[]
contar Número de agentes (VMs) para hospedar contêineres do Docker. Os valores permitidos devem estar no intervalo de 1 a 100 (inclusive). O valor padrão é 1. int
enableAutoScaling Se o dimensionador automático deve ser habilitado Bool
enableNodePublicIP Habilitar IP público para nós Bool
maxCount Número máximo de nós para dimensionamento automático int
maxPods Número máximo de pods que podem ser executados em um nó. int
minCount Número mínimo de nós para dimensionamento automático int
nome Nome exclusivo do perfil do pool de agentes no contexto da assinatura e do grupo de recursos. corda

Restrições:
Padrão = ^[a-z][a-z0-9]{0,11}$ (obrigatório)
nodeLabels Rótulos de nó do pool de agentes a serem persistidos em todos os nós no pool de agentes. ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodeTaints Taints adicionados a novos nós durante a criação e a escala do pool de nós. Por exemplo, key=value:NoSchedule. string[]
orchestratorVersion Versão do orquestrador especificada ao criar o cluster gerenciado. corda
osDiskSizeGB Tamanho do disco do sistema operacional em GB a ser usado para especificar o tamanho do disco para cada computador neste pool mestre/agente. Se você especificar 0, ele aplicará o tamanho do osDisk padrão de acordo com o vmSize especificado. int

Restrições:
Valor mínimo = 0
Valor máximo = 1023
osType OsType a ser usado para especificar o tipo de sistema operacional. Escolha entre Linux e Windows. Padrão para Linux. 'Linux'
'Windows'
scaleSetEvictionPolicy ScaleSetEvictionPolicy a ser usado para especificar a política de remoção para o conjunto de dimensionamento de máquinas virtuais de baixa prioridade. Padrão para Excluir. 'Desalocar'
'Delete'
scaleSetPriority ScaleSetPriority a ser usado para especificar a prioridade do conjunto de dimensionamento de máquinas virtuais. Padrão para regular. 'Baixo'
'Regular'
Tags Marcas de pool de agentes a serem mantidas no conjunto de dimensionamento de máquinas virtuais do pool de agentes. ManagedClusterAgentPoolProfilePropertiesTags
tipo AgentPoolType representa tipos de um pool de agentes 'AvailabilitySet'
'VirtualMachineScaleSets'
vmSize Tamanho das VMs do agente. 'Standard_A1'
'Standard_A10'
'Standard_A11'
'Standard_A1_v2'
'Standard_A2'
'Standard_A2m_v2'
'Standard_A2_v2'
'Standard_A3'
'Standard_A4'
'Standard_A4m_v2'
'Standard_A4_v2'
'Standard_A5'
'Standard_A6'
'Standard_A7'
'Standard_A8'
'Standard_A8m_v2'
'Standard_A8_v2'
'Standard_A9'
'Standard_B2ms'
'Standard_B2s'
'Standard_B4ms'
'Standard_B8ms'
'Standard_D1'
'Standard_D11'
'Standard_D11_v2'
'Standard_D11_v2_Promo'
'Standard_D12'
'Standard_D12_v2'
'Standard_D12_v2_Promo'
'Standard_D13'
'Standard_D13_v2'
'Standard_D13_v2_Promo'
'Standard_D14'
'Standard_D14_v2'
'Standard_D14_v2_Promo'
'Standard_D15_v2'
'Standard_D16s_v3'
'Standard_D16_v3'
'Standard_D1_v2'
'Standard_D2'
'Standard_D2s_v3'
'Standard_D2_v2'
'Standard_D2_v2_Promo'
'Standard_D2_v3'
'Standard_D3'
'Standard_D32s_v3'
'Standard_D32_v3'
'Standard_D3_v2'
'Standard_D3_v2_Promo'
'Standard_D4'
'Standard_D4s_v3'
'Standard_D4_v2'
'Standard_D4_v2_Promo'
'Standard_D4_v3'
'Standard_D5_v2'
'Standard_D5_v2_Promo'
'Standard_D64s_v3'
'Standard_D64_v3'
'Standard_D8s_v3'
'Standard_D8_v3'
'Standard_DS1'
'Standard_DS11'
'Standard_DS11_v2'
'Standard_DS11_v2_Promo'
'Standard_DS12'
'Standard_DS12_v2'
'Standard_DS12_v2_Promo'
'Standard_DS13'
'Standard_DS13-2_v2'
'Standard_DS13-4_v2'
'Standard_DS13_v2'
'Standard_DS13_v2_Promo'
'Standard_DS14'
'Standard_DS14-4_v2'
'Standard_DS14-8_v2'
'Standard_DS14_v2'
'Standard_DS14_v2_Promo'
'Standard_DS15_v2'
'Standard_DS1_v2'
'Standard_DS2'
'Standard_DS2_v2'
'Standard_DS2_v2_Promo'
'Standard_DS3'
'Standard_DS3_v2'
'Standard_DS3_v2_Promo'
'Standard_DS4'
'Standard_DS4_v2'
'Standard_DS4_v2_Promo'
'Standard_DS5_v2'
'Standard_DS5_v2_Promo'
'Standard_E16s_v3'
'Standard_E16_v3'
'Standard_E2s_v3'
'Standard_E2_v3'
'Standard_E32-16s_v3'
'Standard_E32-8s_v3'
'Standard_E32s_v3'
'Standard_E32_v3'
'Standard_E4s_v3'
'Standard_E4_v3'
'Standard_E64-16s_v3'
'Standard_E64-32s_v3'
'Standard_E64s_v3'
'Standard_E64_v3'
'Standard_E8s_v3'
'Standard_E8_v3'
'Standard_F1'
'Standard_F16'
'Standard_F16s'
'Standard_F16s_v2'
'Standard_F1s'
'Standard_F2'
'Standard_F2s'
'Standard_F2s_v2'
'Standard_F32s_v2'
'Standard_F4'
'Standard_F4s'
'Standard_F4s_v2'
'Standard_F64s_v2'
'Standard_F72s_v2'
'Standard_F8'
'Standard_F8s'
'Standard_F8s_v2'
'Standard_G1'
'Standard_G2'
'Standard_G3'
'Standard_G4'
'Standard_G5'
'Standard_GS1'
'Standard_GS2'
'Standard_GS3'
'Standard_GS4'
'Standard_GS4-4'
'Standard_GS4-8'
'Standard_GS5'
'Standard_GS5-16'
'Standard_GS5-8'
'Standard_H16'
'Standard_H16m'
'Standard_H16mr'
'Standard_H16r'
'Standard_H8'
'Standard_H8m'
'Standard_L16s'
'Standard_L32s'
'Standard_L4s'
'Standard_L8s'
'Standard_M128-32ms'
'Standard_M128-64ms'
'Standard_M128ms'
'Standard_M128s'
'Standard_M64-16ms'
'Standard_M64-32ms'
'Standard_M64ms'
'Standard_M64s'
'Standard_NC12'
'Standard_NC12s_v2'
'Standard_NC12s_v3'
'Standard_NC24'
'Standard_NC24r'
'Standard_NC24rs_v2'
'Standard_NC24rs_v3'
'Standard_NC24s_v2'
'Standard_NC24s_v3'
'Standard_NC6'
'Standard_NC6s_v2'
'Standard_NC6s_v3'
'Standard_ND12s'
'Standard_ND24rs'
'Standard_ND24s'
'Standard_ND6s'
'Standard_NV12'
'Standard_NV24'
'Standard_NV6'
vnetSubnetID A SubnetID da VNet especifica o identificador de sub-rede da VNet. corda

ManagedClusterAgentPoolProfilePropertiesNodeLabels

Nome Descrição Valor

ManagedClusterAgentPoolProfilePropertiesTags

Nome Descrição Valor

ManagedClusterAPIServerAccessProfile

Nome Descrição Valor
authorizedIPRanges Intervalos de IP autorizados para o servidor de API do kubernetes. string[]
enablePrivateCluster Se o cluster deve ser criado como um cluster privado ou não. Bool

ManagedClusterIdentity

Nome Descrição Valor
tipo O tipo de identidade usado para o cluster gerenciado. O tipo 'SystemAssigned' usará uma identidade criada implicitamente em componentes mestres e uma identidade atribuída pelo usuário criada automaticamente em MC_ grupo de recursos em nós do agente. O tipo 'None' não usará MSI para o cluster gerenciado, a entidade de serviço será usada em vez disso. 'None'
'SystemAssigned'

ManagedClusterLoadBalancerProfile

Nome Descrição Valor
allocatedOutboundPorts Número desejado de portas SNAT alocadas por VM. Os valores permitidos devem estar no intervalo de 0 a 64000 (inclusive). O valor padrão é 0, o que resulta na alocação dinâmica de portas do Azure. int

Restrições:
Valor mínimo = 0
Valor máximo = 64000
effectiveOutboundIPs Os recursos de IP de saída efetivos do balanceador de carga do cluster. ResourceReference []
idleTimeoutInMinutes Tempo limite de ociosidade do fluxo de saída desejado em minutos. Os valores permitidos devem estar no intervalo de 4 a 120 (inclusive). O valor padrão é 30 minutos. int

Restrições:
Valor mínimo = 4
Valor máximo = 120
managedOutboundIPs IPs de saída gerenciados desejados para o balanceador de carga do cluster. ManagedClusterLoadBalancerProfileManagedOutboundIPs
outboundIPPrefixes Recursos de prefixo de IP de saída desejados para o balanceador de carga do cluster. ManagedClusterLoadBalancerProfileOutboundIPPrefixes
outboundIPs Recursos de IP de saída desejados para o balanceador de carga do cluster. ManagedClusterLoadBalancerProfileOutboundIPs

ManagedClusterLoadBalancerProfileManagedOutboundIPs

Nome Descrição Valor
contar Número desejado de IP de saída criado/gerenciado pelo Azure para o balanceador de carga de cluster. Os valores permitidos devem estar no intervalo de 1 a 100 (inclusive). O valor padrão é 1. int

Restrições:
Valor mínimo = 1
Valor máximo = 100

ManagedClusterLoadBalancerProfileOutboundIPPrefixes

Nome Descrição Valor
publicIPPrefixes Uma lista de recursos de prefixo ip público. ResourceReference []

ManagedClusterLoadBalancerProfileOutboundIPs

Nome Descrição Valor
publicIPs Uma lista de recursos ip públicos. ResourceReference []

ManagedClusterProperties

Nome Descrição Valor
aadProfile Perfil da configuração do Azure Active Directory. ManagedClusterAADProfile
addonProfiles Perfil do complemento de cluster gerenciado. ManagedClusterPropertiesAddonProfiles
agentPoolProfiles Propriedades do pool de agentes. ManagedClusterAgentPoolProfile[]
apiServerAccessProfile Perfil de acesso para o servidor de API de cluster gerenciado. ManagedClusterAPIServerAccessProfile
diskEncryptionSetID ResourceId do conjunto de criptografia de disco a ser usado para habilitar a criptografia em repouso. corda
dnsPrefix Prefixo DNS especificado ao criar o cluster gerenciado. corda
enablePodSecurityPolicy (PRETERINDO) Se deseja habilitar a política de segurança do pod do Kubernetes (versão prévia). Esse recurso está definido para remoção em 15 de outubro de 2020. Saiba mais em aka.ms/aks/azpodpolicy. Bool
enableRBAC Se deseja habilitar o Kubernetes Role-Based Controle de Acesso. Bool
identityProfile Identidades associadas ao cluster. ManagedClusterPropertiesIdentityProfile
kubernetesVersion Versão do Kubernetes especificada ao criar o cluster gerenciado. corda
linuxProfile Perfil para VMs linux no cluster de serviço de contêiner. ContainerServiceLinuxProfile
networkProfile Perfil da configuração de rede. ContainerServiceNetworkProfile
nodeResourceGroup Nome do grupo de recursos que contém nós do pool de agentes. corda
servicePrincipalProfile Informações sobre uma identidade de entidade de serviço para o cluster a ser usado para manipular APIs do Azure. ManagedClusterServicePrincipalProfile
windowsProfile Perfil para VMs do Windows no cluster do serviço de contêiner. ManagedClusterWindowsProfile

ManagedClusterPropertiesAddonProfiles

Nome Descrição Valor

ManagedClusterPropertiesIdentityProfile

Nome Descrição Valor

ManagedClusterPropertiesIdentityProfileValue

Nome Descrição Valor
clientId A ID do cliente da identidade atribuída pelo usuário. corda
objectId A ID do objeto da identidade atribuída pelo usuário. corda
resourceId A ID do recurso da identidade atribuída pelo usuário. corda

ManagedClusterServicePrincipalProfile

Nome Descrição Valor
clientId A ID da entidade de serviço. cadeia de caracteres (obrigatório)
segredo A senha secreta associada à entidade de serviço em texto sem formatação. corda

ManagedClusterWindowsProfile

Nome Descrição Valor
adminPassword Especifica a senha da conta de administrador.

Comprimento mínimo: 8 caracteres

comprimento máximo: 123 caracteres

requisitos de complexidade: 3 de 4 condições abaixo precisam ser atendidas
Tem caracteres inferiores
Tem caracteres superiores
Tem um dígito
Tem um caractere especial (correspondência regex [\W_])

valores não permitidos: "abc@123", "P@$$w 0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!"
corda
adminUsername Especifica o nome da conta de administrador.

restrição : Não é possível terminar em "".

valores não permitidos: "administrador", "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".

Comprimento mínimo: 1 caractere

comprimento máximo: 20 caracteres
cadeia de caracteres (obrigatório)

Microsoft.ContainerService/managedClusters

Nome Descrição Valor
apiVersion A versão da API '2020-01-01'
identidade A identidade do cluster gerenciado, se configurada. ManagedClusterIdentity
localização Local do recurso cadeia de caracteres (obrigatório)
nome O nome do recurso corda

Restrições:
Comprimento mínimo = 1
Comprimento máximo = 1
Padrão = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$ (obrigatório)
Propriedades Propriedades de um cluster gerenciado. ManagedClusterProperties
Tags Marcas de recurso Dicionário de nomes e valores de marca. Consulte Marcas em modelos
tipo O tipo de recurso 'Microsoft.ContainerService/managedClusters'

ResourceReference

Nome Descrição Valor
id A ID de recurso do Azure totalmente qualificada. corda

ResourceTags

Nome Descrição Valor

Modelos de início rápido

Os modelos de início rápido a seguir implantam esse tipo de recurso.

Modelo Descrição
cluster do AKS com um Gateway nat e um gateway de aplicativo

Implantar no Azure
Este exemplo mostra como implantar um cluster do AKS com o Gateway de NAT para conexões de saída e um Gateway de Aplicativo para conexões de entrada.
cluster do AKS com o Controlador de Entrada do Gateway de Aplicativo

Implantar no Azure
Este exemplo mostra como implantar um cluster do AKS com o Gateway de Aplicativo, o Controlador de Entrada do Gateway de Aplicativo, o Registro de Contêiner do Azure, o Log Analytics e o Key Vault
do AKS (Serviço de Contêiner do Azure)

Implantar no Azure
Implantar um cluster gerenciado com o AKS (Serviço de Contêiner do Azure) usando hosts de contêiner do Linux do Azure
do AKS (Serviço de Contêiner do Azure)

Implantar no Azure
Implantar um cluster gerenciado com o AKS (Serviço de Contêiner do Azure)
AKS (Serviço de Contêiner do Azure) com o Helm

Implantar no Azure
Implantar um cluster gerenciado com o AKS (Serviço de Contêiner do Azure) com o Helm
do AKS (Serviço de Kubernetes do Azure)

Implantar no Azure
Implanta um cluster kubernetes gerenciado por meio do AKS (Serviço de Kubernetes do Azure)
configuração segura de ponta a ponta do Azure Machine Learning

Implantar no Azure
Esse conjunto de modelos do Bicep demonstra como configurar o Azure Machine Learning de ponta a ponta em uma configuração segura. Essa implementação de referência inclui o Workspace, um cluster de computação, uma instância de computação e um cluster do AKS privado anexado.
configuração segura de ponta a ponta do Azure Machine Learning (herdada)

Implantar no Azure
Esse conjunto de modelos do Bicep demonstra como configurar o Azure Machine Learning de ponta a ponta em uma configuração segura. Essa implementação de referência inclui o Workspace, um cluster de computação, uma instância de computação e um cluster do AKS privado anexado.
CI/CD usando o Jenkins no AKS (Serviço de Contêiner do Azure)

Implantar no Azure
Os contêineres facilitam a criação e a implantação contínua de seus aplicativos. Ao orquestrar a implantação desses contêineres usando o Kubernetes no Serviço de Contêiner do Azure, você pode obter clusters replicáveis e gerenciáveis de contêineres. Ao configurar um build contínuo para produzir suas imagens de contêiner e orquestração, você pode aumentar a velocidade e a confiabilidade de sua implantação.
criar um cluster privado do AKS

Implantar no Azure
Este exemplo mostra como criar um cluster do AKS privado em uma rede virtual, juntamente com uma máquina virtual jumpbox.
criar um cluster AKS privado com uma zona DNS pública

Implantar no Azure
Este exemplo mostra como implantar um cluster do AKS privado com uma Zona DNS Pública.
Criar AKS com Prometheus e Grafana com o link privae

Implantar no Azure
Isso criará um grafana do Azure, o AKS e instalará o Prometheus, um kit de ferramentas de monitoramento e alertas de software livre, em um cluster do AKS (Serviço de Kubernetes do Azure). Em seguida, você usa o ponto de extremidade privado gerenciado do Grafana Gerenciado do Azure para se conectar a este servidor Prometheus e exibir os dados do Prometheus em um painel do Grafana
implantar um aks (cluster kubernetes) gerenciado

Implantar no Azure
Este modelo do ARM demonstra a implantação de uma instância do AKS com recursos de rede avançados em uma rede virtual existente. Além disso, a Entidade de Serviço escolhida recebe a função Colaborador de Rede na sub-rede que contém o cluster do AKS.
implantar um cluster kubernetes gerenciado com o AKS (AAD)

Implantar no Azure
Este modelo do ARM demonstra a implantação de uma instância do AKS com recursos de rede avançados em uma rede virtual existente e na inteiroação do Azure AD. Além disso, a Entidade de Serviço escolhida recebe a função Colaborador de Rede na sub-rede que contém o cluster do AKS.
implantar um cluster do AKS para o Azure ML

Implantar no Azure
Esse modelo permite implantar um cluster AKS compatível com entreprise que pode ser anexado ao Azure ML
min.io do Gateway do Azure

Implantar no Azure
Implantação do Gateway do Azure totalmente privada min.io para fornecer uma API de armazenamento compatível com S3 apoiada pelo armazenamento de blobs

Definição de recurso do Terraform (provedor de AzAPI)

O tipo de recurso managedClusters pode ser implantado com operações de destino:

  • grupos de recursos

Para obter uma lista de propriedades alteradas em cada versão da API, consulte de log de alterações.

Formato de recurso

Para criar um recurso Microsoft.ContainerService/managedClusters, adicione o Terraform a seguir ao seu modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ContainerService/managedClusters@2020-01-01"
  name = "string"
  identity = {
    type = "string"
  }
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = jsonencode({
    properties = {
      aadProfile = {
        clientAppID = "string"
        serverAppID = "string"
        serverAppSecret = "string"
        tenantID = "string"
      }
      addonProfiles = {
        {customized property} = {
          config = {
            {customized property} = "string"
          }
          enabled = bool
        }
      }
      agentPoolProfiles = [
        {
          availabilityZones = [
            "string"
          ]
          count = int
          enableAutoScaling = bool
          enableNodePublicIP = bool
          maxCount = int
          maxPods = int
          minCount = int
          name = "string"
          nodeLabels = {
            {customized property} = "string"
          }
          nodeTaints = [
            "string"
          ]
          orchestratorVersion = "string"
          osDiskSizeGB = int
          osType = "string"
          scaleSetEvictionPolicy = "string"
          scaleSetPriority = "string"
          tags = {
            {customized property} = "string"
          }
          type = "string"
          vmSize = "string"
          vnetSubnetID = "string"
        }
      ]
      apiServerAccessProfile = {
        authorizedIPRanges = [
          "string"
        ]
        enablePrivateCluster = bool
      }
      diskEncryptionSetID = "string"
      dnsPrefix = "string"
      enablePodSecurityPolicy = bool
      enableRBAC = bool
      identityProfile = {
        {customized property} = {
          clientId = "string"
          objectId = "string"
          resourceId = "string"
        }
      }
      kubernetesVersion = "string"
      linuxProfile = {
        adminUsername = "string"
        ssh = {
          publicKeys = [
            {
              keyData = "string"
            }
          ]
        }
      }
      networkProfile = {
        dnsServiceIP = "string"
        dockerBridgeCidr = "string"
        loadBalancerProfile = {
          allocatedOutboundPorts = int
          effectiveOutboundIPs = [
            {
              id = "string"
            }
          ]
          idleTimeoutInMinutes = int
          managedOutboundIPs = {
            count = int
          }
          outboundIPPrefixes = {
            publicIPPrefixes = [
              {
                id = "string"
              }
            ]
          }
          outboundIPs = {
            publicIPs = [
              {
                id = "string"
              }
            ]
          }
        }
        loadBalancerSku = "string"
        networkPlugin = "string"
        networkPolicy = "string"
        outboundType = "string"
        podCidr = "string"
        serviceCidr = "string"
      }
      nodeResourceGroup = "string"
      servicePrincipalProfile = {
        clientId = "string"
        secret = "string"
      }
      windowsProfile = {
        adminPassword = "string"
        adminUsername = "string"
      }
    }
  })
}

Valores de propriedade

ContainerServiceLinuxProfile

Nome Descrição Valor
adminUsername O nome de usuário do administrador a ser usado para VMs linux. corda

Restrições:
Padrão = ^[A-Za-z][-A-Za-z0-9_]*$ (obrigatório)
ssh Configuração de SSH para VMs baseadas em Linux em execução no Azure. ContainerServiceSshConfiguration (obrigatório)

ContainerServiceNetworkProfile

Nome Descrição Valor
dnsServiceIP Um endereço IP atribuído ao serviço DNS do Kubernetes. Ele deve estar dentro do intervalo de endereços de serviço do Kubernetes especificado no serviceCidr. corda

Restrições:
Padrão = ^(?:(?: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 Um intervalo de IP de notação CIDR atribuído à rede de ponte do Docker. Ele não deve se sobrepor a nenhum intervalo de IP de sub-rede ou ao intervalo de endereços de serviço do Kubernetes. corda

Restrições:
Padrão = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
loadBalancerProfile Perfil do balanceador de carga do cluster. ManagedClusterLoadBalancerProfile
loadBalancerSku O sku do balanceador de carga para o cluster gerenciado. 'básico'
'standard'
networkPlugin Plug-in de rede usado para criar a rede do Kubernetes. 'azure'
'kubenet'
networkPolicy Política de rede usada para a criação da rede do Kubernetes. 'azure'
'calico'
outboundType O método de roteamento de saída (saída). 'loadBalancer'
'userDefinedRouting'
podCidr Um intervalo de IP de notação CIDR do qual atribuir IPs de pod quando kubenet é usado. corda

Restrições:
Padrão = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$
serviceCidr Um intervalo de IP de notação CIDR do qual atribuir IPs de cluster de serviço. Ele não deve se sobrepor a nenhum intervalo de IP de sub-rede. corda

Restrições:
Padrão = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$

ContainerServiceSshConfiguration

Nome Descrição Valor
publicKeys A lista de chaves públicas SSH usadas para autenticar com VMs baseadas em Linux. Espere apenas uma chave especificada. ContainerServiceSshPublicKey [] (obrigatório)

ContainerServiceSshPublicKey

Nome Descrição Valor
keyData Chave pública de certificado usada para autenticar com VMs por meio do SSH. O certificado deve estar no formato PEM com ou sem cabeçalhos. cadeia de caracteres (obrigatório)

ManagedClusterAADProfile

Nome Descrição Valor
clientAppID A ID do aplicativo AAD do cliente. cadeia de caracteres (obrigatório)
serverAppID A ID do aplicativo AAD do servidor. cadeia de caracteres (obrigatório)
serverAppSecret O segredo do aplicativo AAD do servidor. corda
tenantID A ID do locatário do AAD a ser usada para autenticação. Se não for especificado, usará o locatário da assinatura de implantação. corda

ManagedClusterAddonProfile

Nome Descrição Valor
configuração Pares chave-valor para configurar um complemento. ManagedClusterAddonProfileConfig
Habilitado Se o complemento está habilitado ou não. bool (obrigatório)

ManagedClusterAddonProfileConfig

Nome Descrição Valor

ManagedClusterAgentPoolProfile

Nome Descrição Valor
availabilityZones Zonas de disponibilidade para nós. Deve usar VirtualMachineScaleSets AgentPoolType. string[]
contar Número de agentes (VMs) para hospedar contêineres do Docker. Os valores permitidos devem estar no intervalo de 1 a 100 (inclusive). O valor padrão é 1. int
enableAutoScaling Se o dimensionador automático deve ser habilitado Bool
enableNodePublicIP Habilitar IP público para nós Bool
maxCount Número máximo de nós para dimensionamento automático int
maxPods Número máximo de pods que podem ser executados em um nó. int
minCount Número mínimo de nós para dimensionamento automático int
nome Nome exclusivo do perfil do pool de agentes no contexto da assinatura e do grupo de recursos. corda

Restrições:
Padrão = ^[a-z][a-z0-9]{0,11}$ (obrigatório)
nodeLabels Rótulos de nó do pool de agentes a serem persistidos em todos os nós no pool de agentes. ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodeTaints Taints adicionados a novos nós durante a criação e a escala do pool de nós. Por exemplo, key=value:NoSchedule. string[]
orchestratorVersion Versão do orquestrador especificada ao criar o cluster gerenciado. corda
osDiskSizeGB Tamanho do disco do sistema operacional em GB a ser usado para especificar o tamanho do disco para cada computador neste pool mestre/agente. Se você especificar 0, ele aplicará o tamanho do osDisk padrão de acordo com o vmSize especificado. int

Restrições:
Valor mínimo = 0
Valor máximo = 1023
osType OsType a ser usado para especificar o tipo de sistema operacional. Escolha entre Linux e Windows. Padrão para Linux. 'Linux'
'Windows'
scaleSetEvictionPolicy ScaleSetEvictionPolicy a ser usado para especificar a política de remoção para o conjunto de dimensionamento de máquinas virtuais de baixa prioridade. Padrão para Excluir. 'Desalocar'
'Delete'
scaleSetPriority ScaleSetPriority a ser usado para especificar a prioridade do conjunto de dimensionamento de máquinas virtuais. Padrão para regular. 'Baixo'
'Regular'
Tags Marcas de pool de agentes a serem mantidas no conjunto de dimensionamento de máquinas virtuais do pool de agentes. ManagedClusterAgentPoolProfilePropertiesTags
tipo AgentPoolType representa tipos de um pool de agentes 'AvailabilitySet'
'VirtualMachineScaleSets'
vmSize Tamanho das VMs do agente. 'Standard_A1'
'Standard_A10'
'Standard_A11'
'Standard_A1_v2'
'Standard_A2'
'Standard_A2m_v2'
'Standard_A2_v2'
'Standard_A3'
'Standard_A4'
'Standard_A4m_v2'
'Standard_A4_v2'
'Standard_A5'
'Standard_A6'
'Standard_A7'
'Standard_A8'
'Standard_A8m_v2'
'Standard_A8_v2'
'Standard_A9'
'Standard_B2ms'
'Standard_B2s'
'Standard_B4ms'
'Standard_B8ms'
'Standard_D1'
'Standard_D11'
'Standard_D11_v2'
'Standard_D11_v2_Promo'
'Standard_D12'
'Standard_D12_v2'
'Standard_D12_v2_Promo'
'Standard_D13'
'Standard_D13_v2'
'Standard_D13_v2_Promo'
'Standard_D14'
'Standard_D14_v2'
'Standard_D14_v2_Promo'
'Standard_D15_v2'
'Standard_D16s_v3'
'Standard_D16_v3'
'Standard_D1_v2'
'Standard_D2'
'Standard_D2s_v3'
'Standard_D2_v2'
'Standard_D2_v2_Promo'
'Standard_D2_v3'
'Standard_D3'
'Standard_D32s_v3'
'Standard_D32_v3'
'Standard_D3_v2'
'Standard_D3_v2_Promo'
'Standard_D4'
'Standard_D4s_v3'
'Standard_D4_v2'
'Standard_D4_v2_Promo'
'Standard_D4_v3'
'Standard_D5_v2'
'Standard_D5_v2_Promo'
'Standard_D64s_v3'
'Standard_D64_v3'
'Standard_D8s_v3'
'Standard_D8_v3'
'Standard_DS1'
'Standard_DS11'
'Standard_DS11_v2'
'Standard_DS11_v2_Promo'
'Standard_DS12'
'Standard_DS12_v2'
'Standard_DS12_v2_Promo'
'Standard_DS13'
'Standard_DS13-2_v2'
'Standard_DS13-4_v2'
'Standard_DS13_v2'
'Standard_DS13_v2_Promo'
'Standard_DS14'
'Standard_DS14-4_v2'
'Standard_DS14-8_v2'
'Standard_DS14_v2'
'Standard_DS14_v2_Promo'
'Standard_DS15_v2'
'Standard_DS1_v2'
'Standard_DS2'
'Standard_DS2_v2'
'Standard_DS2_v2_Promo'
'Standard_DS3'
'Standard_DS3_v2'
'Standard_DS3_v2_Promo'
'Standard_DS4'
'Standard_DS4_v2'
'Standard_DS4_v2_Promo'
'Standard_DS5_v2'
'Standard_DS5_v2_Promo'
'Standard_E16s_v3'
'Standard_E16_v3'
'Standard_E2s_v3'
'Standard_E2_v3'
'Standard_E32-16s_v3'
'Standard_E32-8s_v3'
'Standard_E32s_v3'
'Standard_E32_v3'
'Standard_E4s_v3'
'Standard_E4_v3'
'Standard_E64-16s_v3'
'Standard_E64-32s_v3'
'Standard_E64s_v3'
'Standard_E64_v3'
'Standard_E8s_v3'
'Standard_E8_v3'
'Standard_F1'
'Standard_F16'
'Standard_F16s'
'Standard_F16s_v2'
'Standard_F1s'
'Standard_F2'
'Standard_F2s'
'Standard_F2s_v2'
'Standard_F32s_v2'
'Standard_F4'
'Standard_F4s'
'Standard_F4s_v2'
'Standard_F64s_v2'
'Standard_F72s_v2'
'Standard_F8'
'Standard_F8s'
'Standard_F8s_v2'
'Standard_G1'
'Standard_G2'
'Standard_G3'
'Standard_G4'
'Standard_G5'
'Standard_GS1'
'Standard_GS2'
'Standard_GS3'
'Standard_GS4'
'Standard_GS4-4'
'Standard_GS4-8'
'Standard_GS5'
'Standard_GS5-16'
'Standard_GS5-8'
'Standard_H16'
'Standard_H16m'
'Standard_H16mr'
'Standard_H16r'
'Standard_H8'
'Standard_H8m'
'Standard_L16s'
'Standard_L32s'
'Standard_L4s'
'Standard_L8s'
'Standard_M128-32ms'
'Standard_M128-64ms'
'Standard_M128ms'
'Standard_M128s'
'Standard_M64-16ms'
'Standard_M64-32ms'
'Standard_M64ms'
'Standard_M64s'
'Standard_NC12'
'Standard_NC12s_v2'
'Standard_NC12s_v3'
'Standard_NC24'
'Standard_NC24r'
'Standard_NC24rs_v2'
'Standard_NC24rs_v3'
'Standard_NC24s_v2'
'Standard_NC24s_v3'
'Standard_NC6'
'Standard_NC6s_v2'
'Standard_NC6s_v3'
'Standard_ND12s'
'Standard_ND24rs'
'Standard_ND24s'
'Standard_ND6s'
'Standard_NV12'
'Standard_NV24'
'Standard_NV6'
vnetSubnetID A SubnetID da VNet especifica o identificador de sub-rede da VNet. corda

ManagedClusterAgentPoolProfilePropertiesNodeLabels

Nome Descrição Valor

ManagedClusterAgentPoolProfilePropertiesTags

Nome Descrição Valor

ManagedClusterAPIServerAccessProfile

Nome Descrição Valor
authorizedIPRanges Intervalos de IP autorizados para o servidor de API do kubernetes. string[]
enablePrivateCluster Se o cluster deve ser criado como um cluster privado ou não. Bool

ManagedClusterIdentity

Nome Descrição Valor
tipo O tipo de identidade usado para o cluster gerenciado. O tipo 'SystemAssigned' usará uma identidade criada implicitamente em componentes mestres e uma identidade atribuída pelo usuário criada automaticamente em MC_ grupo de recursos em nós do agente. O tipo 'None' não usará MSI para o cluster gerenciado, a entidade de serviço será usada em vez disso. 'None'
'SystemAssigned'

ManagedClusterLoadBalancerProfile

Nome Descrição Valor
allocatedOutboundPorts Número desejado de portas SNAT alocadas por VM. Os valores permitidos devem estar no intervalo de 0 a 64000 (inclusive). O valor padrão é 0, o que resulta na alocação dinâmica de portas do Azure. int

Restrições:
Valor mínimo = 0
Valor máximo = 64000
effectiveOutboundIPs Os recursos de IP de saída efetivos do balanceador de carga do cluster. ResourceReference []
idleTimeoutInMinutes Tempo limite de ociosidade do fluxo de saída desejado em minutos. Os valores permitidos devem estar no intervalo de 4 a 120 (inclusive). O valor padrão é 30 minutos. int

Restrições:
Valor mínimo = 4
Valor máximo = 120
managedOutboundIPs IPs de saída gerenciados desejados para o balanceador de carga do cluster. ManagedClusterLoadBalancerProfileManagedOutboundIPs
outboundIPPrefixes Recursos de prefixo de IP de saída desejados para o balanceador de carga do cluster. ManagedClusterLoadBalancerProfileOutboundIPPrefixes
outboundIPs Recursos de IP de saída desejados para o balanceador de carga do cluster. ManagedClusterLoadBalancerProfileOutboundIPs

ManagedClusterLoadBalancerProfileManagedOutboundIPs

Nome Descrição Valor
contar Número desejado de IP de saída criado/gerenciado pelo Azure para o balanceador de carga de cluster. Os valores permitidos devem estar no intervalo de 1 a 100 (inclusive). O valor padrão é 1. int

Restrições:
Valor mínimo = 1
Valor máximo = 100

ManagedClusterLoadBalancerProfileOutboundIPPrefixes

Nome Descrição Valor
publicIPPrefixes Uma lista de recursos de prefixo ip público. ResourceReference []

ManagedClusterLoadBalancerProfileOutboundIPs

Nome Descrição Valor
publicIPs Uma lista de recursos ip públicos. ResourceReference []

ManagedClusterProperties

Nome Descrição Valor
aadProfile Perfil da configuração do Azure Active Directory. ManagedClusterAADProfile
addonProfiles Perfil do complemento de cluster gerenciado. ManagedClusterPropertiesAddonProfiles
agentPoolProfiles Propriedades do pool de agentes. ManagedClusterAgentPoolProfile[]
apiServerAccessProfile Perfil de acesso para o servidor de API de cluster gerenciado. ManagedClusterAPIServerAccessProfile
diskEncryptionSetID ResourceId do conjunto de criptografia de disco a ser usado para habilitar a criptografia em repouso. corda
dnsPrefix Prefixo DNS especificado ao criar o cluster gerenciado. corda
enablePodSecurityPolicy (PRETERINDO) Se deseja habilitar a política de segurança do pod do Kubernetes (versão prévia). Esse recurso está definido para remoção em 15 de outubro de 2020. Saiba mais em aka.ms/aks/azpodpolicy. Bool
enableRBAC Se deseja habilitar o Kubernetes Role-Based Controle de Acesso. Bool
identityProfile Identidades associadas ao cluster. ManagedClusterPropertiesIdentityProfile
kubernetesVersion Versão do Kubernetes especificada ao criar o cluster gerenciado. corda
linuxProfile Perfil para VMs linux no cluster de serviço de contêiner. ContainerServiceLinuxProfile
networkProfile Perfil da configuração de rede. ContainerServiceNetworkProfile
nodeResourceGroup Nome do grupo de recursos que contém nós do pool de agentes. corda
servicePrincipalProfile Informações sobre uma identidade de entidade de serviço para o cluster a ser usado para manipular APIs do Azure. ManagedClusterServicePrincipalProfile
windowsProfile Perfil para VMs do Windows no cluster do serviço de contêiner. ManagedClusterWindowsProfile

ManagedClusterPropertiesAddonProfiles

Nome Descrição Valor

ManagedClusterPropertiesIdentityProfile

Nome Descrição Valor

ManagedClusterPropertiesIdentityProfileValue

Nome Descrição Valor
clientId A ID do cliente da identidade atribuída pelo usuário. corda
objectId A ID do objeto da identidade atribuída pelo usuário. corda
resourceId A ID do recurso da identidade atribuída pelo usuário. corda

ManagedClusterServicePrincipalProfile

Nome Descrição Valor
clientId A ID da entidade de serviço. cadeia de caracteres (obrigatório)
segredo A senha secreta associada à entidade de serviço em texto sem formatação. corda

ManagedClusterWindowsProfile

Nome Descrição Valor
adminPassword Especifica a senha da conta de administrador.

Comprimento mínimo: 8 caracteres

comprimento máximo: 123 caracteres

requisitos de complexidade: 3 de 4 condições abaixo precisam ser atendidas
Tem caracteres inferiores
Tem caracteres superiores
Tem um dígito
Tem um caractere especial (correspondência regex [\W_])

valores não permitidos: "abc@123", "P@$$w 0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!"
corda
adminUsername Especifica o nome da conta de administrador.

restrição : Não é possível terminar em "".

valores não permitidos: "administrador", "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".

Comprimento mínimo: 1 caractere

comprimento máximo: 20 caracteres
cadeia de caracteres (obrigatório)

Microsoft.ContainerService/managedClusters

Nome Descrição Valor
identidade A identidade do cluster gerenciado, se configurada. ManagedClusterIdentity
localização Local do recurso cadeia de caracteres (obrigatório)
nome O nome do recurso corda

Restrições:
Comprimento mínimo = 1
Comprimento máximo = 1
Padrão = ^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$ (obrigatório)
Propriedades Propriedades de um cluster gerenciado. ManagedClusterProperties
Tags Marcas de recurso Dicionário de nomes e valores de marca.
tipo O tipo de recurso "Microsoft.ContainerService/managedClusters@2020-01-01"

ResourceReference

Nome Descrição Valor
id A ID de recurso do Azure totalmente qualificada. corda

ResourceTags

Nome Descrição Valor