Dela via


Felsöka nodfel som inte är klara om det finns utgångna certifikat

Den här artikeln hjälper dig att felsöka scenarier som inte är redo för noder i ett AKS-kluster (Microsoft Azure Kubernetes Service) om det finns utgångna certifikat.

Förutsättningar

Symptom

Du upptäcker att en AKS-klusternod är i tillståndet Nod inte redo.

Orsak

Det finns ett eller flera utgångna certifikat.

Skydd: Kör OpenSSL för att signera certifikaten

Kontrollera förfallodatumen för certifikat genom att anropa kommandot openssl-x509 på följande sätt:

  • För vm-skalningsuppsättningsnoder använder du kommandot 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"
    
  • För noder för VM-tillgänglighetsuppsättningar använder du kommandot 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"
    

Du kan få vissa felkoder när du har anropat dessa kommandon. Information om felkoderna 50, 51 och 52 finns i följande länkar efter behov:

Om du får felkoden 99 anger detta att kommandot apt-get update blockeras från att komma åt en eller flera av följande domäner:

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

Om du vill tillåta åtkomst till dessa domäner uppdaterar du konfigurationen av eventuella blockerande brandväggar, nätverkssäkerhetsgrupper (NSG:er) eller virtuella nätverksinstallationer (NVA).

Lösning: Rotera certifikaten

Du kan använda automatisk rotation av certifikat för att rotera certifikat i noderna innan de upphör att gälla. Det här alternativet kräver ingen stilleståndstid för AKS-klustret.

Om du kan hantera klusteravbrott kan du rotera certifikaten manuellt i stället.

Kommentar

Från och med den 15 juli 2021, versionen av AKS, hjälper en AKS-klusteruppgradering automatiskt till att rotera klustercertifikaten. Den här beteendeförändringen börjar dock inte gälla för ett klustercertifikat som har upphört att gälla. Om en uppgradering endast vidtar följande åtgärder förnyas inte de utgångna certifikaten:

  • Uppgradera en nodbild.
  • Uppgradera en nodpool till samma version.
  • Uppgradera en nodpool till en nyare version.

Endast en fullständig uppgradering (dvs. en uppgradering för både kontrollplanet och nodpoolen) hjälper till att förnya de utgångna certifikaten.

Mer information