Problembehandlung bei Node Not Ready-Fehlern, wenn abgelaufene Zertifikate vorhanden sind

Dieser Artikel hilft Ihnen bei der Problembehandlung von Node Not Ready-Szenarien innerhalb eines Microsoft Azure Kubernetes Service (AKS)-Clusters, wenn abgelaufene Zertifikate vorhanden sind.

Voraussetzungen

Problembeschreibung

Sie entdecken, dass sich ein AKS-Clusterknoten im Status "Knoten nicht bereit" befindet.

Ursache

Es gibt ein oder mehrere abgelaufene Zertifikate.

Verhinderung: Ausführen von OpenSSL zum Signieren der Zertifikate

Überprüfen Sie die Ablaufdaten von Zertifikaten, indem Sie den Befehl "openssl-x509 " wie folgt aufrufen:

  • Verwenden Sie für Vm-Skalierungsgruppenknoten den Befehl "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"
    
  • Verwenden Sie für VM-Verfügbarkeitssatzknoten den Befehl "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"
    

Möglicherweise erhalten Sie bestimmte Fehlercodes, nachdem Sie diese Befehle aufgerufen haben. Informationen zu den Fehlercodes 50, 51 und 52 finden Sie ggf. unter den folgenden Links:

Wenn Sie fehlercode 99 erhalten, bedeutet dies, dass der apt-get Update-Befehl für den Zugriff auf eine oder mehrere der folgenden Domänen blockiert wird:

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

Um den Zugriff auf diese Domänen zu ermöglichen, aktualisieren Sie die Konfiguration aller blockierenden Firewalls, Netzwerksicherheitsgruppen (Network Security Groups, NSGs) oder virtuellen Netzwerkgeräte (Network Virtual Appliances, NVAs).

Lösung: Drehen der Zertifikate

Sie können die automatische Zertifikatdrehung anwenden, um Zertifikate in den Knoten zu drehen, bevor sie ablaufen. Diese Option erfordert keine Ausfallzeiten für den AKS-Cluster.

Wenn Sie Clusterausfallzeiten berücksichtigen können, können Sie die Zertifikate stattdessen manuell drehen .

Hinweis

Ab der Veröffentlichung von AKS vom 15. Juli 2021 hilft ein AKS-Clusterupgrade automatisch, die Clusterzertifikate zu drehen. Diese Verhaltensänderung wird jedoch für ein abgelaufenes Clusterzertifikat nicht wirksam. Wenn bei einem Upgrade nur die folgenden Aktionen ausgeführt werden, werden die abgelaufenen Zertifikate nicht verlängert:

  • Aktualisieren eines Knotenimages.
  • Führen Sie ein Upgrade eines Knotenpools auf die gleiche Version durch.
  • Upgrade eines Knotenpools auf eine neuere Version.

Nur ein vollständiges Upgrade (d. h. ein Upgrade sowohl für die Steuerungsebene als auch für den Knotenpool) hilft bei der Verlängerung der abgelaufenen Zertifikate.

Weitere Informationen