Par défaut, les pools de nœuds sont mis à jour en parallèle. Cela peut être à l'origine de deux problèmes:
Problème de quota
Un nœud de surutilisation est créé pour chaque pool de nœuds, de sorte que N pools de nœuds créent N nœuds de surutilisation lorsqu'ils sont mis à jour en parallèle. Cela peut entraîner l'épuisement des ressources si la capacité supplémentaire est limitée pour créer ces nœuds de surutilisation.
Problème d'interblocage PDB
Le drainage de plusieurs nœuds à la fois peut entraîner des interblocages PDB.
Ce document explique comment spécifier une stratégie de mise à jour de pool de nœuds pour configurer le nombre maximal de nœuds à mettre à jour simultanément lors de la mise à jour du pool de nœuds, ce qui peut aider à éviter les deux problèmes mentionnés. 0 signifie conserver le comportement parallèle actuel, qui est la valeur par défaut. 1 signifie mettre à jour les pools de nœuds de manière séquentielle.
Notez que même si la mise à jour séquentielle peut éviter ces deux problèmes, elle peut allonger le temps nécessaire au processus de mise à jour du pool de nœuds par rapport à une mise à jour en parallèle.
Configurer la stratégie de mise à jour du pool de nœuds
Dans la configuration de graine du cluster d'utilisateur user-cluster.yaml, vous pouvez configurer la mise à jour du pool de nœuds de manière séquentielle, comme suit:
nodePoolUpdatePolicy: maximumConcurrentNodePoolUpdate: 1
maximumConcurrentNodePoolUpdate
peut être défini sur une valeur entière arbitraire pour configurer le nombre de pools de nœuds que vous souhaitez mettre à jour en même temps.
La règle de mise à jour du pool de nœuds s'applique à la mise à jour et à la mise à niveau du pool de nœuds, mais pas à sa création. De plus, si la mise à jour ou la mise à niveau d'un pool de nœuds rencontre des problèmes et reste bloquée, le comportement actuel est que nous allons le bloquer et ne pas passer à la mise à jour du pool de nœuds suivant.