Compartilhar via


Redimensionar clusters do Azure Kubernetes Service (AKS)

Nesse artigo, você aprenderá como redimensionar um cluster do Azure Kubernetes Service (AKS). É importante dimensionar corretamente seus clusters para otimizar custos e desempenho. Você pode redimensionar manualmente um cluster adicionando ou removendo nós para atender às necessidades dos seus aplicativos. Você também pode dimensionar automaticamente seu cluster para ajustar automaticamente o número de nós em resposta às mudanças nas demandas.

Dimensionamento correto do cluster

Ao criar um cluster AKS, você especifica o número de nós e o tamanho dos nós, o que determina a capacidade de computação do cluster. Clusters superdimensionados podem levar a custos desnecessários, enquanto clusters subdimensionados podem levar a problemas de desempenho. Você pode ajustar o número e o tamanho dos nós no cluster para dimensioná-lo corretamente e atender às necessidades dos seus aplicativos.

Considere os seguintes fatores ao dimensionar corretamente seu cluster:

  • Requisitos de recursos: entenda os requisitos de recursos dos seus aplicativos para determinar o número de nós e o tamanho dos nós necessários para executar suas cargas de trabalho.
  • Requisitos de desempenho: determine os requisitos de desempenho dos seus aplicativos para garantir que o cluster possa atender às demandas de suas cargas de trabalho.
  • Considerações de custo: otimize os custos dimensionando corretamente seu cluster para evitar custos desnecessários associados a clusters superdimensionados.
  • Demandas de aplicativos: monitore as demandas de seus aplicativos para ajustar o tamanho do cluster em resposta às mudanças nas demandas.
  • Restrições de infraestrutura: considere as restrições de infraestrutura do seu ambiente, como capacidade ou limitação de instância reservada para SKUs específicos, para garantir que o cluster possa ser dimensionado corretamente dentro dos limites do seu ambiente.

Monitore o desempenho e o custo do cluster

Monitore de perto o desempenho e o custo dos seus clusters para garantir que eles tenham o tamanho certo para atender às necessidades do seu aplicativo e faça ajustes conforme necessário. Você pode usar os seguintes recursos para monitoramento:

Quando redimensionar um cluster

Talvez você queira redimensionar um cluster em cenários como os seguintes:

  • Se você perceber que o uso da CPU e da memória está consistentemente baixo, considere reduzir o tamanho do cluster. Se o uso for consistentemente alto, certifique-se de ter o escalonamento automático habilitado e aumente a contagem máxima de nós, se necessário.
  • O complemento de análise de custos para AKS mostra detalhes sobre o uso e o custo dos nós, o que indica que você pode se beneficiar do redimensionamento do cluster. Por exemplo, se você perceber que seus nós têm um alto custo ocioso com um baixo custo de uso, você pode considerar redimensionar seu cluster para reduzir custos.
  • O Metrics Server VPA mostra se suas solicitações e/ou limites estão muito altos ou baixos com base no uso histórico. Você pode usar essas informações para ajustar o tamanho do cluster para melhor corresponder à sua carga de trabalho.
  • Você enfrenta problemas de desempenho, como escassez de recursos. Isso pode ser resultado do cluster ser subdimensionado para as demandas dos seus aplicativos.

O que acontece quando redimensiono um cluster?

Aumentando o tamanho do cluster

Você pode aumentar o tamanho de um cluster AKS adicionando nós ao cluster. Você pode adicionar nós ao cluster manualmente ou configurar o dimensionamento automático para ajustar automaticamente o número de nós em resposta às mudanças nas demandas.

Quando você aumenta o tamanho de um cluster, as seguintes alterações ocorrem:

  • Novas instâncias de nós são criadas usando a mesma configuração dos nós existentes no cluster.
  • Novos pods podem ser agendados nos novos nós para distribuir a carga de trabalho pelo cluster.
  • Os pods existentes não são movidos para os novos nós, a menos que sejam reprogramados devido a falhas de nós ou outros motivos.

Diminuindo o tamanho do cluster

Você pode diminuir o tamanho de um cluster AKS removendo nós do cluster. Quando você remove nós do cluster, os nós são automaticamente esvaziados e removidos do cluster. Você pode remover nós do cluster manualmente ou configurar o dimensionamento automático para ajustar automaticamente o número de nós em resposta às mudanças nas demandas.

Quando você diminui o tamanho de um cluster, as seguintes alterações ocorrem:

  • O AKS encerra os nós com elegância e esvazia os pods em execução nos nós antes de removê-los do cluster.
  • Todos os pods gerenciados por um controlador de replicação são reprogramados em outras instâncias de nó no cluster.
  • Quaisquer pods que não sejam gerenciados por um controlador de replicação não serão reiniciados.

Redimensionar manualmente um cluster AKS

  • Redimensione um cluster AKS usando o comando az aks scale com os parâmetros --node-count e --nodepool-name.

Antes de executar o comando de redimensionamento, defina as variáveis de ambiente necessárias com seus próprios valores. Os valores de exemplo devem ser substituídos pelo seu grupo de recursos real, o cluster, o número desejado de nós e o nome do pool de nós.

az aks scale --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --node-count $NUM_NODES --nodepool-name $NODE_POOL_NAME

Resultados:

{
  "agentPoolProfiles": [
    {
      "count": 4,
      "maxCount": null,
      "minCount": null,
      "name": "nodepool1",
      ...
    }
  ],
  "dnsPrefix": "xxxxx",
  "fqdn": "xxxxx.xxxxx.xxxxxx.cloudapp.azure.com",
  ...
}

Repita esse comando para cada pool de nós no cluster que você deseja redimensionar. Se o seu cluster tiver apenas um pool de nós, você poderá omitir o parâmetro --nodepool-name.

Redimensionar automaticamente um cluster AKS

Use o cluster autoscaler para redimensionar automaticamente seus pools de nós em resposta às mudanças nas demandas.

Para obter mais informações, veja a visão geral do dimensionamento automático de cluster no Azure Kubernetes Service (AKS). Para configurar o dimensionamento automático do cluster no AKS, veja Usar o dimensionador automático do cluster no Azure Kubernetes Service (AKS).

Próximas etapas

Nesse artigo, você aprendeu como dimensionar corretamente um cluster AKS. Para saber mais sobre como gerenciar clusters do AKS, consulte os seguintes artigos: