Automatisch herstel van Azure Kubernetes Service (AKS)-knooppunten

Van toepassing op: ✔️ AKS Automatic ✔️ AKS Standard

Azure Kubernetes Service (AKS) bewaakt continu de status van werkknooppunten en herstelt de knooppunten automatisch als ze beschadigd raken. Het Azure VM-platform (virtual machine) voert onderhoud uit op VM's die problemen ondervinden. AKS- en Azure-VM's werken samen om serviceonderbrekingen voor clusters te minimaliseren.

Voor de meeste productieworkloads is AKS Automatic de aanbevolen productierijpe standaardoplossing voor AKS. Zowel AKS Automatic- als AKS Standard-clusters worden vooraf geconfigureerd met automatisch herstellen van knooppunten.

In dit artikel leert u hoe automatisch herstellen van knooppunten werkt, wanneer herstelacties activeren, welke beperkingen van toepassing zijn en hoe u herstelgebeurtenissen kunt bewaken.

Gedrag voor automatisch herstellen van knooppunten per clustermodus

Beide AKS-clustermodi zijn vooraf geconfigureerd met automatisch herstellen van knooppunten:

  • AKS Automatisch: vooraf geconfigureerd als onderdeel van de standaardinstellingen voor automatische productie van AKS.
  • AKS Standard: vooraf geconfigureerd op AKS Standard-clusters zonder extra installatie.

Beide modi gebruiken dezelfde knooppuntstatuscontroles en dezelfde herstelvolgorde die in dit artikel wordt beschreven.

Zie Wat is Azure Kubernetes Service (AKS) Automatic? voor meer informatie over de standaardinstellingen van het AKS Automatic-platform.

Hoe AKS controleert op NotReady-knooppunten

AKS gebruikt de volgende regels om te bepalen of een knooppunt niet in orde is en moet worden hersteld:

  • Het knooppunt rapporteert de status NotReady bij opeenvolgende controles binnen een tijdsbestek van tien minuten.
  • Het knooppunt rapporteert geen status binnen 10 minuten.

U kunt de status van uw knooppunten handmatig controleren met de kubectl get nodes opdracht.

Hoe automatische reparatie werkt

Notitie

AKS initieert herstelbewerkingen met het gebruikersaccount aks-remediator.

Als AKS een beschadigd knooppunt identificeert dat ten minste vijf minuten niet in orde blijft, voert AKS de volgende acties uit:

  1. AKS start het knooppunt opnieuw op.
  2. Als het knooppunt beschadigd blijft nadat het opnieuw is opgestart, wordt het knooppunt opnieuw in AKS geplaatst.
  3. Als het knooppunt na het opnieuw installeren van de installatiekopie ongezond blijft en het om een Linux-knooppunt gaat, rolt AKS het knooppunt opnieuw uit.

AKS probeert opnieuw te starten, de installatiekopie te herstellen en de volgorde opnieuw te implementeren tot drie keer als het knooppunt niet in orde blijft. Het algehele proces voor automatisch herstellen kan maximaal één uur duren.

Overwegingen voor productie

Automatisch herstel van knooppunten is een essentieel veerkrachtmechanisme, maar combineer dit met veerkrachtmaatregelen op workloadniveau:

  • Voer kritieke workloads uit met meerdere replica's.
  • Gebruik PodDisruptionBudgets en gereedheidstests om de zichtbare impact van de gebruiker te verminderen.
  • Controleer de herstelactiviteit en fout gebeurtenissen om herhaalde knooppuntproblemen te detecteren.
  • Neem de tijdsinstellingen voor automatisch herstellen op in SLO/SLA en planning voor reactie op incidenten.

Beperkingen

Automatisch herstel van AKS-knooppunten is een service op basis van best effort. AKS garandeert niet dat een knooppunt in elk scenario naar een gezonde status wordt teruggebracht. Als een knooppunt ongezond blijft, voer dan handmatig onderzoek uit. Zie Problemen met knooppunt NotReady-status oplossen voor meer informatie.

