Condividi tramite


Risolvere gli errori node not ready se sono presenti certificati scaduti

Questo articolo consente di risolvere gli scenari Node Not Ready all'interno di un cluster microsoft servizio Azure Kubernetes (servizio Azure Kubernetes) se sono presenti certificati scaduti.

Prerequisiti

Sintomi

Si scopre che un nodo del cluster del servizio Azure Kubernetes è nello stato Node Not Ready.You discover that an AKS cluster node is in the Node Not Ready state.

Causa

Sono presenti uno o più certificati scaduti.

Prevenzione: eseguire OpenSSL per firmare i certificati

Controllare le date di scadenza dei certificati richiamando il comando openssl-x509 , come indicato di seguito:

  • Per i nodi del set di scalabilità di macchine virtuali, usare il 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"
    
  • Per i nodi del set di disponibilità della macchina virtuale, usare il 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"
    

Dopo aver richiamato questi comandi, è possibile che vengano visualizzati determinati codici di errore. Per informazioni sui codici di errore 50, 51 e 52, vedere i collegamenti seguenti, se necessario:

Se viene visualizzato il codice di errore 99, questo indica che al comando apt-get update viene impedito l'accesso a uno o più dei domini seguenti:

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

Per consentire l'accesso a questi domini, aggiornare la configurazione di eventuali firewall di blocco, gruppi di sicurezza di rete o appliance virtuali di rete.

Soluzione: Ruotare i certificati

È possibile applicare la rotazione automatica dei certificati per ruotare i certificati nei nodi prima della scadenza. Questa opzione non richiede tempi di inattività per il cluster del servizio Azure Kubernetes.

Se è possibile gestire i tempi di inattività del cluster, è possibile ruotare manualmente i certificati .

Nota

A partire dal 15 luglio 2021, versione del servizio Azure Kubernetes, un aggiornamento automatico del cluster del servizio Azure Kubernetes consente di ruotare i certificati del cluster. Tuttavia, questa modifica comportamentale non ha effetto per un certificato cluster scaduto. Se un aggiornamento esegue solo le azioni seguenti, i certificati scaduti non verranno rinnovati:

  • Aggiornare un'immagine del nodo.
  • Aggiornare un pool di nodi alla stessa versione.
  • Aggiornare un pool di nodi a una versione più recente.

Solo un aggiornamento completo, ovvero un aggiornamento sia per il piano di controllo che per il pool di nodi, consente di rinnovare i certificati scaduti.

Ulteriori informazioni