Grundläggande felsökning av nodfel som inte är klara
Den här artikeln innehåller felsökningssteg för att återställa AKS-klusternoder (Microsoft Azure Kubernetes Service) efter ett fel. Den här artikeln tar specifikt upp de vanligaste felmeddelandena som genereras när ett nodfel som inte är klart inträffar och förklarar hur nodreparationsfunktioner kan utföras för både Windows- och Linux-noder.
Innan du börjar
Läs den officiella guiden för felsökning av Kubernetes-kluster. Läs även Microsoft-teknikerns guide till Kubernetes-felsökning. Den här guiden innehåller kommandon för felsökning av poddar, noder, kluster och andra funktioner.
Förutsättningar
- Azure CLI, version 2.31 eller senare. Om Azure CLI redan är installerat kan du hitta versionsnumret genom att köra
az --version
.
Grundläggande felsökning
AKS övervakar kontinuerligt hälsotillståndet för arbetsnoder och reparerar automatiskt noderna om de blir felfria. Azure Virtual Machine-plattformen (VM) underhåller virtuella datorer som upplever problem. AKS och virtuella Azure-datorer arbetar tillsammans för att reducera tjänstavbrott för kluster.
Det finns två typer av pulsslag för noder:
Uppdateringar av .status för ett
Node
objekt.Lån-objekt i namnrymden kube-node-lease. Var och
Node
en har ett associeratLease
objekt.
Jämfört med uppdateringar av .status för en Node
är en Lease
enkel resurs. Om du använder Lease
objekt för pulsslag minskar prestandapåverkan för dessa uppdateringar för stora kluster.
Kubelet ansvarar för att skapa och uppdatera .status för Node
objekt. Den ansvarar också för att uppdatera de Lease
objekt som är relaterade till objekten Node
.
- Kubelet uppdaterar noden
.status
när statusen ändras eller om det inte har gjorts någon uppdatering för ett konfigurerat intervall. Standardintervallet för.status
uppdateringar av noder är fem minuter, vilket är mycket längre än 40-sekunders standardtidsgränsen för oåtkomliga noder. - Kubelet skapar och uppdaterar sedan objektet
Lease
var 10:e sekund (standarduppdateringsintervallet).Lease
uppdateringar sker oberoende av uppdateringar till noden.status
.Lease
Om uppdateringen misslyckas försöker kubelet igen med hjälp av en exponentiell backoff som börjar på 200 millisekunder och är begränsad till sju sekunder.
Du kan inte schemalägga en podd på en nod som har statusen NotReady
eller Unknown
. Du kan endast schemalägga en podd på noder som är i tillståndet Ready
.
Om noden är i MemoryPressure
tillståndet , DiskPressure
eller PIDPressure
måste du hantera dina resurser för att kunna schemalägga extra poddar på noden. Om noden är i NetworkUnavailable
läge måste du konfigurera nätverket på noden korrekt.
AKS hanterar livscykeln och driften av agentnoder åt dig. Det går inte att ändra de IaaS-resurser som är associerade med agentnoderna. Det går till exempel inte att anpassa en nod via SSH-anslutningar, uppdatera paket eller ändra nätverkskonfigurationen på en nod. Mer information finns i AKS-stödtäckning för agentnoder.
Kontrollera att följande villkor är uppfyllda:
Klustret är i tillståndet Lyckades (körs). Om du vill kontrollera klusterstatusen på Azure Portal söker du efter och väljer Kubernetes-tjänster och väljer namnet på ditt AKS-kluster. Leta sedan i Essentials på klustrets översiktssida för att hitta statusen. Eller ange kommandot az aks show i Azure CLI.
Nodpoolen har etableringstillståndet Lyckades och energitillståndet Körs. Om du vill kontrollera nodpoolens status på Azure Portal går du tillbaka till AKS-klustrets sida och väljer sedan Nodpooler. Du kan också ange kommandot az aks nodepool show i Azure CLI.
De utgående portar som krävs är öppna i dina nätverkssäkerhetsgrupper (NSG:er) och brandväggen så att API-serverns IP-adress kan nås. Mer information finns i Obligatoriska regler för utgående nätverk och FQDN för AKS-kluster.
Noderna är i tillståndet i
Running
stället förStopped
ellerDeallocated
.Klustret kör en AKS-version av Kubernetes som stöds.
Mer information
Information om hur du felsöker status för Not Ready
en nod finns i Felsöka en ändring i en felfri nod till Status inte klar.
Ansvarsfriskrivning för tredje part
Microsoft tillhandahåller kontaktinformation från tredje part som hjälper dig att hitta ytterligare information om det här ämnet. Denna kontaktinformation kan ändras utan föregående meddelande. Microsoft garanterar inte att kontaktinformation från tredje part är korrekt.