Delen via


Problemen met verouderde kernelversies in Installatiekopieën van Azure Linux Container Host-knooppunten oplossen

Tijdens de migratie of bij het toevoegen van nieuwe knooppuntgroepen aan uw Azure Linux-containerhost kunnen er problemen optreden met verouderde kernelversies. Azure Kubernetes Service (AKS) brengt elke week een nieuwe Azure Linux-knooppuntinstallatiekopieën uit, die wordt gebruikt voor nieuwe knooppuntgroepen en als de begininstallatiekopieën voor omhoog schalen. Oudere knooppuntgroepen werken hun kernelversies mogelijk niet bij zoals verwacht.

Voer de kernelversie van uw knooppuntgroepen uit om te controleren of de KERNELVERSIE van uw knooppuntgroepen wordt uitgevoerd:

    kubectl get nodes -o wide

Vergelijk vervolgens de kernelversie van uw knooppuntgroepen met de meest recente kernel die is gepubliceerd op packages.microsoft.com.

Symptoom

Een veelvoorkomend symptoom van dit probleem is onder andere:

  • Azure Linux-knooppunten gebruiken niet de meest recente kernelversie.

Oorzaken

Er zijn twee primaire oorzaken voor dit probleem:

  1. Automatische upgrades van knooppuntinstallatiekopieën zijn niet ingeschakeld toen de knooppuntgroep werd gemaakt.
  2. De basisinstallatiekopie die AKS gebruikt om clusters te starten, wordt twee weken achter de meest recente kernelversies uitgevoerd vanwege de implementatieprocedure.

Oplossing

U kunt automatische upgrades inschakelen met behulp van GitHub Actions en de knooppunten opnieuw opstarten om dit probleem op te lossen.

Automatische upgrades van knooppuntinstallatiekopieën inschakelen met behulp van Azure CLI

Als u automatische upgrades van knooppuntinstallatiekopieën wilt inschakelen bij het implementeren van een cluster vanuit az-cli, voegt u de parameter --auto-upgrade-channel node-imagetoe.

az aks create --name testAzureLinuxCluster --resource-group testAzureLinuxResourceGroup --os-sku AzureLinux --auto-upgrade-channel node-image

Automatische upgrades van knooppuntinstallatiekopieën inschakelen met behulp van ARM-sjablonen

Als u automatische upgrades van knooppuntinstallatiekopieën wilt inschakelen wanneer u een ARM-sjabloon gebruikt, kunt u de eigenschap upgradeChannel instellen op autoUpgradeProfile node-image.

    autoUpgradeProfile: {
      upgradeChannel: 'node-image'
    }

De knooppunten opnieuw opstarten

Wanneer u de kernelversie bijwerkt, moet u het knooppunt opnieuw opstarten om de nieuwe kernelversie te gebruiken. U wordt aangeraden de kured daemonset in te stellen. U kunt uw knooppunten voor het /var/run/reboot-required bestand bewaken, de werkbelasting leegmaken en de knooppunten opnieuw opstarten.

Tijdelijke oplossing: Handmatige upgrades

Als u een snelle tijdelijke oplossing nodig hebt, kunt u de knooppuntinstallatiekopieën handmatig bijwerken op een cluster met behulp van az aks nodepool upgrade. Dit kan worden gedaan door uit te voeren

az aks nodepool upgrade \
    --resource-group testAzureLinuxResourceGroup \
    --cluster-name testAzureLinuxCluster \
    --name myAzureLinuxNodepool \
    --node-image-only

Volgende stappen

Als het probleem niet wordt opgelost met de voorgaande stappen, opent u een ondersteuningsticket.