Solucionar problemas do código de erro "SubnetIsFull" durante uma atualização de cluster do AKS

Este artigo discute como identificar e resolve o erro "SubnetIsFull" que ocorre quando você tenta atualizar um cluster do AKS (Serviço de Kubernetes do Azure).

Aqui está um exemplo da mensagem de erro:

Falha ao dimensionar o nome do> pool <de nós AGENT POOL' no serviço do Kubernetes '<NAME>'. Erro: falha na tentativa de repetição VMSSAgentPoolReconciler: Code='SubnetIsFull' Message='<SUBNET NAME>\ com prefixo <de endereço PREFIX>\ não tem capacidade suficiente para endereços IP.' Details=[]

Pré-requisitos

Este artigo requer a CLI do Azure versão 2.0.65 ou uma versão posterior. Para localizar o número da versão, execute az --version. Se você precisar instalar ou atualizar a CLI do Azure, consulte Como instalar a CLI do Azure.

Para obter informações mais detalhadas sobre o processo de atualização, consulte a seção "Atualizar um cluster AKS" no cluster do AKS (Atualizar um Serviço de Kubernetes do Azure).

Sintomas

Uma atualização de cluster do AKS falha e você recebe uma mensagem de erro "SubnetIsFull".

Motivo

Esse erro ocorrerá se o cluster não tiver endereços IP suficientes para criar um novo nó.

Quando você planeja fazer uma operação de atualização ou dimensionamento, considere o número de endereços IP necessários. Se o intervalo de endereços IP configurado no cluster for compatível apenas com um número fixo de nós, a operação de atualização ou dimensionamento falhará. Para obter mais informações, consulte a seção "Planejar endereçamento IP para o cluster" de Configurar a rede CNI do Azure em Serviço de Kubernetes do Azure (AKS).

Solução

Reduza os nós de cluster para reservar endereços IP para a atualização.

Se o dimensionamento não for uma opção e a CIDR de rede virtual tiver endereços IP suficientes, tente adicionar um pool de nós que tenha uma sub-rede exclusiva:

  1. Adicione um novo pool de nós de usuário na rede virtual em uma sub-rede maior.
  2. Alterne o pool de nós original para um tipo de pool de nós do sistema.
  3. Dimensione o pool de nós de usuário.
  4. Reduza o pool de nós original.

Entre em contato conosco para obter ajuda

Se você tiver dúvidas ou precisar de ajuda, crie uma solicitação de suporte ou peça ajuda à comunidade de suporte do Azure. Você também pode enviar comentários sobre o produto para a comunidade de comentários do Azure.