Gerenciar pools de nós do sistema no AKS (Serviço de Kubernetes do Azure)

Em AKS (Serviço de Kubernetes do Azure), nós da mesma configuração são agrupados em pools de nós . Os pools de nós contêm as VMs (máquinas virtuais) subjacentes que executam seus aplicativos. Os pools de nós do sistema e os pools de nós do usuário são dois modos de pool de nós diferentes para os clusters AKS. Este artigo explica como gerenciar pools de nós do sistema no AKS. Para obter informações sobre como usar vários pools de nós, consulte criar pools de nós.

  • Pools de nós do sistema: a principal finalidade é hospedar pods críticos do sistema como CoreDNS e metrics-server. Os pools de nós do sistema não devem ser usados para executar seu aplicativo. Os pools de nós do sistema usam o Ubuntu Linux ou Azure Linux.
  • Pools de nós de usuário: O objetivo principal é hospedar os pods da sua aplicação e isolar as aplicações do pool de nós do sistema. Esse isolamento impede que um aplicativo cause instabilidade no conjunto de nós do sistema do seu cluster. Os pools de nós de usuário podem usar o Ubuntu Linux, Azure Linux ou Windows.

Um cluster AKS de produção com um único pool de nós do sistema deve conter pelo menos dois nós. A recomendação para um cluster AKS de produção com um único pool de nós do sistema é ter pelo menos três nós para melhorar a tolerância a falhas e zonas de disponibilidade. Por exemplo, a contagem de nós padrão do comando az aks create é três e cria um novo cluster com um único pool de nós do sistema Linux e três nós do Linux.

É possível, mas não recomendado, agendar pods de aplicativos em um pool de nós do sistema se você tiver apenas um pool de nós em seu cluster AKS. Uma solução melhor é criar um pool de nós de usuário para seu aplicativo.

Antes de começar

Você precisa do CLI do Azure versão 2.3.1 ou posterior instalado e configurado. Para localizar a versão, execute o comando az --version. Se precisar instalar ou atualizar, consulte Instalar CLI do Azure.

Você precisa do Azure PowerShell versão 7.5.0 ou posterior instalado e configurado. Para localizar a versão, execute o comando Get-InstalledModule -Name Az. Se você precisar instalar ou atualizar, consulte Instalar Azure PowerShell.

Antes de começar, verifique se você tem os seguintes pré-requisitos:

  • Uma assinatura de Azure ativa.
  • Terraform instalado localmente.
  • CLI do Azure instalada e conectada.
  • Permissões para criar e gerenciar recursos do AKS.

Defina sua assinatura:

az account set --subscription <subscription-id>

Limitações

As seguintes limitações se aplicam ao criar e gerenciar clusters do AKS com suporte a vários pools de nós do sistema.

  • Confira Cotas, restrições de tamanho de VM e disponibilidade de região no AKS.
  • Uma versão 2020-03-01 ou superior da API deve ser usada para configurar um modo de pool de nós. Os clusters criados em versões de API mais antigas que 2020-03-01 contêm apenas pools de nós de usuário, mas podem ser migrados para conter pools de nós do sistema seguindo as etapas do modo de pool de atualizações.
  • O nome de um pool de nós só pode conter caracteres alfanuméricos minúsculos e deve começar com uma letra minúscula. Para pools de nós do Linux, o comprimento deve ter entre 1 e 12 caracteres. Para pools de nós do Windows, o comprimento deve ter entre um e seis caracteres.
  • O modo de um pool de nós é uma propriedade necessária e deve ser definido explicitamente ao usar modelos ARM ou chamadas diretas à API.

Pools de nós do usuário e do sistema

Para um pool de nós do sistema, o AKS atribui automaticamente o rótulo kubernetes.azure.com/mode: system aos seus nós. Isso faz com que o AKS prefira o agendamento de pods do sistema em pools de nós que contêm esse rótulo. Este rótulo não impede o agendamento de pods de aplicativo em pools de nós do sistema. Mas recomendamos que você isole os pods críticos do sistema dos pods do seu aplicativo para evitar que os seus pods de aplicativos mal configurados ou com comportamento anormal excluam acidentalmente os pods do sistema.

É possível impor esse comportamento criando um pool de nós do sistema dedicado. Use o taint CriticalAddonsOnly=true:NoSchedule para impedir que os pods de aplicativo sejam agendados nos pools de nós do sistema.

