Dela via


Automatisk reparation av Azure Kubernetes Service-noden (AKS)

Azure Kubernetes Service (AKS) övervakar kontinuerligt hälsotillståndet för arbetsnoder och reparerar automatiskt noderna om de inte är felfria. Plattformen för virtuella Azure-datorer utför underhåll på virtuella datorer som har problem. AKS och virtuella Azure-datorer arbetar tillsammans för att minimera tjänstavbrott för kluster.

I den här artikeln får du lära dig hur funktionen för automatisk nodreparation fungerar för Windows- och Linux-noder.

Så här söker AKS efter NotReady-noder

AKS använder följande regler för att avgöra om en nod är skadad och behöver repareras:

  • Noden rapporterar NotReady-status för efterföljande kontroller inom en tidsram på 10 minuter.
  • Noden rapporterar ingen status inom 10 minuter.

Du kan kontrollera hälsotillståndet för dina noder manuellt med kubectl get nodes kommandot .

Så här fungerar automatisk reparation

Kommentar

AKS initierar reparationsåtgärder med användarkontot aks-remediator.

Om AKS identifierar en nod som inte är felfri i minst fem minuter utför AKS följande åtgärder:

  1. AKS startar om noden.
  2. Om noden inte är felfri efter omstarten återskapar AKS noden igen.
  3. Om noden inte är felfri efter omimering och det är en Linux-nod distribuerar AKS om noden.

AKS försöker starta om, återskapa och omdistribuera sekvensen upp till tre gånger om noden inte är felfri. Den totala automatiska reparationsprocessen kan ta upp till en timme att slutföra.

Begränsningar

Automatisk reparation av AKS-noder är en tjänst som passar bäst och vi garanterar inte att noden återställs till felfri status. Om noden kvarstår i ett feltillstånd rekommenderar vi starkt att du utför manuell undersökning av noden. Läs mer om att felsöka noden NotReady-status.

Det finns fall där AKS inte utför automatisk reparation. Det går inte att reparera noden automatiskt, antingen avsiktligt eller om Azure inte kan identifiera att det finns ett problem. Exempel på när automatisk reparation inte utförs är:

  • Nodstatus rapporteras inte på grund av fel i nätverkskonfigurationen.
  • Det gick inte att registrera en nod som en felfri nod.
  • Om någon av följande taints finns på noden: node.cloudprovider.kubernetes.io/shutdown, ToBeDeletedByClusterAutoscaler.

Övervaka automatisk reparation av noder med Kubernetes-händelser

När AKS utför automatisk reparation av noder i klustret genererar AKS Kubernetes-händelser från aks-auto-repair-källan för synlighet. Följande händelser visas på ett nodobjekt när automatisk reparation sker.

Mer information om hur du kommer åt, lagrar och konfigurerar aviseringar för Kubernetes-händelser finns i Använda Kubernetes-händelser för felsökning i Azure Kubernetes Service.

Anledning Händelsemeddelande beskrivning
NodeRebootStart Automatisk reparation av nod initierar en omstartsåtgärd på grund av att NotReady-statusen bevaras i mer än 5 minuter. Den här händelsen skickas för att meddela dig när omstarten ska utföras på noden. Den här åtgärden är den första i den övergripande sekvensen för automatisk reparation av noden.
NodeRebootEnd Omstartsåtgärden från den automatiska nodreparationen har slutförts. Genereras när omstarten är klar på noden. Den här händelsen anger inte nodens hälsostatus (felfri eller inte felfri) efter omstarten.
NodeReimageStart Automatisk reparation av nod initierar en återimeringsåtgärd på grund av att NotReady-statusen bevaras i mer än 5 minuter. Den här händelsen skickas för att meddela dig när omimering är på väg att utföras på noden.
NodeReimageEnd Åtgärden för att återskapa nodens automatiska reparation har slutförts. Genereras när återimering har slutförts på noden. Den här händelsen anger inte hälsostatusen (felfri eller inte felfri) för noden efter att omstarten har utförts.
NodeRedeployStart Automatisk reparation av nod initierar en omdistribueringsåtgärd på grund av att NotReady-statusen kvarstår i mer än 5 minuter. Den här händelsen skickas för att meddela dig när omdistributionen ska utföras på noden. Omdistribuering är den sista åtgärden i sekvensen för automatisk reparation av noden.
NodeRedeployEnd Omdistribueringsåtgärden från den automatiska nodreparationen har slutförts. Genereras när omdistributionen har slutförts på noden. Den här händelsen anger inte nodens hälsostatus (felfri eller inte felfri) när omdistributionen har utförts.

Om några fel inträffar under nodens automatiska reparationsprocess genereras följande händelser med det ordagranna felmeddelandet. Läs mer om felsökning av vanliga fel vid automatisk reparation av noder.

Kommentar

Felkoden i följande händelsemeddelanden varierar beroende på vilket fel som rapporteras.

Anledning Händelsemeddelande beskrivning
NodeRebootError Omstarten av noden misslyckades på grund av ett åtgärdsfel. Se felinformation här: Felkod Genereras när det uppstår ett fel med omstartsåtgärden.
NodeReimageError Åtgärden för automatisk reparation av nod kunde inte repareras på grund av ett åtgärdsfel. Se felinformation här: Felkod Genereras när det finns ett fel med återimeringsåtgärden.
NodeRedeployError Åtgärden för automatisk reparation av nod kunde inte utföras på grund av ett åtgärdsfel. Se felinformation här: Felkod Genereras när det uppstår ett fel med omdistributionsåtgärden.

Nästa steg

Som standard kan du komma åt Kubernetes-händelser och loggar på ditt AKS-kluster från den senaste timmen. Om du vill lagra och fråga efter händelser och loggar från de senaste 90 dagarna aktiverar du Container Insights för djupare felsökning i DITT AKS-kluster.