AKS kan in de volgende scenario's mogelijk niet automatisch herstellen:

  • Een netwerkconfiguratiefout voorkomt dat een knooppuntstatus wordt gerapporteerd.
  • Een knooppunt kan niet als een gezond knooppunt worden geregistreerd.
  • Een knooppunt heeft een van de volgende taints:
    • node.cloudprovider.kubernetes.io/shutdown
    • ToBeDeletedByClusterAutoscaler
  • Een knooppunt wordt bijgewerkt en bevat de volgende aantekeningen:
    • "cluster-autoscaler.kubernetes.io/scale-down-disabled": "true"
    • "kubernetes.azure.com/azure-cluster-autoscaler-scale-down-disabled-reason": "upgrade"

Bewaken van automatische reparatie van knooppunten met Kubernetes-gebeurtenissen

Wanneer AKS automatisch herstel van knooppunten uitvoert, genereert het Kubernetes-gebeurtenissen vanuit de bron aks-auto-repair. De volgende gebeurtenissen worden weergegeven op een knooppuntobject wanneer automatisch herstellen plaatsvindt.

Zie Kubernetes-gebeurtenissen gebruiken voor probleemoplossing in AKS voor meer informatie over toegang krijgen tot, het opslaan van en het instellen van waarschuwingen voor Kubernetes-gebeurtenissen.

Reden Gebeurtenisbericht Beschrijving
NodeRebootStart Automatisch herstellen van knooppunten start een herstartactie omdat de status NotReady langer dan vijf minuten blijft bestaan. Deze gebeurtenis informeert u wanneer uw knooppunt opnieuw op het punt staat te worden opgestart. Deze actie is de eerste in de algehele reeks voor automatisch herstellen van knooppunten.
Einde van de node-herstart De herstartactie van automatisch herstel van een knooppunt is voltooid. Wordt verzonden zodra het opnieuw opstarten is voltooid op het knooppunt. Deze gebeurtenis geeft niet de status (in orde of niet in orde) van het knooppunt aan nadat het opnieuw opstarten is uitgevoerd.
NodeReimageStart Automatisch herstellen van knooppunten start een reimage-actie omdat de status NotReady langer dan vijf minuten blijft bestaan. Deze gebeurtenis stelt u op de hoogte wanneer uw node opnieuw van een image wordt voorzien.
NodeReimageEnd De herinstallatieactie via automatisch knooppuntherstel is voltooid. Wordt getriggert zodra de herimage is voltooid op het knooppunt. Deze gebeurtenis duidt niet op de gezondheidstoestand (gezond of ongezond) van het knooppunt na het opnieuw uitvoeren van de image.
NodeRedeployStart Automatisch herstellen van knooppunten start een herploy-actie omdat de status NotReady langer dan vijf minuten blijft bestaan. Met deze gebeurtenis wordt u gewaarschuwd wanneer opnieuw implementeren op uw knooppunt wordt uitgevoerd. Opnieuw implementeren is de laatste actie in de reeks voor automatisch herstellen van knooppunten.
NodeRedeployEnd Herimplementatie vanuit de automatische knooppuntreparatie is voltooid. Wordt verzonden zodra de implementatie is voltooid op het knooppunt. Deze gebeurtenis geeft niet de gezondheidstoestand (gezond of ongezond) van het knooppunt aan na de herimplementatie.

Als er fouten optreden tijdens het automatisch herstellen van knooppunten, verzendt AKS de volgende gebeurtenissen met het exacte foutbericht. Zie Veelvoorkomende fouten bij automatisch herstellen van knooppunten oplossen voor meer informatie.

Notitie

Foutcode in de volgende gebeurtenisberichten varieert op basis van de gemelde fout.

Reden Gebeurtenisbericht Beschrijving
NodeRebootError De opstartactie voor automatisch herstellen van knooppunten is mislukt vanwege een bewerkingsfout. Bekijk hier de foutdetails: Foutcode Verzonden wanneer er een fout optreedt met de actie voor opnieuw opstarten.
Fout bij Opnieuw Afbeelden van Node De automatische herstelactie voor knooppunten is mislukt vanwege een operatiefout. Bekijk hier de foutdetails: Foutcode Wordt verzonden wanneer er een fout optreedt bij de herinstallatieactie.
Fout bij Opnieuw Ontplooien van Knoop De automatische herstelactie van het knooppunt is mislukt door een operationele fout. Bekijk hier de foutdetails: Foutcode Opgetreden wanneer er een fout optreedt bij de herimplementatie-actie.