Os pools de nós do sistema têm as seguintes restrições:

  • Os pools de nós do sistema devem dar suporte a pelo menos 30 pods, conforme descrito pela fórmula de valor mínimo e máximo para pods.
  • Os pools do sistema osType devem ser Linux.
  • Os pools de usuários osType podem ser Linux ou Windows.
  • Os pools do sistema devem conter pelo menos dois nós, mas a recomendação é de três nós. Pools de nós de usuário podem conter zero ou mais nós.
  • Os pools de nós do sistema exigem um SKU de VM de pelo menos 4 vCPUs e 4 GB de memória.
  • As VMs da série B não têm suporte para pools de nós do sistema.
  • É recomendado um mínimo de três nós com 8 vCPUs ou dois nós de no mínimo 16 vCPUs (por exemplo, Standard_DS4_v2), especialmente para clusters grandes (várias réplicas de pod de CoreDNS, 3-4+ complementos, etc.).
  • Pools de nós spot exigem pools de nós de usuário.
  • Adicionar outro pool de nós do sistema ou alterar qual pool de nós é um pool de nós do sistema não move automaticamente os pods do sistema. O pods do sistema podem continuar a ser executados no mesmo pool de nós, mesmo que ele seja alterado para um pool de nós de usuário. Se excluir ou reduzir verticalmente um pool de nós que executa pods do sistema e que antes eram um pool de nós do sistema, esses pods do sistema serão reimplantados com o agendamento preferencial para o novo pool de nós do sistema.

É possível executar as seguintes operações com pools de nós:

  • Criar um pool de nós do sistema dedicado (prefira o agendamento de pods do sistema em pools de nós de mode:system)
  • Alterar um pool de nós do sistema para ser um pool de nos de usuário, desde que tenha outro pool de nós do sistema para assumir o lugar no cluster do AKS.
  • Alterar um pool de nós de usuário para ser um pool de nós do sistema.
  • Excluir pools de nós de usuário.
  • É possível excluir os pools de nós do sistema, desde que tenha outro pool de nós do sistema para assumir o lugar no cluster do AKS.
  • Um cluster AKS pode ter vários pools de nós de sistema e requer pelo menos um pool de nós de sistema.
  • Caso deseje alterar várias configurações imutáveis em pools de nós existentes, poderá criar novos pools de nós para substituí-los. Um exemplo é adicionar um novo pool de nós com uma nova maxPods configuração e excluir o pool de nós antigo.
  • Use a afinidade de nó para exigir ou escolher quais nós podem ser agendados por rótulo. É possível definir key como kubernetes.azure.com, operator como In e values de user ou system para o YAML, basta aplicar essa definição com kubectl apply -f yourYAML.yaml.

Criar um novo cluster do AKS com um pool de nós de sistema

Ao criar um novo cluster do AKS, o pool de nós inicial usa como padrão um modo de tipo System. Quando são criados novos pools de nós com az aks nodepool add, eles são pools de nós de usuário, a menos que seja especificado explicitamente o parâmetro de modo.

Crie variáveis para o grupo de recursos, o nome do cluster e o local dos comandos usados neste artigo. Este artigo especifica valores ou você pode usar seus próprios valores.

export RESOURCE_GROUP="myResourceGroup"
export CLUSTER_NAME="myAKSCluster"
export LOCATION="eastus"
export NEW_SYSTEM_NP="systempool"
export NEW_NODE_POOL="mynodepool"

O exemplo a seguir cria um grupo de recursos chamado myResourceGroup na região eastus.

az group create --name $RESOURCE_GROUP --location $LOCATION

Use o comando az aks create para criar um cluster do AKS. O seguinte exemplo cria um cluster chamado myAKSCluster com um pool de sistema dedicado contendo dois nós. Para as cargas de trabalho de produção, verifique se estão em uso pools de nó do sistema com pelo menos três nós. Esta operação leva vários minutos para ser concluída.

az aks create --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --node-count 2 --generate-ssh-keys

Ao criar um novo cluster do AKS, o pool de nós inicial usa como padrão um modo de tipo system. Ao criar pools de nós com New-AzAksNodePool, esses pools de nós são pools de nós de usuário. O modo de um pool de nós pode ser atualizado a qualquer momento.

Crie variáveis para o grupo de recursos, o nome do cluster e o local dos comandos usados neste artigo. Este artigo especifica valores ou você pode usar seus próprios valores.

$ResourceGroup="myResourceGroup"
$ClusterName="myAKSCluster"
$Location="eastus"
$NewSystemNP="systempool"
$NewNodePool="mynodepool"

