Condividi tramite


Risolvere gli errori di Node Not Ready se sono presenti certificati scaduti

Questo articolo illustra come risolvere i problemi relativi agli scenari Node Not Ready all'interno di un cluster del servizio Azure Kubernetes (Microsoft servizio Azure Kubernetes) se sono presenti certificati scaduti.

Prerequisiti

Sintomi

Si scopre che un nodo del cluster del servizio Azure Kubernetes si trova nello stato Node Not Ready (Nodo non pronto).

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"
    

È possibile che vengano visualizzati determinati codici di errore dopo aver richiamato questi comandi. 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 il comando apt-get update è bloccato dall'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 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 .

Note

A partire dal 15 luglio 2021, versione del servizio Azure Kubernetes, un aggiornamento del cluster del servizio Azure Kubernetes consente automaticamente 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 per il piano di controllo e il pool di nodi) consente di rinnovare i certificati scaduti.

Ulteriori informazioni