Dela via


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 associerat Lease 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 MemoryPressuretillståndet , DiskPressureeller 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.

    Azure Portal skärmbild av ett Azure Kubernetes Service-kluster (A K S) översiktssida. I avsnittet Essentials är statusen

  • 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.

    Azure Portal skärmbild av en Azure Kubernetes Service-klusternodpool (A K S). Etableringstillståndet har slutförts. Energitillståndet körs.

  • 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 har distribuerat de senaste nodbilderna.

  • Noderna är i tillståndet i Running stället för Stopped eller Deallocated.

  • 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.