O exemplo a seguir cria um grupo de recursos chamado myResourceGroup na região eastus.

New-AzResourceGroup -ResourceGroupName $ResourceGroup -Location $Location

Use o cmdlet New-AzAksCluster para criar um cluster do AKS. O seguinte exemplo cria um cluster chamado myAKSCluster com um pool de sistema dedicado contendo dois nós. Para as cargas de trabalho de produção, verifique se estão em uso pools de nó do sistema com pelo menos três nós. A operação leva vários minutos para ser concluída.

New-AzAksCluster -ResourceGroupName $ResourceGroup -Name $ClusterName -NodeCount 2 -GenerateSshKey

Use a seguinte configuração do Terraform para criar um cluster AKS com pool de nós do sistema.

Criar o arquivo de configuração do Terraform

Crie um arquivo chamado main.tfe adicione a seguinte configuração compartilhada:

terraform {
 required_version = ">= 1.0"
 required_providers {
   azurerm = {
     source  = "hashicorp/azurerm"
     version = "~> 4.0"
   }
 }
}
provider "azurerm" {
 features {}
}

Criar um grupo de recursos

Adicione a seguinte configuração de grupo de recursos:

resource "azurerm_resource_group" "rg" {
 name     = "aks-system-pool-rg"
 location = "East US"
}

Um grupo de recursos é usado para organizar e gerenciar Azure recursos.

Criar um cluster do AKS

Adicione a configuração a seguir para criar um cluster do AKS. O grupo de nós inicial é criado como um grupo de nós do sistema e é necessário para o funcionamento do cluster.

resource "azurerm_kubernetes_cluster" "aks" {
 name                = "aks-system-pool-cluster"
 location            = azurerm_resource_group.rg.location
 resource_group_name = azurerm_resource_group.rg.name
 dns_prefix          = "akssystempool"
 default_node_pool {
   name                = "systemnp"
   vm_size             = "Standard_D4s_v5"
   node_count          = 2
   min_count           = 2
   max_count           = 3
   max_pods            = 30
   enable_auto_scaling = true
 }
 identity {
   type = "SystemAssigned"
 }
 network_profile {
   network_plugin    = "azure"
   load_balancer_sku = "standard"
 }
}

Adicionar um pool de nós dedicado ao sistema a um cluster AKS existente

É possível adicionar um ou mais pools de nós do sistema a clusters AKS existentes. A recomendação é agendar os pods do seu aplicativo em pools de nós de usuário e dedicar os pools de nós do sistema apenas para os pods críticos do sistema. Essa separação impede que pods de aplicativos não autorizados excluam acidentalmente pods do sistema. Imponha esse comportamento com o CriticalAddonsOnly=true:NoScheduletaint aos pools de nós do sistema.

O comando a seguir adiciona um pool de nós dedicado do tipo de modo System com três nós. O az aks nodepool add comando adiciona três nós por padrão, mas você usa o --node-count parâmetro para especificar o número de nós desejados.

az aks nodepool add \
  --resource-group $RESOURCE_GROUP \
  --cluster-name $CLUSTER_NAME \
  --name $NEW_SYSTEM_NP \
  --node-count 3 \
  --node-taints CriticalAddonsOnly=true:NoSchedule \
  --mode System

É possível adicionar um ou mais pools de nós do sistema a clusters AKS existentes. A recomendação é agendar os pods do seu aplicativo em pools de nós de usuário e dedicar os pools de nós do sistema apenas para os pods críticos do sistema. Adicionar mais pools de nós do sistema impede que os pods de aplicativos invasores apaguem o pods do sistema acidentalmente. Impor o comportamento com o CriticalAddonsOnly=true:NoScheduletaint para o pool de nós do sistema.

O comando a seguir adiciona um pool de nós dedicado do tipo de modo System com três nós.

$systempoolparams = @{
  ResourceGroupName = $ResourceGroup
  ClusterName = $ClusterName
  Name = $NewSystemNP
  Count = 3
  Mode = 'System'
  NodeTaint = 'CriticalAddonsOnly=true:NoSchedule'
}

New-AzAksNodePool @systempoolparams

Adicione um segundo pool de nodes configurado como um pool de sistema para isolar cargas de trabalho críticas do sistema.

