Compartilhar via


Solucionar problemas de falhas não prontas para nó se houver certificados expirados

Este artigo ajuda você a solucionar problemas de cenários de nó não pronto em um cluster do AKS (Serviço de Kubernetes do Microsoft Azure) se houver certificados expirados.

Pré-requisitos

Sintomas

Você descobre que um nó de cluster do AKS está no estado Nó Não Pronto.

Causa

Há um ou mais certificados expirados.

Prevenção: execute o OpenSSL para assinar os certificados

Verifique as datas de expiração dos certificados chamando o comando openssl-x509 , da seguinte forma:

  • Para nós do conjunto de dimensionamento da VM (máquina virtual), use o comando az vmss run-command invoke :

    az vmss run-command invoke \
        --resource-group <resource-group-name> \
        --name <vm-scale-set-name> \
        --command-id RunShellScript \
        --instance-id 0 \
        --output tsv \
        --query "value[0].message" \
        --scripts "openssl x509 -in /etc/kubernetes/certs/apiserver.crt -noout -enddate"
    
  • Para nós do conjunto de disponibilidade da VM, use o comando az vm run-command invoke :

    az vm run-command invoke \
        --resource-group <resource-group-name> \
        --name <vm-availability-set-name> \
        --command-id RunShellScript \
        --output tsv \
        --query "value[0].message" \
        --scripts "openssl x509 -in /etc/kubernetes/certs/apiserver.crt -noout -enddate"
    

Você pode receber determinados códigos de erro depois de invocar esses comandos. Para obter informações sobre os códigos de erro 50, 51 e 52, consulte os seguintes links, conforme necessário:

Se você receber o código de erro 99, isso indica que o comando apt-get update está sendo impedido de acessar um ou mais dos seguintes domínios:

  • security.ubuntu.com
  • azure.archive.ubuntu.com
  • nvidia.github.io

Para permitir o acesso a esses domínios, atualize a configuração de quaisquer firewalls de bloqueio, NSGs (grupos de segurança de rede) ou NVAs (soluções de virtualização de rede).

Solução: Alternar os certificados

Você pode aplicar a rotação automática de certificados para girar certificados nos nós antes que eles expirem. Essa opção não requer tempo de inatividade para o cluster do AKS.

Se você puder acomodar o tempo de inatividade do cluster, poderá girar manualmente os certificados .

Observação

A partir da versão de 15 de julho de 2021 do AKS, uma atualização de cluster do AKS ajuda automaticamente a girar os certificados de cluster. No entanto, essa alteração comportamental não entra em vigor para um certificado de cluster expirado. Se uma atualização executar apenas as seguintes ações, os certificados expirados não serão renovados:

  • Atualize uma imagem de nó.
  • Atualize um pool de nós para a mesma versão.
  • Atualize um pool de nós para uma versão mais recente.

Somente uma atualização completa (ou seja, uma atualização para o plano de controle e o pool de nós) ajuda a renovar os certificados expirados.

Mais informações