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.