resource "azurerm_kubernetes_cluster_node_pool" "system_pool" {
 name                  = "systempool"
 kubernetes_cluster_id = azurerm_kubernetes_cluster.aks.id
 vm_size               = "Standard_D4s_v5"
 node_count            = 3
 mode                  = "System"
 max_pods              = 30
 node_taints = [
   "CriticalAddonsOnly=true:NoSchedule"
 ]
}

Essa configuração aplica o CriticalAddonsOnly=true:NoSchedule taint para que as cargas de trabalho do aplicativo não sejam agendadas no pool de nós do sistema dedicado.

Adicionar um pool de nós de usuário

Para separar as cargas de trabalho do aplicativo dos componentes do sistema, adicione um pool de nós de usuário.

resource "azurerm_kubernetes_cluster_node_pool" "user_pool" {
 name                  = "userpool"
 kubernetes_cluster_id = azurerm_kubernetes_cluster.aks.id
 vm_size               = "Standard_D4s_v5"
 node_count            = 2
 mode                  = "User"
 max_pods              = 30
 enable_auto_scaling = true
 min_count           = 2
 max_count           = 4
}

Os pools de nós de usuário fornecem um ambiente dedicado para pods de aplicativo.

Verificação final antes da implantação

Seu main.tf deve incluir:

  • Configuração do Terraform e do provedor
  • Grupo de recursos
  • Cluster do AKS com o pool de nós padrão do sistema
  • Pool de nós do sistema dedicado
  • Pool de nós de usuário opcional, se necessário

Uma configuração concluída é semelhante ao exemplo a seguir:

terraform {
 required_version = ">= 1.0"
 required_providers {
   azurerm = {
     source  = "hashicorp/azurerm"
     version = "~> 4.0"
   }
 }
}
provider "azurerm" {
 features {}
}
resource "azurerm_resource_group" "rg" {
 name     = "aks-system-pool-rg"
 location = "East US"
}
resource "azurerm_kubernetes_cluster" "aks" {
 name                = "aks-system-pool-cluster"
 location            = azurerm_resource_group.rg.location
 resource_group_name = azurerm_resource_group.rg.name
 dns_prefix          = "akssystempool"
 default_node_pool {
   name                = "systemnp"
   vm_size             = "Standard_D4s_v5"
   node_count          = 2
   min_count           = 2
   max_count           = 3
   max_pods            = 30
   enable_auto_scaling = true
 }
 identity {
   type = "SystemAssigned"
 }
 network_profile {
   network_plugin    = "azure"
   load_balancer_sku = "standard"
 }
}
resource "azurerm_kubernetes_cluster_node_pool" "system_pool" {
 name                  = "systempool"
 kubernetes_cluster_id = azurerm_kubernetes_cluster.aks.id
 vm_size               = "Standard_D4s_v5"
 node_count            = 3
 mode                  = "System"
 max_pods              = 30
 node_taints = [
   "CriticalAddonsOnly=true:NoSchedule"
 ]
}
resource "azurerm_kubernetes_cluster_node_pool" "user_pool" {
 name                  = "userpool"
 kubernetes_cluster_id = azurerm_kubernetes_cluster.aks.id
 vm_size               = "Standard_D4s_v5"
 node_count            = 2
 mode                  = "User"
 max_pods              = 30
 enable_auto_scaling = true
 min_count           = 2
 max_count           = 4
}

Validar a configuração

Execute os seguintes comandos para formatar, inicializar e validar a configuração:

terraform fmt
terraform init
terraform validate

Examinar o plano de execução

Execute o seguinte comando para examinar o plano de execução antes da implantação:

terraform plan

Aplicar a configuração

Execute o seguinte comando para criar o cluster do AKS e os pools de nós:

terraform apply

Verificar a implantação

Verifique a configuração do pool de nós do sistema dedicado:

az aks nodepool show \
 --resource-group aks-system-pool-rg \
 --cluster-name aks-system-pool-cluster \
 --name systempool

Revise a saída e confirme se o pool de nós está configurado com mode definido como System. Conecte-se ao cluster e liste os nós:

az aks get-credentials \
 --resource-group aks-system-pool-rg \
 --name aks-system-pool-cluster

kubectl get nodes

Mostrar detalhes do pool de nós

É possível verificar os detalhes do pool de nós com o comando a seguir.

az aks nodepool show \
  --resource-group $RESOURCE_GROUP \
  --cluster-name $CLUSTER_NAME \
  --name $NEW_SYSTEM_NP \
  --query "{Count:count, Mode:mode, NodePool:name, NodeTaint:nodeTaints, ResourceGroup:resourceGroup}"

