Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este artigo mostra como criar uma rede virtual (VNet) e uma sub-rede, criar uma identidade gerenciada com permissões para acessar a VNet e criar um cluster do Serviço Kubernetes do Azure (AKS) em sua VNet personalizada com o provisionamento automático de nó (NAP) habilitado.
Pré-requisitos
- Uma assinatura do Azure. Se não tiver uma, pode criar uma conta gratuita.
- Versão
2.76.0da CLI do Azure ou posterior. Para localizar a versão, executeaz --version. Para obter mais informações sobre como instalar ou atualizar a CLI do Azure, consulte Instalar a CLI do Azure. - Leia o artigo Visão geral do provisionamento automático de nós (NAP) no AKS , que detalha como a NAP funciona.
- Leia a visão geral das configurações de rede para o provisionamento automático dos nós (NAP) no Azure Kubernetes Service (AKS).
Limitações
- Ao criar um cluster NAP em uma rede virtual personalizada (VNet), você deve usar um balanceador de carga padrão. O Basic Load Balancer não é suportado.
- Para analisar outras limitações e recursos sem suporte para NAP, consulte o artigo Visão geral do provisionamento automático de nós (NAP) no AKS .
Criar uma rede virtual e uma sub-rede
Importante
Ao usar uma VNet personalizada com NAP, tenha em mente as seguintes informações:
- Você deve criar e delegar uma sub-rede do servidor API ao
Microsoft.ContainerService/managedClusters, que concede ao serviço AKS permissões para injetar os pods do servidor API e o balanceador de carga interno nessa sub-rede. Você não pode usar a sub-rede para outras cargas de trabalho, mas pode usá-la para vários clusters AKS localizados na mesma VNet. O tamanho mínimo suportado da sub-rede do servidor API é /28. - Todo o tráfego dentro da VNet é permitido por padrão. No entanto, se você adicionou regras de NSG (grupo de segurança de rede) para restringir o tráfego entre sub-redes diferentes, precisará garantir que você configure as permissões adequadas. Para obter mais informações, consulte a documentação do grupo de segurança de rede.
Crie uma VNet usando o
az network vnet createcomando.az network vnet create \ --name $VNET_NAME \ --resource-group $RG_NAME \ --location $LOCATION \ --address-prefixes 172.19.0.0/16Crie uma sub-rede usando o
az network vnet subnet createcomando e delegue-a aoMicrosoft.ContainerService/managedClusters.az network vnet subnet create \ --resource-group $RG_NAME \ --vnet-name $VNET_NAME \ --name $SUBNET_NAME \ --delegations Microsoft.ContainerService/managedClusters \ --address-prefixes 172.19.0.0/28
Criar uma identidade gerenciada e dar-lhe permissões para acessar a rede virtual
Crie uma identidade gerenciada usando o
az identity createcomando.az identity create \ --resource-group $RG_NAME \ --name $IDENTITY_NAME \ --location $LOCATIONObtenha o ID principal da identidade gerenciada e defina-o como uma variável de ambiente usando o comando [
az identity show][az-identity-show].IDENTITY_PRINCIPAL_ID=$(az identity show --resource-group $RG_NAME --name $IDENTITY_NAME --query principalId -o tsv)Atribua a função de Colaborador de Rede à identidade gerenciada usando o
az role assignment createcomando.az role assignment create \ --scope "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RG_NAME/providers/Microsoft.Network/virtualNetworks/$VNET_NAME" \ --role "Network Contributor" \ --assignee $IDENTITY_PRINCIPAL_ID
Criar um cluster AKS com o provisionamento automático de nós (NAP) em uma VNet personalizada
Crie um cluster AKS com NAP ativada em sua VNet personalizada usando o
az aks createcomando. Certifique-se de definir o sinalizador--node-provisioning-modeparaAutopara ativar o NAP.O comando a seguir também define
--network-plugincomoazure,--network-plugin-modecomooverlay, e--network-dataplanecomocilium. Para obter mais informações sobre configurações de rede suportadas com NAP, consulte Configurar rede para provisionamento automático de nó no AKS.az aks create \ --name $CLUSTER_NAME \ --resource-group $RG_NAME \ --location $LOCATION \ --assign-identity "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RG_NAME/providers/Microsoft.ManagedIdentity/userAssignedIdentities/$IDENTITY_NAME" \ --network-dataplane cilium \ --network-plugin azure \ --network-plugin-mode overlay \ --vnet-subnet-id "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RG_NAME/providers/Microsoft.Network/virtualNetworks/$CUSTOM_VNET_NAME/subnets/$SUBNET_NAME" \ --node-provisioning-mode AutoApós alguns minutos, o comando conclui e retorna informações formatadas em JSON sobre o cluster.
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 $RG_NAME \ --name $CLUSTER_NAMEVerifique a conexão ao seu cluster utilizando o comando
kubectl get. Este comando devolve uma lista dos nodes do cluster.kubectl get nodes
Próximos passos
Para obter mais informações sobre o provisionamento automático de nós no AKS, consulte os seguintes artigos: