automatisk reparation av Azure Kubernetes Service-nod (AKS)

AKS övervakar kontinuerligt hälsotillståndet för arbetsnoder och utför automatisk nodreparation om de blir felaktiga. Plattformen för virtuella Azure-datorer (VM) utför underhåll på virtuella datorer som har problem.

Virtuella AKS- och Azure-datorer arbetar tillsammans för att minimera tjänstavbrott för kluster.

I det här dokumentet får du lära dig hur funktionen för automatisk nodreparation fungerar för både Windows- och Linux-noder.

Så här söker AKS efter noder med feltillstånd

AKS använder följande regler för att avgöra om en nod är felaktig 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 manuellt kontrollera hälsotillståndet för dina noder med kubectl.

kubectl get nodes

Så här fungerar automatisk reparation

Anteckning

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

Om AKS identifierar en nod som inte är felfri i 10 minuter vidtar AKS följande åtgärder:

  1. Starta om noden.
  2. Om omstarten misslyckas kan du återskapa noden.
  3. Om omimningen misslyckas distribuerar du om noden.

Alternativa åtgärder undersöks av AKS-tekniker om automatisk reparation misslyckas.

Om AKS hittar flera noder med feltillstånd under en hälsokontroll repareras varje nod individuellt innan en ny reparation påbörjas.

Autodrain för nod

Schemalagda händelser kan inträffa på de underliggande virtuella datorerna (VM) i någon av dina nodpooler. För nodpooler med oanvänd kapacitet kan schemalagda händelser orsaka en preempt-nodhändelse för noden. Vissa nodhändelser, till exempel preempt, gör att AKS-nod autodrain försöker en avspärrning och tömning av den berörda noden, vilket möjliggör en graciös omläggning av alla berörda arbetsbelastningar på den noden. När detta händer kan du märka att noden får en taint med "remediator.aks.microsoft.com/unschedulable", på grund av "kubernetes.azure.com/scalesetpriority: spot".

I följande tabell visas nodhändelserna och de åtgärder som de orsakar för autodrain för AKS-noder.

Händelse Beskrivning Åtgärd
Frysa Den virtuella datorn är schemalagd att pausa i några sekunder. Cpu- och nätverksanslutningen kan pausas, men det påverkar inte minnet eller öppna filer Ingen åtgärd
Starta om Den virtuella datorn är schemalagd för omstart. Den virtuella datorns icke-beständiga minne går förlorat. Ingen åtgärd
Omdistribuera Den virtuella datorn är schemalagd att flyttas till en annan nod. Den virtuella datorns tillfälliga diskar går förlorade. Avspärrning och avlopp
Föregripa Den virtuella datorn för oanvänd kapacitet tas bort. Den virtuella datorns tillfälliga diskar går förlorade. Avspärrning och avlopp
Terminate Den virtuella datorn är schemalagd att tas bort. Avspärrning och avlopp

Begränsningar

I många fall kan AKS avgöra om en nod är felaktig och försöka reparera problemet, men det finns fall där AKS antingen inte kan reparera problemet eller inte kan identifiera att det finns ett problem. AKS kan till exempel inte identifiera problem om nodstatusen inte rapporteras på grund av fel i nätverkskonfigurationen eller om den initialt inte har registrerats som en felfri nod.

Nästa steg

Använd Tillgänglighetszoner för att öka hög tillgänglighet med dina AKS-klusterarbetsbelastningar.