Um modo do tipo Sistema é definido para pools de nós do sistema, e um modo do tipo Usuário é definido para pools de nós do usuário. Para um pool de sistemas, verifique se a propriedade nodeTaints está definida como CriticalAddonsOnly=true:NoSchedule, o que impede que os pods de aplicativos sejam agendados nesse pool de nós.

{
  "Count": 3,
  "Mode": "System",
  "NodePool": "systempool",
  "NodeTaint": [
    "CriticalAddonsOnly=true:NoSchedule"
  ],
  "ResourceGroup": "myResourceGroup"
}

É possível verificar os detalhes do pool de nós com o comando a seguir.

Get-AzAksNodePool -ResourceGroupName $ResourceGroup -ClusterName $ClusterName -Name $NewSystemNP |
  Select-Object -Property Count, Mode, Name, NodeTaints

Um modo do tipo Sistema é definido para pools de nós do sistema, e um modo do tipo Usuário é definido para pools de nós do usuário. Para um pool de sistemas, verifique se o atributo taint está definido como CriticalAddonsOnly=true:NoSchedule, o que impede que pods de aplicativos sejam agendados nesse pool de nós.

Count Mode   Name       NodeTaints
----- ----   ----       ----------
    3 System systempool {CriticalAddonsOnly=true:NoSchedule}

Esta etapa foi incluída na etapa Verificar a implantação da seção anterior.

Um modo do tipo Sistema é definido para pools de nós do sistema, e um modo do tipo Usuário é definido para pools de nós do usuário. Para um pool de sistemas, verifique se a propriedade nodeTaints está definida como CriticalAddonsOnly=true:NoSchedule, o que impede que os pods de aplicativos sejam agendados nesse pool de nós.

Atualizar o sistema de clusters e os pools de nós de usuário existentes

Observação

Para definir um modo de pool de nós do sistema, é necessário usar uma versão da API de 2020-03-01 ou superior. Os clusters criados em versões de API mais antigas que 2020-03-01 contêm apenas pools de nós de usuário como resultado. Para receber a funcionalidade e os benefícios do pool de nós do sistema em clusters mais antigos, atualize o modo de pools de nós existentes com os comandos a seguir na versão mais recente do CLI do Azure.

Você pode alterar os modos tanto para os pools de nós do sistema quanto para os pools de nós do usuário. Você pode alterar um pool de nós do sistema para um pool de nós de usuário somente se outro pool de nós do sistema já existir no cluster do AKS.

Para criar um novo pool de nós do modo de sistema, execute este comando.

az aks nodepool add \
  --resource-group $RESOURCE_GROUP \
  --cluster-name $CLUSTER_NAME \
  --name $NEW_NODE_POOL \
  --node-count 3 \
  --mode System

Você pode verificar o modo com o comando a seguir.

az aks nodepool show \
  --resource-group $RESOURCE_GROUP \
  --cluster-name $CLUSTER_NAME \
  --name $NEW_NODE_POOL \
  --query mode --output tsv
System

Execute este comando para alterar um pool de nós do sistema para um pool de nós de usuário.

az aks nodepool update \
  --resource-group $RESOURCE_GROUP \
  --cluster-name $CLUSTER_NAME \
  --name $NEW_NODE_POOL \
  --mode User

Você pode verificar se o modo foi alterado com o comando a seguir.

az aks nodepool show \
  --resource-group $RESOURCE_GROUP \
  --cluster-name $CLUSTER_NAME \
  --name $NEW_NODE_POOL \
  --query mode --output tsv
User

Observação

Para definir um modo de pool de nós do sistema, é necessário usar uma versão da API de 2020-03-01 ou superior. Os clusters criados em versões de API mais antigas que 2020-03-01 contêm apenas pools de nós de usuário como resultado. Para receber a funcionalidade e os benefícios do pool de nós do sistema em clusters mais antigos, atualize o modo de pools de nós existentes com os seguintes comandos na versão mais recente do Azure PowerShell.

Você pode alterar os modos tanto para os pools de nós do sistema quanto para os pools de nós do usuário. Você pode alterar um pool de nós do sistema para um pool de nós de usuário somente se outro pool de nós do sistema já existir no cluster do AKS.

Para criar um novo pool de nós do modo de sistema, execute este comando.

$newpoolparams = @{
  ResourceGroupName = $ResourceGroup
  ClusterName = $ClusterName
  Name = $NewNodePool
  Count = 3
  Mode = 'System'
}

New-AzAksNodePool @newpoolparams

