Compartilhar via


Microsoft.ContainerService managedClusters 2017-08-31

Remarks

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@2017-08-31' = {
  location: 'string'
  name: 'string'
  properties: {
    agentPoolProfiles: [
      {
        count: int
        dnsPrefix: 'string'
        name: 'string'
        osDiskSizeGB: int
        osType: 'string'
        ports: [
          int
        ]
        storageProfile: 'string'
        vmSize: 'string'
        vnetSubnetID: 'string'
      }
    ]
    dnsPrefix: 'string'
    kubernetesVersion: 'string'
    linuxProfile: {
      adminUsername: 'string'
      ssh: {
        publicKeys: [
          {
            keyData: 'string'
          }
        ]
      }
    }
    servicePrincipalProfile: {
      clientId: 'string'
      keyVaultSecretRef: {
        secretName: 'string'
        vaultID: 'string'
        version: 'string'
      }
      secret: 'string'
    }
  }
  tags: {
    {customized property}: 'string'
  }
}

Valores da propriedade

Microsoft.ContainerService/managedClusters

Name Description Value
local Local do recurso cadeia de caracteres (obrigatório)
name O nome do recurso cadeia de caracteres (obrigatório)
properties Propriedades de um cluster gerenciado. ManagedClusterProperties
tags Etiquetas de recursos Dicionário de nomes e valores de tags. Consulte Marcas em modelos

ContainerServiceAgentPoolProfile

Name Description Value
count 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

Constraints:
Valor mínimo = 1
Valor máximo = 100
dnsPrefix Prefixo DNS a ser usado para criar o FQDN para o pool de agentes. cadeia
name Nome exclusivo do perfil do pool de agentes no contexto da assinatura e do grupo de recursos. cadeia de caracteres (obrigatório)
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

Constraints:
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'
ports Matriz de números de portas usada para expor neste pool de agentes. As portas abertas padrão são diferentes com base na sua escolha de orquestrador. int

Constraints:
Valor mínimo = 1
Valor máximo = 65535[]
storageProfile O perfil de armazenamento especifica que tipo de armazenamento foi usado. Escolha entre StorageAccount e ManagedDisks. Deixe-o vazio, escolheremos para você com base na escolha do orquestrador. 'ManagedDisks'
'StorageAccount'
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' (obrigatório)
vnetSubnetID A SubnetID da VNet especifica o identificador de sub-rede da VNet. cadeia

ContainerServiceLinuxProfile

Name Description Value
adminUsername O nome de usuário do administrador a ser usado para VMs linux. string

Constraints:
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)

ContainerServicePrincipalProfile

Name Description Value
clientId A ID da entidade de serviço. cadeia de caracteres (obrigatório)
keyVaultSecretRef Referência a um segredo armazenado no Azure Key Vault. KeyVaultSecretRef
segredo A senha secreta associada à entidade de serviço em texto sem formatação. cadeia

ContainerServiceSshConfiguration

Name Description Value
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

Name Description Value
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)

KeyVaultSecretRef

Name Description Value
secretName O nome do segredo. cadeia de caracteres (obrigatório)
vaultID Identificador do cofre de chaves. cadeia de caracteres (obrigatório)
versão A versão secreta. cadeia

ManagedClusterProperties

Name Description Value
agentPoolProfiles Propriedades do pool de agentes. ContainerServiceAgentPoolProfile[]
dnsPrefix Prefixo DNS especificado ao criar o cluster gerenciado. cadeia
kubernetesVersion Versão do Kubernetes especificada ao criar o cluster gerenciado. cadeia
linuxProfile Perfil para VMs linux no cluster de serviço de contêiner. ContainerServiceLinuxProfile
servicePrincipalProfile Informações sobre uma identidade de entidade de serviço para o cluster a ser usado para manipular APIs do Azure. O segredo ou keyVaultSecretRef deve ser especificado. ContainerServicePrincipalProfile

ResourceTags

Name Description Value

Exemplos de uso

Módulos verificados do Azure

O módulos verificados do Azure a seguir pode ser usado para implantar esse tipo de recurso.

Module Description
Cluster Gerenciado do AKS (Serviço de Kubernetes do Azure) Módulo de recurso AVM para cluster gerenciado do AKS (Serviço de Kubernetes do Azure)

Exemplos de Início Rápido do Azure

Os modelos de Início Rápido do Azure a seguir contêm exemplos de Bicep para implantar esse tipo de recurso.

