Partilhar via


Não é possível excluir totalmente o cluster AKS Arc com recursos PodDisruptionBudget (PDB)

> Aplica-se a: AKS on Azure Local, AKS Edge Essentials

Quando você exclui um cluster AKS Arc que tem recursos PodDisruptionBudget (PDB), a exclusão pode falhar ao remover os recursos PDB. Por padrão, o PDB é instalado no cluster AKS Arc com identidade de carga de trabalho habilitada.

Atenuação

Esse problema foi corrigido no AKS no Azure Local, versão 2503.

  • Para excluir um cluster AKS com um PodDisruptionBudget: Se você estiver em uma compilação mais antiga, atualize para o Azure Local, versão 2503. Depois de atualizar para 2503, você pode tentar excluir novamente o cluster AKS. Registre um caso de suporte se você estiver na versão 2503 e seu cluster AKS não for excluído após pelo menos uma nova tentativa.
  • Para excluir um nodepool com um PodDisruptionBudget: Por design, o nodepool não é excluído se existir um PodDisruptionBudget para proteger aplicativos. Utilize a seguinte solução alternativa para eliminar os recursos do PDB e volte a eliminar o pool de nós.

Solução alternativa para o AKS Edge Essentials e versões mais antigas do AKS no Azure Local

Antes de eliminar o cluster AKS Arc, aceda ao kubeconfig do cluster AKS Arc e elimine todos os PDBs.

  1. Aceda ao cluster AKS Arc de acordo com o seu estado de conectividade:

    • Quando o cluster AKS Arc estiver em um estado Conectado , execute o az connectedk8s proxy comando

      az connectedk8s proxy -n $aks_cluster_name -g $resource_group_name 
      
    • Quando o cluster AKS Arc estiver em um estado desconectado , execute o az aksarc get-credentials comando com permissão para executar a ação Microsoft.HybridContainerService/provisionedClusterInstances/listAdminKubeconfig/action , que está incluída na permissão da função Administrador do Cluster do Azure Kubernetes Service . Para obter mais informações, consulte Recuperar kubeconfig admin baseado em certificado no AKS Arc.

      az aksarc get-credentials -n $aks_cluster_name -g $resource_group_name --admin
      
  2. Verificar o PDB:

    kubectl get pdb -A 
    
  3. Eliminar todos os PDBs. O comando a seguir é um exemplo de eliminação de um PDB gerado a partir da ativação da identidade de workload:

    kubectl delete pdb azure-wi-webhook-controller-manager -n arc-workload-identity 
    
  1. Exclua o cluster AKS Arc:

    az aksarc delete -n $aks_cluster_name -g $resource_group_name
    

Próximos passos

Problemas conhecidos no AKS ativado pelo Azure Arc