Você pode verificar o modo com o comando a seguir.

Get-AzAksNodePool -ResourceGroupName $ResourceGroup -ClusterName $ClusterName -Name $NewNodePool |
  Select-Object -Property Mode
Mode
----
System

Execute este comando para alterar um pool de nós do sistema para um pool de nós de usuário.

$updateuserpoolparams = @{
  ResourceGroupName = $ResourceGroup
  ClusterName = $ClusterName
  Name = $NewNodePool
  Mode = 'User'
}

Update-AzAksNodePool @updateuserpoolparams

Você pode verificar o modo com o comando a seguir.

Get-AzAksNodePool -ResourceGroupName $ResourceGroup -ClusterName $ClusterName -Name $NewNodePool |
  Select-Object -Property Mode
Mode
----
User

Para alterar o modo de um pool de nós existente, atualize o valor mode na configuração do Terraform e reaplique a implantação.

Por exemplo, a configuração a seguir altera o user_pool pool de nós para um pool de nós do sistema:

resource "azurerm_kubernetes_cluster_node_pool" "user_pool" {
 name                  = "userpool"
 kubernetes_cluster_id = azurerm_kubernetes_cluster.aks.id
 vm_size               = "Standard_D4s_v5"
 node_count            = 2
 mode                  = "System"
 max_pods              = 30
 enable_auto_scaling = true
 min_count           = 2
 max_count           = 4
}

Depois de atualizar a configuração, execute:

terraform plan
terraform apply

Para alterar o pool de nós dedicados do sistema para um pool de nós de usuário, atualize o valor de mode para system_pool, e reaplique a configuração User.

Excluir um pool de nós do sistema

Observação

Para usar pools de nós do sistema em clusters do AKS antes da versão 2020-03-01da API, adicione um novo pool de nós do sistema e exclua o pool de nós padrão original.

Deve haver pelo menos dois pools de nós do sistema no cluster AKS para poder excluir um deles.

az aks nodepool delete \
  --resource-group $RESOURCE_GROUP \
  --cluster-name $CLUSTER_NAME \
  --name $NEW_NODE_POOL

Depois de excluir o pool de nós do sistema, você deverá ter o pool de nós do sistema original que foi criado com o cluster e o pool de nós do sistema que você criou na seção adicionar um pool de nós do sistema dedicado a um cluster do AKS existente.

az aks nodepool list \
  --resource-group $RESOURCE_GROUP \
  --cluster-name $CLUSTER_NAME \
  --query "[].{Name:name, Mode:mode}" --output table

Observação

Para usar pools de nós do sistema em clusters do AKS antes da versão 2020-03-01da API, adicione um novo pool de nós do sistema e exclua o pool de nós padrão original.

Deve haver pelo menos dois pools de nós do sistema no cluster AKS para poder excluir um deles.

O comando a seguir solicita a confirmação para excluir o pool de nós. Digite Y para confirmar.

Remove-AzAksNodePool $ResourceGroup -ClusterName $ClusterName -Name $NewNodePool

Depois de excluir o pool de nós do sistema, você deverá ter o pool de nós do sistema original que foi criado com o cluster e o pool de nós do sistema que você criou na seção adicionar um pool de nós do sistema dedicado a um cluster do AKS existente.

Get-AzAksNodePool -ResourceGroupName $ResourceGroup -ClusterName $ClusterName

Um cluster deve sempre conter pelo menos um pool de nós do sistema. Se o cluster tiver mais de um pool de nós do sistema, você poderá remover um excluindo seu bloco de recursos da configuração do Terraform e aplicando a alteração.

Por exemplo, remova o system_pool bloco de recursos e execute:

terraform plan
terraform apply

Limpar os recursos

Quando você exclui o grupo de recursos do cluster do AKS, todos os recursos do cluster e o grupo de recursos do nó relacionado (MC_) são excluídos.

Para excluir o cluster, use o comando az group delete para excluir o grupo de recursos AKS:

az group delete --name $RESOURCE_GROUP --yes --no-wait

Para excluir o cluster, use o comando Remove-AzResourceGroup para excluir o grupo de recursos AKS:

Remove-AzResourceGroup -Name $ResourceGroup -Force

Quando terminar, remova os recursos:

terraform destroy

Próximas etapas

Este artigo mostra como criar e gerenciar pools de nós do sistema em um cluster do AKS. Para obter informações sobre como iniciar e parar pools de nós do AKS, consulte iniciar e parar pools de nós no AKS.