3 votes

Les pods Kubernetes ne sont attribués qu'à un seul nœud lors de la définition des limites de ressources

Je fais fonctionner un service avec des pods qui récupèrent les tâches, les traitent et les terminent. Pour le moment, il s'agit d'un environnement de test, donc il n'y a pas d'utilisation réelle du CPU et de la mémoire de chaque pod, mais à l'avenir, je veux fixer une limite pour les pods.

L'exécution de tous les pods (disons 100) à la fois entraîne une distribution égale sur mes deux nœuds (chacun avec 2 CPU et 2 Go de mémoire) comme prévu.

À des fins de test, je fixe maintenant la limite de chaque pod :

    limits:
       memory: "1000Mi"
       cpu: "1"
     requests:
       memory: "1000Mi"
       cpu: "1"

Comme les contrôleurs et le système utilisent une partie des ressources disponibles des nœuds, je m'attends à ce que, sur chaque nœud, un pod soit exécuté jusqu'à ce qu'il réussisse, puis que le suivant soit programmé. En réalité, un seul nœud est utilisé pour traiter les 100 pods les uns après les autres.

Quelqu'un sait-il ce qui peut provoquer ce comportement ? Il n'y a pas d'autres limites définies.

Merci !

1voto

Fabian83 Points 53

Finalement, j'ai découvert que le problème était dû à une mauvaise information donnée par la commande "kubectl describe node ...". Celle-ci indiquait plus de mémoire (1225076KB) que celle réellement disponible sur le noeud (0.87GB). Je ne sais pas pourquoi (en particulier parce que la configuration des deux travailleurs est identique mais ils ont toujours des quantités différentes de mémoire libre), mais cela semblait être le problème.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X