Arquivo Bicep Description
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
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
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 Helm Implantar um cluster gerenciado com o AKS (Serviço de Contêiner do Azure) com o Helm
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": "2017-08-31",
  "name": "string",
  "location": "string",
  "properties": {
    "agentPoolProfiles": [
      {
        "count": "int",
        "dnsPrefix": "string",
        "name": "string",
        "osDiskSizeGB": "int",
        "osType": "string",
        "ports": [ "int" ],
        "storageProfile": "string",
        "vmSize": "string",
        "vnetSubnetID": "string"
      }
    ],
    "dnsPrefix": "string",
    "kubernetesVersion": "string",
    "linuxProfile": {
      "adminUsername": "string",
      "ssh": {
        "publicKeys": [
          {
            "keyData": "string"
          }
        ]
      }
    },
    "servicePrincipalProfile": {
      "clientId": "string",
      "keyVaultSecretRef": {
        "secretName": "string",
        "vaultID": "string",
        "version": "string"
      },
      "secret": "string"
    }
  },
  "tags": {
    "{customized property}": "string"
  }
}

Valores da propriedade

Microsoft.ContainerService/managedClusters

Name Description Value
apiVersion A versão da API '2017-08-31'
local Local do recurso cadeia de caracteres (obrigatório)
name O nome do recurso cadeia de caracteres (obrigatório)
properties Propriedades de um cluster gerenciado. ManagedClusterProperties
tags Etiquetas de recursos Dicionário de nomes e valores de tags. Consulte Marcas em modelos
tipo O tipo de recurso 'Microsoft.ContainerService/managedClusters'

ContainerServiceAgentPoolProfile

Name Description Value
count 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

Constraints:
Valor mínimo = 1
Valor máximo = 100
dnsPrefix Prefixo DNS a ser usado para criar o FQDN para o pool de agentes. cadeia
name Nome exclusivo do perfil do pool de agentes no contexto da assinatura e do grupo de recursos. cadeia de caracteres (obrigatório)
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

Constraints:
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'
ports Matriz de números de portas usada para expor neste pool de agentes. As portas abertas padrão são diferentes com base na sua escolha de orquestrador. int

Constraints:
Valor mínimo = 1
Valor máximo = 65535[]
storageProfile O perfil de armazenamento especifica que tipo de armazenamento foi usado. Escolha entre StorageAccount e ManagedDisks. Deixe-o vazio, escolheremos para você com base na escolha do orquestrador. 'ManagedDisks'
'StorageAccount'
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' (obrigatório)
vnetSubnetID A SubnetID da VNet especifica o identificador de sub-rede da VNet. cadeia

ContainerServiceLinuxProfile

Name Description Value
adminUsername O nome de usuário do administrador a ser usado para VMs linux. string

Constraints:
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)

ContainerServicePrincipalProfile

Name Description Value
clientId A ID da entidade de serviço. cadeia de caracteres (obrigatório)
keyVaultSecretRef Referência a um segredo armazenado no Azure Key Vault. KeyVaultSecretRef
segredo A senha secreta associada à entidade de serviço em texto sem formatação. cadeia

ContainerServiceSshConfiguration

Name Description Value
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

Name Description Value
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)

KeyVaultSecretRef

Name Description Value
secretName O nome do segredo. cadeia de caracteres (obrigatório)
vaultID Identificador do cofre de chaves. cadeia de caracteres (obrigatório)
versão A versão secreta. cadeia

ManagedClusterProperties

Name Description Value
agentPoolProfiles Propriedades do pool de agentes. ContainerServiceAgentPoolProfile[]
dnsPrefix Prefixo DNS especificado ao criar o cluster gerenciado. cadeia
kubernetesVersion Versão do Kubernetes especificada ao criar o cluster gerenciado. cadeia
linuxProfile Perfil para VMs linux no cluster de serviço de contêiner. ContainerServiceLinuxProfile
servicePrincipalProfile Informações sobre uma identidade de entidade de serviço para o cluster a ser usado para manipular APIs do Azure. O segredo ou keyVaultSecretRef deve ser especificado. ContainerServicePrincipalProfile

ResourceTags

Name Description Value

Exemplos de uso

Modelos de Início Rápido do Azure

Os modelos de Início Rápido do Azure a seguir implantar esse tipo de recurso.

Template Description
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
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
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 Helm

