big-one-9d0479e4, et pourquoi d’autres restent bloqués en Pending si ce nœud est le seul disponible. Cette page détaille ces règles, leurs conséquences pratiques et comment diagnostiquer un pod qui refuse de démarrer.
Règle 1 : le chart rollout évite big-one-9d0479e4
En l’absence d’affinity explicite dans votre fichier de valeurs, le chartrollout injecte automatiquement une préférence négative qui demande au scheduler d’éviter le nœud big-one-9d0479e4 tant qu’un autre convient.
Il s’agit d’une règle de type preferredDuringSchedulingIgnoredDuringExecution avec un poids de 100. Le scheduler essaiera donc de placer le pod ailleurs, mais acceptera big-one-9d0479e4 si les trois autres nœuds sont pleins.
Voici ce que cela donne dans le manifeste rendu :
rollout (ou rollout-v2) sauf si vous redéfinissez explicitement le bloc affinity dans votre fichier de valeurs.
Règle 2 : data-precompute exclut strictement
Les manifestes devalues/data-precompute/ appliquent la même exclusion, mais en version stricte : requiredDuringSchedulingIgnoredDuringExecution. Ces pods REFUSENT de se planifier sur le nœud big-one-9d0479e4.
Conséquence pratique
L’essentiel de la charge repose sur les trois nœuds du plan de contrôle. C’est inhabituel pour un cluster Kubernetes, où l’on attend plutôt que les masters restent dédiés à la gestion du cluster.L’essentiel de la charge repose sur les 3 nœuds du plan de contrôle. C’est inhabituel pour un cluster Kubernetes, et cela signifie que vos 3 masters portent aussi du workload applicatif. Prenez cela en compte lorsque vous dimensionnez les ressources CPU et mémoire de vos pods.
Raison historique
Diagnostiquer un pod bloqué en Pending
Si un pod reste enPending, vérifiez d’abord s’il est victime d’une règle d’affinity.