J'utilise VMWare depuis de nombreuses années, exécutant des dizaines de serveurs de production avec très peu de problèmes. Mais je n'ai jamais essayé d'héberger plus de 20 VM sur un seul hôte physique. Voici l'idée:
- Une version allégée de Windows XP peut vivre avec 512 Mo de RAM et 4 Go d'espace disque.
- 5000 $ me donne une machine de classe serveur à 8 cœurs avec 64 Go de RAM et quatre miroirs SAS.
- Étant donné que 100 machines virtuelles mentionnées ci-dessus s'intègrent dans ce serveur, mon coût matériel n'est que de 50 $ par machine virtuelle, ce qui est super sympa (moins cher que la location de machines virtuelles chez GoDaddy ou tout autre hébergeur).
Je voudrais voir si quelqu'un est capable d'atteindre ce type d'évolutivité avec VMWare? J'ai fait quelques tests et suis tombé sur un problème étrange. Les performances des VM commencent à se dégrader considérablement une fois que vous avez démarré 20 VM. Dans le même temps, le serveur hôte ne présente aucun goulot d'étranglement des ressources (les disques sont inactifs à 99%, l'utlisation du processeur est inférieure à 15% et il y a beaucoup de RAM libre).
J'apprécierai si vous pouvez partager vos réussites autour de la mise à l'échelle de VMWare ou de toute autre technologie de virtualisation!
la source
Réponses:
Oui, vous pouvez. Même pour certaines charges de travail Windows 2003, 384 Mo seulement suffisent, donc 512 Mo est une assez bonne estimation, même si elle est un peu élevée. La RAM ne devrait pas être un problème, ni le CPU.
Un 100 VMs est un peu raide, mais c'est faisable, surtout si les VMs ne vont pas être très occupées. Nous exécutons facilement 60 serveurs (Windows 2003 et RHEL) sur un seul serveur ESX.
En supposant que vous parlez de VMware ESX, vous devez également savoir qu'il est capable de surcharger la mémoire. Les machines virtuelles n'utilisent presque jamais leur ration de mémoire complète, donc ESX peut engager plus que la quantité de RAM disponible pour les machines virtuelles et exécuter plus de machines virtuelles qu'il n'en a officiellement.
Votre goulot d'étranglement ne sera probablement pas un processeur ou une RAM, mais des E / S. VMware revendique d'énormes quantités d'IOPS dans son marketing, mais lorsque les efforts se concrétisent, les conflits de réservation SCSI et la bande passante limitée vous arrêteront complètement avant de vous approcher des fanfaronnages IOPS VMware.
Quoi qu'il en soit, nous ne connaissons pas la dégradation des performances de 20 VM. Quelle version d'ESX utilisez-vous?
la source
Un problème majeur avec un tel environnement serait la prévention des catastrophes et la protection des données. Si le serveur meurt, 100 machines virtuelles meurent avec lui.
Vous devez planifier une sorte de basculement des machines virtuelles et planifier une sorte de gestion «extra-VM» qui protégera vos machines virtuelles en cas de panne. Bien sûr, ce type de redondance signifie une augmentation des coûts - c'est probablement la raison pour laquelle de nombreuses dépenses ne sont approuvées qu'après que ses avantages ont été constatés dans la pratique (par son absence).
N'oubliez pas non plus que l'hôte VM n'est qu'un des nombreux points de défaillance uniques:
Ce n'est que quelques exemples: une infrastructure de VM massive nécessite une attention particulière à la prévention de la perte de données et à la prévention de la perte de VM.
la source
Aucune déclaration sur la viabilité de cela en production, mais il y a une démo NetApp très intéressante où ils provisionnent des bureaux 5440 XP sur 32 hôtes ESX (soit 170 par hôte) en environ 30 minutes en utilisant très peu d'espace disque en raison de la déduplication contre la machine virtuelle commune images
http://www.youtube.com/watch?v=ekoiJX8ye38
Je suppose que vos limitations proviennent du sous-système de disque. Vous semblez avoir pris en compte la mémoire et l'utilisation du processeur en conséquence.
la source
Je ne l'ai jamais fait - mais je vous promets que vous dépenserez beaucoup plus que sur le stockage pour obtenir suffisamment d'E / S pour prendre en charge autant de machines virtuelles que vous n'en aurez sur le matériel du serveur. Vous aurez besoin de beaucoup d'E / S si tous les 100 d'entre eux sont actifs en même temps. Pour ne pas paraître négatif, mais avez-vous également considéré que vous mettez beaucoup d'oeufs dans le même panier (on dirait que vous recherchez une solution à serveur unique?)
la source
Je serais très inquiet de la contention du processeur avec 100 machines virtuelles sur un seul hôte. Vous devez vous rappeler que le processeur n'est PAS virtualisé, donc chaque machine devra attendre l'accès au processeur. Vous pouvez commencer à voir la contention en regardant ESXTOP on m'a dit que plus de 5 dans le champ% RDY est très mauvais par les ingénieurs VMWare.
D'après mon expérience, j'ai vu environ 30 à 40 serveurs fonctionnant sur un hôte (sans en faire trop).
la source
J'avais 10 hôtes sur VMWare Server 1.0.6 (sous Windows 2003) et cela rencontrait régulièrement des problèmes d'E / S (et si les versions nocturnes se chevauchaient avec quelque chose d'autre, alors elles auraient des problèmes). Après la mise à niveau de Windows vers ESXi U3, nous avons constaté que nos problèmes de performances avaient disparu (les versions nocturnes n'échouaient plus).
Notez également que même si les SSD ont un taux d'E / S bien plus élevé que les supports en rotation, il y a des cas où cela ne tient pas, comme certains types de modèles d'écriture (beaucoup de petites écritures dispersées sur le lecteur réduisent les performances à moins que le contrôleur n'ait un cache tampon d'écriture intelligent qui fait un bon travail sur les écritures scatter).
Je recommanderais de rechercher / tester les fichiers SWAP sur différents lecteurs si vous rencontrez des problèmes.
la source
Si vous voulez le faire, je vous invite fortement à utiliser les nouveaux processeurs Intel 'Nehalem' Xeon 55xx - ils sont conçus pour exécuter des machines virtuelles et leur bande passante mémoire supplémentaire vous aidera énormément aussi. Oh, et si vous pouvez utiliser plus de disques plus petits que quelques grands, cela vous aidera beaucoup. Si vous pouvez également utiliser ESX v4 sur 3.5U4.
la source
J'ai 20 machines virtuelles XP fonctionnant avec 512 Mo de RAM chacune sur une machine avec 16 Go de RAM. Moins que cela et ils s'échangent sur le disque et cela donne le goulot d'étranglement. Ce sont toujours des machines virtuelles XP actives.
VMware et sa fonction OverCommit devraient vous permettre de pousser plus de RAM vers chaque machine XP. Une machine similaire partagera les mêmes pages, ce qui pourrait réduire l'écriture sur le disque. C'est quelque chose que j'aimerais examiner pour notre configuration pour essayer d'ajouter plus de machines car nos machines virtuelles XP font 10-20 meg de trafic de disque continu.
la source
Nous n'avons pas pu atteindre 100 invités satisfaits sur VMWare Server, mais nous avons constaté qu'ESXi faisait un bien meilleur travail. Ainsi, il semble que 100 XP vms ne soit pas un problème si vous utilisez ESXi et un serveur décent (quelques miroirs de disque pour répartir les E / S, quelques puces I7 et 64 Go de RAM). Il n'y a pas de délai visible pour les utilisateurs finaux et les ressources de l'hôte ne sont pas maximisées (la plus chaude est la CPU mais elle est généralement au moins à 70% inactive).
PS. Cette question a été postée par moi lorsque nous nous débattions avec VMWare Server.
la source
La dernière fois que j'ai vérifié, VMware ne recommande pas plus de 4 VM par cœur de traitement pour ESX, en supposant un vCPU par VM.
Cela suggère que les frais généraux de gestion deviennent un facteur.
Je suis très intéressé de voir si vous pouvez réellement atteindre un facteur 4x sur une boîte à 8 cœurs.
la source