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 zugeordnetesLease
Objekt.
Im Vergleich zu Aktualisierungen des STATUS eines , Node
a 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.status
auf. Wenn dasLease
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 MemoryPressure
Zustand befindet, DiskPressure
PIDPressure
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.
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.
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 vonStopped
oderDeallocated
.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.