Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a: ✔️ AKS Automático
Azure Kubernetes Service (AKS) Automatic é uma experiência Kubernetes gerida que automatiza a configuração e operações do cluster AKS e incorpora configurações de melhores práticas. O AKS Automatic inclui também um [SLA de prontidão do pod][azure-sla] que garante 99,9% de operações de prontidão qualificadas do pod concluídas em 5 minutos, garantindo uma infraestrutura fiável e auto-reparadora para as suas aplicações. Neste início rápido, vai aprender a:
- Implante um cluster AKS automático.
- Corra uma aplicação de exemplo com vários contêineres e um conjunto de microsserviços e interfaces web simulando um cenário de retalho.
Antes de começar
- Este guia de introdução pressupõe que possui conhecimentos básicos de conceitos de Kubernetes. Para mais informações, consulte Kubernetes conceitos centrais para Azure Kubernetes Service (AKS).
- AKS Automatic ativa o Azure Policy no seu cluster AKS, mas deve preregistrar o fornecedor de recursos
Microsoft.PolicyInsightsna sua subscrição. Para mais informações, consulte Azure fornecedores e tipos de recursos.
Usa o ambiente Bash em Azure Cloud Shell. Para mais informações, consulte Comece com Azure Cloud Shell.
Se preferires executar comandos de referência da CLI localmente, instala CLI do Azure. Se estiveres a correr no Windows ou macOS, considera executar CLI do Azure num contentor Docker. Para mais informações, veja Como executar o CLI do Azure num contentor Docker.
Se estiveres a usar uma instalação local, inicia sessão na CLI do Azure usando o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de iniciação de sessão, veja Autenticar para Azure usando CLI do Azure.
Quando for solicitado, instale a extensão CLI do Azure na primeira utilização. Para mais informações sobre extensões, veja Usar e gerir extensões com a CLI do Azure.
Execute az version para descobrir a versão e as bibliotecas dependentes que estão instaladas. Para atualizar para a versão mais recente, execute az upgrade.
- CLI do Azure versão 2.77.0 ou posterior. Encontre sua versão usando o
az --versioncomando. Para instalar ou atualizar, consulte Install CLI do Azure. Se estiveres a usar o Azure Cloud Shell, a versão mais recente já está instalada lá. - Se tiver várias subscrições Azure, selecione o ID de subscrição apropriado para faturar recursos usando o comando
az account set.
- Para implementar um ficheiro Bicep, é necessário ter acesso de escrita aos recursos que criar e acesso a todas as operações sobre o tipo de recurso
Microsoft.Resources/deployments. Por exemplo, para criar uma máquina virtual (VM), precisas de permissõesMicrosoft.Compute/virtualMachines/writeeMicrosoft.Resources/deployments/*. Para uma lista de funções e permissões, veja Azure funções incorporadas.
Limitações
- O conjunto de nós do sistema dos clusters automáticos do AKS requer implantação em regiões Azure que suportem pelo menos três zonas de disponibilidade, disco do sistema operativo efémero e Azure Linux OS.
- O AKS Automatic está disponível nas seguintes regiões:
australiaeast,austriaeast,belgiumcentral,brazilsouth,canadacentral,centralindia,centralus,chilecentral,denmarkeast,eastasia,eastus,eastus2,francecentral,germanywestcentral,indonesiacentral,israelcentral,italynorth,japaneast,japanwest,koreacentral,malaysiawest,mexicocentral,newzealandnorth,northcentralus,northeurope,norwayeast,polandcentral,southafricanorth,southcentralus,southeastasia,spaincentral,swedencentral,switzerlandnorth,uaenorth,uksouth,westeurope,westus,westus2,westus3. - O cluster automático do AKS possui a pré-configuração de bloqueio do grupo de recursos de nós, o que não permite alterações ao grupo de recursos MC_, impedindo ligações virtuais de rede na zona DNS Privado padrão. Para cenários cross-VNet ou DNS personalizados, use rede personalizada e DNS privado seguindo Crie um cluster privado Azure Kubernetes Service (AKS) Automático numa rede virtual personalizada.
Importante
AKS Automatic tenta selecionar dinamicamente um tamanho de máquina virtual para o grupo de nós system com base na capacidade disponível na assinatura. Verifique se sua assinatura tem cota para 16 vCPUs de qualquer um dos seguintes tamanhos na região em que você está implantando o cluster: Standard_D4lds_v5, Standard_D4ads_v5, Standard_D4ds_v5, Standard_D4d_v5, Standard_D4d_v4, Standard_DS3_v2, Standard_DS12_v2, Standard_D4alds_v6, Standard_D4lds_v6 ou Standard_D4alds_v5. Pode visualizar quotas para famílias VM específicas e submeter pedidos de aumento de quotas através do portal Azure.
Se você tiver dúvidas adicionais, saiba mais através dos documentos de solução de problemas.
Criar um grupo de recursos
Um grupo de recursos Azure é um grupo lógico no qual Azure recursos são implementados e geridos.
Crie um grupo de recursos usando o comando az group create. O exemplo seguinte cria um grupo de recursos com o nome myResourceGroup na localização eastus:
az group create --name myResourceGroup --location eastus
A saída de exemplo a seguir se assemelha à criação bem-sucedida do grupo de recursos:
{
"id": "/subscriptions/<guid>/resourceGroups/myResourceGroup",
"location": "eastus",
"managedBy": null,
"name": "myResourceGroup",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null
}
Criar um cluster AKS Automático
Crie um cluster automático AKS usando o az aks create comando com o --sku parâmetro definido como automatic. O exemplo seguinte cria um cluster chamado myAKSAutomaticCluster com Prometheus Gerido e a integração Container Insights ativada:
az aks create \
--resource-group myResourceGroup \
--name myAKSAutomaticCluster \
--sku automatic
Após alguns minutos, o comando conclui e retorna informações formatadas em JSON sobre o cluster.
Criar cluster automático de Kubernetes
Para criar um cluster automático AKS, pesquise e selecione os serviços Kubernetes. Isto leva-o à página do centro Kubernetes (pré-visualização).
Na página central do Kubernetes (pré-visualização), selecione Criar>Cluster Kubernetes Automático.
No separador Básicos , preencha todos os campos necessários (Subscrição, Grupo de Recursos, nome do cluster Kubernetes e Região) e depois selecione Próximo.
No separador Monitorização, selecione as configurações de monitorização desejadas entre Azure Monitor (Container Insights), Managed Prometheus, Grafana Dashboards, Container Network Observability (ACNS) e Alerts, e depois selecione Next.
No separador Avançado, selecione as configurações avançadas desejadas Acesso Privado, Azure Rede Virtual, Identidade Gerida, Segurança de Rede de Contentores (ACNS) e Espaços de Nomes Kubernetes Geridos, e depois selecione Review + create.
Revise as configurações no separador 'Rever + criar', e depois selecione 'Criar' para implementar o AKS cluster automático.
Comece a configurar a sua primeira aplicação a partir do GitHub e configure um pipeline automatizado de implementação.
Revise o ficheiro Bicep
O ficheiro Bicep seguinte define um cluster automático do AKS:
@description('The name of the managed cluster resource.')
param clusterName string = 'myAKSAutomaticCluster'
@description('The location of the managed cluster resource.')
param location string = resourceGroup().location
resource aks 'Microsoft.ContainerService/managedClusters@2024-03-02-preview' = {
name: clusterName
location: location
sku: {
name: 'Automatic'
}
properties: {
agentPoolProfiles: [
{
name: 'systempool'
mode: 'System'
count: 3
}
]
}
identity: {
type: 'SystemAssigned'
}
}
Para mais informações sobre o recurso definido no ficheiro Bicep, consulte a referência ao Microsoft.ContainerService/managedClusters.
Implantar o ficheiro Bicep
Guarde o ficheiro Bicep como main.bicep para o seu computador local.
Importante
O ficheiro Bicep define o parâmetro
clusterNamepara a string myAKSAutomaticCluster. Se você quiser usar um nome de cluster diferente, atualize a cadeia de caracteres para o nome do cluster preferido antes de salvar o arquivo no computador.Implemente o ficheiro Bicep usando o comando [
az deployment group create][az-deployment-group-create].az deployment group create --resource-group myResourceGroup --template-file main.bicepA criação do cluster do AKS demora alguns minutos. Aguarde até que o cluster seja implantado com êxito antes de passar para a próxima etapa.
Conectar-se ao cluster
Para gerenciar um cluster Kubernetes, use o cliente de linha de comando Kubernetes, kubectl.
kubectl já está instalado se usares Azure Cloud Shell. Podes instalar kubectl localmente usando o az aks install-cli comando. Os clusters automáticos do AKS estão configurados com Microsoft Entra ID para controlo de acesso por funções (RBAC) do Kubernetes.
Observação
Quando crias um cluster usando o CLI do Azure, o teu utilizador é atribuído papéis incorporados para Azure Kubernetes Service RBAC Cluster Admin.
Configure
kubectlpara se conectar ao cluster do Kubernetes usando oaz aks get-credentialscomando. Este comando baixa credenciais e configura a CLI do Kubernetes para usá-las.az aks get-credentials --resource-group myResourceGroup --name myAKSAutomaticClusterVerifique a conexão ao seu cluster utilizando o comando
kubectl get. Este comando retorna uma lista dos nós do cluster.kubectl get nodesO seguinte exemplo mostra como é solicitado que inicie sessão:
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code AAAAAAAAA to authenticate.Depois de fazer login, a saída de exemplo a seguir mostra os pools de nós do sistema gerenciado. Verifique se o status do nó é Pronto.
NAME STATUS ROLES AGE VERSION aks-nodepool1-12345678-vmss000000 Ready agent 2m26s v1.28.5 aks-nodepool1-12345678-vmss000001 Ready agent 2m26s v1.28.5 aks-nodepool1-12345678-vmss000002 Ready agent 2m26s v1.28.5
Implantar o aplicativo
Para implementar a aplicação, utiliza-se um ficheiro manifesto para criar todos os objetos necessários para executar a aplicação AKS Store. Um arquivo de manifesto do Kubernetes define o estado desejado de um cluster, como quais imagens de contêiner devem ser executadas. O manifesto inclui as seguintes implantações e serviços do Kubernetes:
- Vitrine: aplicativo Web para que os clientes visualizem produtos e façam pedidos.
- Serviço do produto: Mostra as informações do produto.
- Serviço de pedidos: Faz pedidos.
- Rabbit MQ: Fila de mensagens para uma fila de pedidos.
Observação
Não recomendamos a execução de contêineres com monitoração de estado, como o Rabbit MQ, sem armazenamento persistente para produção. Estes são usados aqui para simplificar, mas recomendamos o uso de serviços geridos, como o Azure Cosmos DB ou o Azure Service Bus.
Crie um namespace
aks-store-demopara implantar os recursos do Kubernetes.kubectl create ns aks-store-demoImplante o aplicativo usando o
kubectl applycomando noaks-store-demonamespace. O ficheiro YAML que define a implementação está em GitHub.kubectl apply -n aks-store-demo -f https://raw.githubusercontent.com/Azure-Samples/aks-store-demo/main/aks-store-ingress-quickstart.yamlA saída de exemplo a seguir mostra as implantações e os serviços:
statefulset.apps/rabbitmq created configmap/rabbitmq-enabled-plugins created service/rabbitmq created deployment.apps/order-service created service/order-service created deployment.apps/product-service created service/product-service created deployment.apps/store-front created service/store-front created ingress/store-front created
Testar a aplicação
Quando o aplicativo é executado, um serviço Kubernetes expõe o front-end do aplicativo à Internet. Este processo pode demorar alguns minutos a concluir.
Verifique o status dos pods implantados usando o comando kubectl get pods . Certifique-se de que todos os pods estão
Runningantes de prosseguir. Se esta for a primeira tarefa que você implanta, pode levar alguns minutos para que o provisionamento automático de nós crie um cluster de nós para executar os pods.kubectl get pods -n aks-store-demoVerifique se há um endereço IP público para a aplicação front-end de loja. Monitore o progresso utilizando o comando kubectl get service com o argumento
--watch.kubectl get ingress store-front -n aks-store-demo --watchA saída ADDRESS para o
store-frontserviço inicialmente mostra vazio:NAME CLASS HOSTS ADDRESS PORTS AGE store-front webapprouting.kubernetes.azure.com * 80 12mQuando o ENDEREÇO mudar de um estado em branco para um endereço IP público real, use
CTRL-Cpara parar o processo dekubectlmonitorização.A saída de exemplo a seguir mostra um endereço IP público válido atribuído ao serviço:
NAME CLASS HOSTS ADDRESS PORTS AGE store-front webapprouting.kubernetes.azure.com * 4.255.22.196 80 12mAbra um navegador web no endereço IP externo do seu acesso para ver a aplicação Azure Store em ação.
Eliminar o cluster
Se não planeias seguir o tutorial AKS, elimina recursos desnecessários para evitar encargos do Azure.
Remova o grupo de recursos, o serviço de contêiner e todos os recursos relacionados usando o az group delete comando.
az group delete --name myResourceGroup --yes --no-wait
Observação
O cluster AKS foi criado com uma identidade gerenciada atribuída ao sistema, que é a opção de identidade padrão usada neste início rápido. A plataforma gerencia essa identidade, portanto, você não precisa removê-la manualmente.
Conteúdo relacionado
Neste início rápido, você implantou um cluster Kubernetes usando o AKS Automatic e, em seguida, implantou um aplicativo simples de vários contêineres nele. Este aplicativo de exemplo é apenas para fins de demonstração e não representa todas as práticas recomendadas para aplicativos Kubernetes. Para obter orientação sobre como criar soluções completas com o AKS para produção, consulte Orientação de solução AKS.
Para saber mais sobre o AKS Automatic, consulte o Introdução ao Azure Kubernetes Service (AKS) Automatic