Configurer la stratégie de mise à jour du pool de nœuds

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.