Implantar no Azure
Implantar um cluster gerenciado com o AKS (Serviço de Contêiner do Azure) com o Helm
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 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@2017-08-31"
  name = "string"
  parent_id = "string"
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      agentPoolProfiles = [
        {
          count = int
          dnsPrefix = "string"
          name = "string"
          osDiskSizeGB = int
          osType = "string"
          ports = [
            int
          ]
          storageProfile = "string"
          vmSize = "string"
          vnetSubnetID = "string"
        }
      ]
      dnsPrefix = "string"
      kubernetesVersion = "string"
      linuxProfile = {
        adminUsername = "string"
        ssh = {
          publicKeys = [
            {
              keyData = "string"
            }
          ]
        }
      }
      servicePrincipalProfile = {
        clientId = "string"
        keyVaultSecretRef = {
          secretName = "string"
          vaultID = "string"
          version = "string"
        }
        secret = "string"
      }
    }
  }
}

Valores da propriedade

Microsoft.ContainerService/managedClusters

Name Description Value
local Local do recurso cadeia de caracteres (obrigatório)
name O nome do recurso cadeia de caracteres (obrigatório)
properties Propriedades de um cluster gerenciado. ManagedClusterProperties
tags Etiquetas de recursos Dicionário de nomes e valores de tags.
tipo O tipo de recurso "Microsoft.ContainerService/managedClusters@2017-08-31"

ContainerServiceAgentPoolProfile

Name Description Value
count 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

Constraints:
Valor mínimo = 1
Valor máximo = 100
dnsPrefix Prefixo DNS a ser usado para criar o FQDN para o pool de agentes. cadeia
name Nome exclusivo do perfil do pool de agentes no contexto da assinatura e do grupo de recursos. cadeia de caracteres (obrigatório)
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

Constraints:
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'
ports Matriz de números de portas usada para expor neste pool de agentes. As portas abertas padrão são diferentes com base na sua escolha de orquestrador. int

Constraints:
Valor mínimo = 1
Valor máximo = 65535[]
storageProfile O perfil de armazenamento especifica que tipo de armazenamento foi usado. Escolha entre StorageAccount e ManagedDisks. Deixe-o vazio, escolheremos para você com base na escolha do orquestrador. 'ManagedDisks'
'StorageAccount'
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' (obrigatório)
vnetSubnetID A SubnetID da VNet especifica o identificador de sub-rede da VNet. cadeia

ContainerServiceLinuxProfile

Name Description Value
adminUsername O nome de usuário do administrador a ser usado para VMs linux. string

Constraints:
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)

ContainerServicePrincipalProfile

Name Description Value
clientId A ID da entidade de serviço. cadeia de caracteres (obrigatório)
keyVaultSecretRef Referência a um segredo armazenado no Azure Key Vault. KeyVaultSecretRef
segredo A senha secreta associada à entidade de serviço em texto sem formatação. cadeia

ContainerServiceSshConfiguration

Name Description Value
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

Name Description Value
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)

KeyVaultSecretRef

Name Description Value
secretName O nome do segredo. cadeia de caracteres (obrigatório)
vaultID Identificador do cofre de chaves. cadeia de caracteres (obrigatório)
versão A versão secreta. cadeia

ManagedClusterProperties

Name Description Value
agentPoolProfiles Propriedades do pool de agentes. ContainerServiceAgentPoolProfile[]
dnsPrefix Prefixo DNS especificado ao criar o cluster gerenciado. cadeia
kubernetesVersion Versão do Kubernetes especificada ao criar o cluster gerenciado. cadeia
linuxProfile Perfil para VMs linux no cluster de serviço de contêiner. ContainerServiceLinuxProfile
servicePrincipalProfile Informações sobre uma identidade de entidade de serviço para o cluster a ser usado para manipular APIs do Azure. O segredo ou keyVaultSecretRef deve ser especificado. ContainerServicePrincipalProfile

ResourceTags

Name Description Value

Exemplos de uso

Exemplos do Terraform

Um exemplo básico de implantação do Cluster do Kubernetes gerenciado (também conhecido como AKS/Serviço de Kubernetes do Azure).

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

resource "azapi_resource" "resourceGroup" {
  type                      = "Microsoft.Resources/resourceGroups@2020-06-01"
  name                      = var.resource_name
  location                  = var.location
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

resource "azapi_resource" "managedCluster" {
  type      = "Microsoft.ContainerService/managedClusters@2023-04-02-preview"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  identity {
    type         = "SystemAssigned"
    identity_ids = []
  }
  body = {
    properties = {
      agentPoolProfiles = [
        {
          count  = 1
          mode   = "System"
          name   = "default"
          vmSize = "Standard_DS2_v2"
        },
      ]
      dnsPrefix = var.resource_name
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

Módulos verificados do Azure

O módulos verificados do Azure a seguir pode ser usado para implantar esse tipo de recurso.

Module Description
Cluster gerenciado do AKS Módulo de recurso do AVM para cluster gerenciado do AKS