Planification du nombre de machines virtuelles
Lorsqu'il s'agit de déterminer le nombre de machines virtuelles à prévoir sur un seul hôte, il n'existe pas vraiment de règles empiriques. En fait, il n'y en a qu'une, et elle n'est pas très bonne :
Le nombre de machines virtuelles est généralement limité par la RAM, sauf dans les cas où il ne l'est pas.
Ce qui n'est pas très utile. Si ces machines virtuelles sont destinées à exécuter des applications à faible nombre de processeurs, votre limite sera basée sur la RAM. Chaque plateforme de VM a ses propres capacités de sursouscription de RAM, donc ce n'est pas aussi simple que TOTAL_RAM / Per-VM-RAM = MachineCount, mais ce nombre est un bon élément de planification.
Mais qu'en est-il si vos machines virtuelles font autre chose que de la recherche de paquets sur des processeurs de faible puissance ?
Le nombre de machines virtuelles est limité par sept ressources discrètes dont dispose la machine hôte :
-
Hyperviseur VMware, Xen, HyperV, KVM, peu importe. Chacun d'entre eux possède ses propres caractéristiques qui ont un impact sur le nombre d'ordinateurs. Certains sont très performants en matière de déduplication mémoire-page, d'autres moins. Certains ne permettent pas la sursouscription de la capacité du CPU, d'autres oui.
-
Vitesse du cœur du CPU Cela limite les performances maximales d'un thread unique qu'une VM pourra exécuter. 36 cœurs d'un CPU à 1,8 GHz peuvent représenter 64,8 GHz de CPU sur un hôte, mais aucun thread unique ne fonctionnera à plus de 1,8 GHz.
-
Nombre de noyaux de l'unité centrale Avec la vitesse de base, elle décrit le plafond des performances maximales du processeur que vous pouvez atteindre.
-
RAM du système Comme décrit ci-dessus, cela limite le nombre de VMs que vous pouvez exécuter. Certains hyperviseurs sont plus performants que d'autres dans des domaines tels que la déduplication des pages de mémoire, de sorte que si vous exécutez 100 VM identiques, vous pouvez en mettre beaucoup plus sur des systèmes à déduplication que si vous exécutez 100 VM complètement différentes.
-
Taille du disque Chaque image du système d'exploitation occupe une certaine quantité d'espace. Vous avez besoin de suffisamment d'espace pour tout stocker. Par conséquent, la taille du disque fixe une limite supérieure au nombre de machines virtuelles que vous pouvez héberger.
-
Largeur de bande d'E/S Le disque sous-jacent aux machines virtuelles a un nombre maximum d'entrées/sorties par seconde qu'il peut gérer. Si vous lui en envoyez trop, les systèmes s'enliseront en attendant que les E/S se terminent. Cela impose une limite supérieure au nombre de VM consommatrices d'E/S que vous pouvez exécuter.
-
Bande passante du réseau Pour les machines virtuelles utilisant le réseau, la largeur de bande du réseau disponible limitera le nombre de machines virtuelles que vous pouvez exécuter sur un hôte donné.
Tous ces éléments peuvent vous faire trébucher, tout dépend de ce que vous faites avec vos VM. Quelques points à retenir :
- Il n'existe pas de système générique.
-
Il n'existe pas de serveur web générique. puisque le code d'application peut être exécuté à partir d'un code à peine mobile. CDN -jusqu'à de grosses opérations de "deep-cracking" comme le transcodage vidéo.
-
Il n'existe pas de serveur de base de données générique. . Il peut s'agir de minuscules systèmes utilisés uniquement pour le suivi de l'état des sessions, ou de très gros systèmes.
Pour savoir combien de machines virtuelles vous pouvez placer dans un système hôte, vous devez savoir comment vos systèmes fonctionnent et ce dont ils ont besoin pour bien fonctionner. Une fois que vous savez cela, vous pouvez alors faire la planification du nombre de machines. Et mieux encore, déterminez la puissance que vous devez donner à vos systèmes hôtes !