Tutorial: Adicionar um pool de nós do Azure Linux ao seu cluster existente do AKS (Serviço de Kubernetes do Azure)

No AKS, os nós com a mesma configuração são agrupados em pools de nós. Cada pool contém as VMs que executam seus aplicativos. No tutorial anterior, você criou um cluster do Host de Contêiner do Linux do Azure com um único pool de nós. Para atender aos diferentes requisitos de computação ou armazenamento de seus aplicativos, você pode criar pools de nós de usuário extras.

Neste tutorial, parte dois de cinco, você aprenderá a:

  • Adicionar um pool de nós do Linux do Azure.
  • Verificar o status dos pools de nós.

Os comandos neste tutorial usam as variáveis de ambiente definidas em Tutorial 1: criar um cluster com o host de contêiner Azure Linux para AKS.

Em tutoriais posteriores, você aprenderá a migrar nós para o Linux do Azure e habilitar a telemetria para monitorar seus clusters.

Pré-requisitos

Definir variáveis de ambiente

Defina as variáveis de ambiente a seguir para criar nomes de recursos exclusivos para cada implantação. Substitua o espaço reservado <your-node-pool-name> por um nome de sua escolha. Opcionalmente, você pode acrescentar um sufixo aleatório para garantir a exclusividade. O nome de um pool de nós deve começar com uma letra minúscula e só pode conter caracteres alfanuméricos. Para pools de nós do Linux, o comprimento deve ter entre 12 e 12 caracteres.

# Set random suffix for uniqueness
export RANDOM_SUFFIX=$(openssl rand -hex 3)

# Set node pool name
export NODE_POOL_NAME="<your-node-pool-name>$RANDOM_SUFFIX"

Adicionar um pool de nós do Azure Linux

Adicione um pool de nós do Linux Azure ao cluster existente usando o comando az aks nodepool add e especifique --os-sku AzureLinux. O exemplo a seguir cria um pool de nós que executa três nós no cluster de Tutorial 1: criar um cluster com o Host de Contêineres Linux do Azure para AKS.

az aks nodepool add \
    --resource-group $RESOURCE_GROUP \
    --cluster-name $CLUSTER_NAME \
    --name $NODE_POOL_NAME \
    --node-count 3 \
    --os-sku AzureLinux

Exemplo de saída:

{
  "agentPoolType": "VirtualMachineScaleSets",
  "count": 3,
  "name": "alnodepool",
  "osType": "Linux",
  "provisioningState": "Succeeded",
  "resourceGroup": "testAzureLinuxResourceGroupxxxxx",
  "type": "Microsoft.ContainerService/managedClusters/agentPools"
}

Verificar o status do pool de nós

Verifique o status dos pools de nós usando o az aks nodepool list comando.

az aks nodepool list --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME

Exemplo de saída:

[
  {
    "agentPoolType": "VirtualMachineScaleSets",
    "availabilityZones": null,
    "count": 1,
    "enableAutoScaling": false,
    "enableEncryptionAtHost": false,
    "enableFips": false,
    "enableNodePublicIp": false,
    "id": "/subscriptions/REDACTED/resourcegroups/myAKSResourceGroupxxxxx/providers/Microsoft.ContainerService/managedClusters/myAKSClusterxxxxx/agentPools/nodepoolx",
    "maxPods": 110,
    "mode": "System",
    "name": "nodepoolx",
    "nodeImageVersion": "AKSUbuntu-1804gen2containerd-2023.06.06",
    "orchestratorVersion": "1.25.6",
    "osDiskSizeGb": 128,
    "osDiskType": "Managed",
    "osSku": "Ubuntu",
    "osType": "Linux",
    "powerState": {
      "code": "Running"
    },
    "provisioningState": "Succeeded",
    "resourceGroup": "myAKSResourceGroupxxxxx",
    "type": "Microsoft.ContainerService/managedClusters/agentPools",
    "vmSize": "Standard_DS2_v2"
  },
  {
    "agentPoolType": "VirtualMachineScaleSets",
    "availabilityZones": null,
    "count": 3,
    "enableAutoScaling": false,
    "enableEncryptionAtHost": false,
    "enableFips": false,
    "enableNodePublicIp": false,
    "id": "/subscriptions/REDACTED/resourcegroups/myAKSResourceGroupxxxxx/providers/Microsoft.ContainerService/managedClusters/myAKSClusterxxxxx/agentPools/npxxxxxx",
    "maxPods": 110,
    "mode": "User",
    "name": "npxxxxxx",
    "nodeImageVersion": "AzureLinuxContainerHost-2023.06.06",
    "orchestratorVersion": "1.25.6",
    "osDiskSizeGb": 128,
    "osDiskType": "Managed",
    "osSku": "AzureLinux",
    "osType": "Linux",
    "powerState": {
      "code": "Running"
    },
    "provisioningState": "Succeeded",
    "resourceGroup": "myAKSResourceGroupxxxxx",
    "type": "Microsoft.ContainerService/managedClusters/agentPools",
    "vmSize": "Standard_DS2_v2"
  }
]

Próxima etapa

Neste tutorial, você adicionou um pool de nós do Linux do Azure ao cluster existente. No próximo tutorial, você aprenderá a migrar nós existentes para o Linux do Azure.