Planification de la capacité des conteneurs Docker


12

J'exécute mon application sur 4 machines virtuelles avec 8 CPU virtuels à 3,2 GHz et 32 ​​Go, cependant, je vais diviser les processus dans des conteneurs séparés.

Je ne sais pas combien de conteneurs exécuter par hôte. Quels sont les nombres typiques? Par exemple, comment le rapport VM / serveur bare metal est 1:10 en général, tout lien sur les attributs à considérer, les cadres de décision à considérer ou les expériences aiderait!

Réponses:


9

Comme pour toute charge Linux, ne considérez pas plus de processus en attente que le nombre de CPU. La charge sur 1, 5 et 15 minutes donnée par uptimedevrait idéalement être inférieure de 1 au nombre de cœurs.

Les conteneurs sont des processus à peu près isolés, laissant un noyau d'orchestration pour éviter la congestion.

Cela ne signifie pas seulement 7 conteneurs sur une machine à 8 cœurs, c'est une question de chargement simultané, donc la meilleure façon est de le mesurer et de l'adapter en conséquence.


1

Personnellement, j'ai fait tourner 100 conteneurs sur une machine 32vcpu et autant de conteneurs docker épinglent sur des processeurs aléatoires, il n'y a pas une telle corrélation entre le nombre de conteneurs et le nombre de vcpus. Comme les conteneurs Docker peuvent être considérés comme des processus, il semble logique que @Tensibai ait mentionné.


Exécutez une boucle while sans sommeil sur tous vos conteneurs, vous observerez ce que je décris ci-dessus, les conteneurs sont des processus avec un système de fichiers virtuel, ce n'est pas possible, ils sont exactement cela
— Tensibai
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.