Grundlegende Problembehandlung bei Fehlern bei Knoten nicht bereit

Dieser Artikel enthält Schritte zur Problembehandlung zum Wiederherstellen von Microsoft Azure Kubernetes Service (AKS)-Clusterknoten nach einem Fehler. In diesem Artikel werden insbesondere die am häufigsten auftretenden Fehlermeldungen behandelt, die generiert werden, wenn ein Fehler beim Fehler "Node Not Ready" auftritt, und erläutert, wie die Reparaturfunktionen von Knoten sowohl für Windows- als auch für Linux-Knoten ausgeführt werden können.

Voraussetzungen

Lesen Sie den offiziellen Leitfaden zur Problembehandlung bei Kubernetes-Clustern. Lesen Sie außerdem den Leitfaden des Microsoft-Technikers zur Problembehandlung bei Kubernetes. Dieses Handbuch enthält Befehle für die Problembehandlung von Pods, Knoten, Clustern und anderen Features.

Voraussetzungen

  • Azure CLI, Version 2.31 oder eine höhere Version. Wenn Azure CLI bereits installiert ist, finden Sie die Versionsnummer, indem Sie ausführen az --version.

Grundlegendes zur Problembehandlung

AKS überwacht kontinuierlich den Integritätszustand von Arbeitsknoten und repariert die Knoten automatisch, wenn sie fehlerhaft werden. Die Azure Virtual Machine (VM)-Plattform verwaltet virtuelle Computer , die Probleme haben. AKS und virtuelle Azure-Computer arbeiten zusammen, um Dienstunterbrechungen für Cluster zu verringern.

Für Knoten gibt es zwei Arten von Heartbeats:

  • Aktualisiert den STATUS eines Node Objekts.

  • Lease-Objekte innerhalb des Namespace kube-node-lease. Jedes Node verfügt über ein zugeordnetes Lease Objekt.

Im Vergleich zu Aktualisierungen des STATUS eines , Nodea ist eine Lease einfache Ressource. Die Verwendung von Lease Objekten für Takte reduziert die Leistungseinbußen dieser Updates für große Cluster.

Das Kubelet ist für das Erstellen und Aktualisieren des STATUS für Node Objekte verantwortlich. Es ist auch für die Aktualisierung der Lease Objekte verantwortlich, die mit den Node Objekten zusammenhängen.

  • Das Kubelet aktualisiert den Knoten .status , wenn eine Änderung des Status vorliegt oder wenn kein Update für ein konfiguriertes Intervall vorhanden ist. Das Standardintervall für Aktualisierungen von .status Knoten beträgt fünf Minuten, was viel länger als das standardmäßige Timeout von 40 Sekunden für nicht erreichbare Knoten ist.
  • Das Kubelet erstellt und aktualisiert Lease das Objekt dann alle 10 Sekunden (das Standardaktualisierungsintervall). Lease Updates treten unabhängig von Updates auf den Knoten .statusauf. Wenn das Lease Update fehlschlägt, werden die Kubelet-Wiederholungen mithilfe eines exponentiellen Backoffs ausgeführt, der mit 200 Millisekunden beginnt und mit sieben Sekunden begrenzt wird.

Sie können keinen Pod auf einem Knoten planen, der einen Status oder einen Status aufweist NotReady Unknown. Sie können einen Pod nur auf Knoten planen, die sich im Ready Zustand befinden.

Wenn sich Ihr Knoten im MemoryPressureZustand befindet, DiskPressurePIDPressure müssen Sie Ihre Ressourcen verwalten, um zusätzliche Pods auf dem Knoten zu planen. Wenn sich Ihr Knoten im NetworkUnavailable Modus befindet, müssen Sie das Netzwerk auf dem Knoten ordnungsgemäß konfigurieren.

AKS verwaltet den Lebenszyklus und die Vorgänge von Agentknoten für Sie. Änderungen an IaaS-Ressourcen, die den Agentknoten zugeordnet sind, werden nicht unterstützt. Beispielsweise wird das Anpassen eines Knotens über SSH-Verbindungen, das Aktualisieren von Paketen oder das Ändern der Netzwerkkonfiguration auf einem Knoten nicht unterstützt. Weitere Informationen finden Sie unter AKS-Unterstützungsabdeckung für Agentknoten.

Stellen Sie sicher, dass die folgenden Bedingungen erfüllt sind:

  • Ihr Cluster befindet sich im Status "Erfolgreich(Ausgeführt) ". Um den Clusterstatus für die Azure-Portal zu überprüfen, suchen Und wählen Sie Kubernetes-Dienste aus, und wählen Sie den Namen Ihres AKS-Clusters aus. Suchen Sie dann auf der Übersichtsseite des Clusters in Essentials nach dem Status. Oder geben Sie den Befehl "Azks anzeigen" in Azure CLI ein.

    Azure-Portal Screenshot einer Azure Kubernetes Service (A K S)-Clusterübersichtsseite. Im Abschnitt

  • Ihr Knotenpool verfügt über den Bereitstellungsstatus " Erfolgreich" und den Power-Zustand " Ausführen". Um den Knotenpoolstatus auf der Azure-Portal zu überprüfen, kehren Sie zur Seite des AKS-Clusters zurück, und wählen Sie dann Knotenpools aus. Alternativ können Sie den Befehl "az aks nodepool show" in Azure CLI eingeben.

    Azure-Portal Screenshot eines Azure Kubernetes-Diensts (A K S)-Clusterknotenpools. Der Bereitstellungsstatus ist erfolgreich. Der Power-Zustand wird ausgeführt.

  • Die erforderlichen Ausgangsports sind in Ihren Netzwerksicherheitsgruppen (NSGs) und der Firewall geöffnet, sodass die IP-Adresse des API-Servers erreicht werden kann. Weitere Informationen finden Sie unter Erforderlicher ausgehender Netzwerkregeln und FQDNs für AKS-Cluster.

  • Ihre Knoten haben die neuesten Knotenimages bereitgestellt.

  • Ihre Knoten befinden sich im Running Zustand anstelle von Stopped oder Deallocated.

  • Ihr Cluster führt eine AKS-unterstützte Version von Kubernetes aus.

Weitere Informationen

Informationen zur Problembehandlung des Not Ready Status eines Knotens finden Sie unter "Problembehandlung bei einer Änderung in einem fehlerfreien Knoten" in den Status "Nicht bereit".

Haftungsausschluss für Kontaktinformationen von Drittanbietern

Die Kontaktinformationen zu den in diesem Artikel erwähnten Drittanbietern sollen Ihnen helfen, zusätzliche Informationen zu diesem Thema zu finden. Diese Kontaktinformationen können ohne vorherige Ankündigung geändert werden. Sie werden von Microsoft ohne jede Gewähr weitergegeben.