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:
- Automatische upgrades van knooppuntinstallatiekopieën zijn niet ingeschakeld toen de knooppuntgroep werd gemaakt.
- 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-image
toe.
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.