Quand déplacer un serveur virtualisé vers un serveur physique?

12

La virtualisation présente de grands avantages, mais il y a des moments où un serveur virtualisé a besoin de plus de performances et doit être déplacé vers le physique.

Ma question est, comment savez-vous quand ces temps sont? Je recherche des données et des mesures mesurables qui montrent que le déplacement d'un serveur vers sa propre boîte physique ferait une différence significative dans les performances. Personnellement, je suis intéressé par Windows, mais les éléments essentiels sont probablement les mêmes sur toutes les plates-formes.

Alex Angas
la source

Réponses:

3

Le seul cas où j'ai dû réaliser un V2P était pour une boîte MS SQL qui fonctionnait sur deux processeurs dual core 3.2Ghz (total CPU 14.4Ghz) que nous avons migré vers un cluster ESX 2.5 où le matériel sous-jacent était plus récent avec plus cœurs plus lents (2,4 GHz IIRC). En ajoutant la surcharge de ~ 10% même avec 4 vCPU, cette machine virtuelle ne pouvait obtenir un processeur agrégé efficace de 8 à 8,5 GHz. 60% du processeur de pointe avant que la migration ne devienne 90-100% après la migration, le client voulait de la marge pour que nous revenions au physique. Pour répondre spécifiquement à votre question, nous avons vu que la boîte fonctionnait à 100% CPU dans tous les domaines dans Perfmon et dans le client VI. Une meilleure solution (à mon avis) aurait été de passer à des processeurs plus rapides, mais il y a des cas comme celui-ci où ce n'est pas économique, en particulier avec la tendance à un processeur plus lent.

Avec ESX 4, nous pouvions faire monter une boîte comme celle-ci jusqu'à 8 vCPU, mais ce n'était pas une option à l'époque.

En ce qui concerne la recherche de plafonds de performances qui pourraient indiquer que vous devez abandonner votre machine virtuelle, puis avec un environnement Windows Guest sur VMWare, la combinaison de Perfmon et du client VI devrait être plus que la tâche de trouver des machines virtuelles dont les performances sont limitées elles-mêmes. . Ajoutez à cela des analyses SAN si vous le pouvez, mais si le SAN présente un problème, vous serez certainement aussi bien retravaillé le stockage afin d'isoler et / ou d'améliorer les volumes sur lesquels les disques virtuels de la machine virtuelle sont stockés. Il en va de même pour toute autre combinaison OS \ Hyperviseur - obtenez toutes les statistiques internes que vous pouvez, mais corrélez-les avec la vue de l'hyperviseur sur ce qui se passe parce que 100% du processeur étant signalé dans une machine virtuelle (par exemple) ne signifie pas nécessairement que l'hyperviseur ne pourrait jamais fournir plus de performances,

Helvick
la source
4

Je ne suis pas d'accord pour dire qu'un serveur virtuel devrait être déplacé vers un serveur physique en raison des performances. Les hyperviseurs sont maintenant si proches du métal qu'il n'y a pratiquement (jeu de mots voulu) aucun impact sur les performances. Surtout maintenant que de nombreux fabricants de cartes incluent des hyperviseurs sur le chipset. Si vous avez pris deux serveurs avec un matériel identique, l'un exécutant un seul invité et l'autre exécutant une copie exacte de cet invité sur le matériel physique, vous auriez du mal à remarquer une différence de performances, je pense.

Il y a d'autres raisons, cependant, vous pourriez avoir besoin d'un serveur physique plutôt que virtuel. L'un d'eux est la compatibilité matérielle. Si votre application nécessite du matériel non standard avec son propre bus unique, vous ne pourrez peut-être pas l'exécuter sur une machine virtuelle.

J'ai hâte d'entendre ce que les autres ont à dire. Grande question.

REMARQUE: Nous avons des serveurs qui ont été virtualisés, puis remis sur le même matériel juste pour avoir les capacités d'instantané / vmotion que nous aimons.

Daniel Lucas
la source
3

Je ne suis pas un expert sur ce sujet, mais d'une manière générale: les applications d'E / S très gourmandes (en particulier celles qui écrivent peu et rapidement) sont celles qui obtiennent leur propre serveur physique.

Il n'est pas très difficile de les trouver non plus, il vous suffit d'exécuter le moniteur de performances et de rechercher des temps d'attente d'E / S élevés.

De plus, les bases de données haut de gamme disposent généralement de leur propre serveur dédié, pour plusieurs raisons:

  1. Ils veulent mettre tout ce qu'ils peuvent en cache, l'utilisation de la RAM est énorme
  2. Ils fonctionnent mieux avec le filetage sur plusieurs cœurs (8 voies est normal), et vous ne voulez généralement pas attribuer plus d'un processeur virtuel à un serveur en raison du blocage
  3. Ils sont très gourmands en E / S lors du chargement des données dans le cache, une faible latence sur les E / S est la clé.
pauska
la source
1
Je ne suis pas d'accord avec le commentaire "habituellement". Il y a des articles partout sur le site VMWare sur la configuration des serveurs de base de données sur VMWare et je ne pense pas que ce soit un problème. Mais vous faites des remarques intéressantes sur ce qui doit être évalué lorsque vous envisagez de passer à un serveur Virturalized.
SpaceManSpiff
1
Nous allons bientôt virtualiser nos quatre serveurs de base de données en raison des avantages que nous verrons avec les instantanés / vmotion / etc. Je suis d'accord avec LEAT que les serveurs de base de données ont et seront virtualisés à l'avenir.
Daniel Lucas
Je pense que vous m'avez mal compris. Je ne dis pas que les serveurs de bases de données ne doivent pas être virtualisés (tous mes dbs le sont). J'ai dit que les serveurs haut de gamme restent généralement sur des serveurs physiques séparés, en raison des limitations que cela apporte (comme avoir seulement 4 CPU virtuels disponibles).
pauska
Cependant, des applications d'E / S affamées vont probablement frapper un SAN, ce qui signifie que vous êtes de retour à la vitesse de la fibre optique ou de l'infinibande, et non à un disque brut sous la machine virtuelle - je n'ai pas vu (personnellement) une application qui a besoin être sur du matériel physique, en dehors des systèmes critiques, ou là où il n'est officiellement pas pris en charge par le fournisseur
warren
J'ai l'impression que les gens me discutent pour le plaisir de discuter. Je n'ai pas dit qu'il fallait un hôte physique. J'ai dit que les applications / utilisations extrêmement gourmandes en ressources disposent généralement de leur propre serveur dédié pour ne pas bloquer les autres machines virtuelles.
pauska
1

Cela dépend beaucoup du service que cela rend.

Je regarde généralement les ressources qui sont utilisées et je détermine si elles sont effectivement des goulots d'étranglement pour cet invité et les services qu'il fournit.

C'est de cette façon:

Si vous avez un invité Dual Core (2vSMP), 4 Go de RAM exécutant un serveur Web (IIS) et que vous ne maximisez pas les demandes de processeur et de RAM, alors l'invité n'a peut-être pas besoin de plus de matériel.

Nous avons rencontré des cas où l'exécution d'une base de données Oracle sur une plate-forme de virtualisation est proche des mêmes performances qu'un serveur matériel de taille similaire.

Évidemment, si vous vouliez avoir un serveur 16 cœurs en tant que VM, vous pourriez avoir du mal à le voir fonctionner aussi bien que du matériel dédié.

Mike Fiedler
la source
1

Lorsque la machine virtuelle est affamée de ressources (ou peut-être affamée d'autres machines virtuelles pour des ressources), par exemple:

  1. Lorsque les E / S de la machine virtuelle ne peuvent pas être satisfaites via l'hôte
  2. Lorsque la machine virtuelle a besoin de plus de bande passante réseau qu'il n'est possible de partager le tronc
  3. Lorsque les processus de la machine virtuelle veulent plus de CPU qu'il n'en peut obtenir, par exemple s'il y a un seul processus qui maximise un processeur virtuel
  4. Si son linux et lui ont besoin de temps très précis (si son fonctionnement sur un hôte VMware linux héberge sous le temps de dérive VMware. Cela peut être atténué en utilisant ntp, cependant pour les applications qui nécessitent un temps très précis, par exemple kerberos, vous pourriez considérer du vrai matériel)
  5. Lorsque son Linux et a besoin d'un disque très fiable (si son fonctionnement sur un hôte VMware - VMware a eu et je crois qu'il a toujours des problèmes SCSI sous VMWare sous certaines conditions. Un correctif a été mis en place mais il se produit toujours, bien que beaucoup moins souvent)
Jason Tan
la source
0

Je dirais que c'est lorsque le serveur est au point où il consomme suffisamment de ressources serveur qu'il ne peut pas partager le matériel.

ESX, ESXi et Window Hyper V devraient tous vous offrir des performances quasi réelles. Donc, tant que l'une des machines n'utilise pas 90% des ressources seule, vous ne devriez pas avoir besoin de passer à du vrai matériel.

Sauf que vous ne voudriez pas que des choses comme vos 2 contrôleurs de domaine soient sur la même boîte si le matériel tombe en panne.

SpaceManSpiff
la source
2
Je ne suis pas d'accord ici aussi. Bien que le coût d'exécution d'une seule machine virtuelle sur un seul hôte soit élevé compte tenu des coûts de licence, etc. Il présente des avantages distincts en termes de reprise après sinistre et de basculement matériel. Je pense que même dans ce cas, cela vaut la peine d'être virtualisé.
Kevin Kuphal
1
Vous avez tout à fait raison. Avec EXSi étant gratuit maintenant, on pourrait virtualiser un seul serveur, votre serveur Exchange par exemple et l'avoir sur une machine par lui-même. Lorsqu'il est temps de mettre à niveau le matériel, copiez simplement la machine virtuelle sur la nouvelle machine.
SpaceManSpiff
0

Je doute qu'il y ait une réponse générique à cela, mais si vous vous inquiétez de la performance, c'est ce que vous devez regarder. L'évidence serait de vérifier si vous exploitez au maximum le CPU, les E / S, ...

Mais aussi, les tests de performances et les tests de performance vous aideraient également à décider s'il y a une pénalité pour être virtuel et s'il est judicieux d'avoir une seule VM sur l'hôte.

Toto
la source
0

Vous devez d'abord identifier quelle ressource est le goulot d'étranglement.

Le moniteur de performances Windows ( perfmon ) fournit de nombreux compteurs pour divers aspects tels que la file d'attente du disque, les statistiques de la mémoire virtuelle, etc.

Si vous êtes lié au disque, donner à la machine virtuelle un accès direct à un disque au lieu de quelque chose comme un fichier vmx avec VMWare pourrait aider beaucoup.

Kyle Brandt
la source
0

Je pense que tout dépend de deux facteurs:

  • Partage des ressources: l'invité consomme-t-il tellement de ressources que la performance de l'autre est affectée
  • Sécurité: s'il s'agit d'un service très critique, vous ne devriez probablement pas utiliser la virtualisation car plus vous ajoutez de couches entre le logiciel et le matériel, moins vous serez en sécurité.

    juste mes 2cts.

  • Maxwell
    la source