Como Criar um Cluster AKS com Rede Personalizada

A criação de clusters do Azure Kubernetes Service (AKS) com rede personalizada é uma prática essencial para ambientes empresariais que exigem maior controlo sobre a segurança, conectividade e integração com outros recursos da infraestrutura. Ao optar por uma configuração de rede personalizada, o administrador pode definir a VNet e sub-redes específicas onde os nós do cluster serão implementados, permitindo aplicar políticas de segurança mais rigorosas, integrar com firewalls, gateways de aplicação e serviços internos, além de facilitar a observabilidade e o compliance.

Este laboratório prático tem como objetivo guiar passo-a-passo a criação de um cluster AKS com rede personalizada, utilizando a Azure CLI como ferramenta principal. A abordagem adotada segue os princípios de Infraestrutura como Código (IaC), promovendo automação, reprodutibilidade e escalabilidade, características fundamentais para ambientes de produção.

1- Criar o grupo de recursos conforme pode ver no script abaixo.

az group create --name RG-AKS-NET --location eastus

2- Criar a Vnet e Sub-Net.

az network vnet create \
  --resource-group RG-AKS-NET \
  --name VNet-AKS \
  --address-prefixes 10.0.0.0/8 \
  --subnet-name Subnet-AKS \
  --subnet-prefix 10.240.0.0/16

3- Obter o ID da Sub-net.

SUBNET_ID=$(az network vnet subnet show \
  --resource-group RG-AKS-NET \
  --vnet-name VNet-AKS \
  --name Subnet-AKS \
  --query id -o tsv)

4- Criar o Cluster AKS com rede personalizada.

az aks create \
  --resource-group RG-AKS-NET \
  --name AKS-NET-Cluster \
  --node-count 3 \
  --enable-addons monitoring \
  --network-plugin azure \
  --vnet-subnet-id $SUBNET_ID \
  --generate-ssh-keys

Ao rodar o último script vocé poderá receber ter um retorno com o seguinte erro:

  • (MissingSubscriptionRegistration) The subscription is not registered to use namespace ‘Microsoft.ContainerService’. See https://aka.ms/rps-not-found for how to register subscriptions. Code: MissingSubscriptionRegistration Message: The subscription is not registered to use namespace ‘Microsoft.ContainerService’. See https://aka.ms/rps-not-found for how to register subscriptions. Exception Details: (MissingSubscriptionRegistration) The subscription is not registered to use namespace ‘Microsoft.ContainerService’. See https://aka.ms/rps-not-found for how to register subscriptions. Code: MissingSubscriptionRegistration Message: The subscription is not registered to use namespace ‘Microsoft.ContainerService’. See https://aka.ms/rps-not-found for how to register subscriptions. Target: Microsoft.ContainerService

Este erro que eventualmente poderá receber, indica que a sua subscrição ainda não está registada para utilizar o namespace Microsoft.ContainerService, que é essencial para criar recusos do AKS. Para resolver execute o script que deixo abaixo para registar o namespace na subscrição:

az provider register --namespace Microsoft.ContainerService

Este comando ativa o provedor de recursos necessários para criar clusters AKS. Após a execução, pode demorar alguns minutos para que o registo seja concluído. Caso queira confirmar que o registo foi bem sucedido, corra com o comando abaixo e o resultado deve ser “Registered”.

az provider show --namespace Microsoft.ContainerService --query "registrationState"

Resumindo, este tipo de configuração é especialmente relevante para cenários empresariais que exigem conformidade, segmentação de rede e integração com soluções como Azure Firewall, Bastion, Application Gateway e Azure Monitor. Ao aplicar os princípios de Infraestrutura como Código (IaC), o processo torna-se mais automatizado, reprodutível e alinhado com boas práticas de DevOps.

Para aprofundar, recomendo a leitura da documentação oficial da Microsoft Configure Azure CNI networking in Azure Kubernetes Service (AKS) – Azure Kubernetes Service | Microsoft Learn.

Deixe o seu comentário e até ao próximo artigo.

Leave a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *