Pourquoi la virtualisation fait-elle tant de bruit?

34

Machine virtuelle, serveur virtuel, disque virtuel, etc ......

Cela n'a pas beaucoup de sens pour moi pourquoi quelqu'un voudrait rendre ses choses "virtuelles" alors qu'en fait, cela ajoute une couche supplémentaire à tout (ce qui dans la plupart des cas ralentira le processus).

Quel est le but de la virtualisation dans les multiples cas ci-dessus?

Templier noir
la source
15
Parce que vous pouvez d'un simple clic de souris déplacer l'ensemble de votre serveur virtuel d'un ordinateur physique à un autre sans temps d'arrêt, par exemple.
AndrejaKo
8
"ce qui dans la plupart des cas ralentira le processus" - je ne suis pas d'accord avec cette affirmation.
EJB
4
-1 RAISON: "Cette question ne montre aucun effort de recherche; elle n'est pas claire ou utile (cliquez de nouveau pour annuler)"
wizlog
3
"Cette question dose ne montre aucun effort de recherche": LOL!
bwDraco

Réponses:

67

En termes simples, la virtualisation n’est pas la solution à tout, mais c’est génial!

Vous dites ajouter une autre couche / la ralentir, mais dans les systèmes modernes, ce n’est pas si important que cela. Il existe à l'heure actuelle de nombreuses techniques et fonctionnalités qui rendent cette "couche" minimale (comme Intel VT-x, AMD-V ). Si vous utilisez la virtualisation basée sur l' hyperviseur , cette couche est encore plus petite.

Toutefois, en fonction de la manière dont les disques et la mémoire sont utilisés, il est possible de voir des augmentations de vitesse dans certaines situations.

Maintenant, un résumé rapide des produits de virtualisation car il y a une certaine confusion. Il existe 4 catégories, la plupart étant assez différentes:

Hypervisor - La plus petite surcharge, généralement solide, conçue pour la virtualisation 24x7. (Par exemple, Microsoft Hyper V , VMware ESXi .

Virtualisation de bureau (basée sur le logiciel) - Généralement conçue pour les programmeurs, les testeurs et les professionnels de l'informatique - La vitesse est encore très rapide / quasi native sur les machines modernes, mais, à la merci du système d'exploitation invité sous lequel elle s'exécute, 3 Les machines virtuelles 24x7 sur ma machine pour diverses tâches ne sont pas vraiment "conçues" pour cela - (par exemple, Microsoft Virtual PC , VMware Workstation , Sun (Oracle?) Virtual Box ). Ceux-ci émulent un ordinateur virtuel entier.

Virtualisation sur serveur (basée sur le logiciel) - Il s’agissait d’un marché assez important pendant un certain temps, mais il était moins performant que Hypervisor et est généralement devenu un marché mort. En gros, il s’agit d’une virtualisation des postes de travail optimisée pour un environnement de serveur (par exemple, Microsoft Virtual Server , VMware Server) .

Virtualisation logicielle - Selon les commentaires, j'ai laissé celui-ci en suspens. Il s’agit d’un marché spécialisé qui est généralement destiné à la virtualisation de programmes uniques (par exemple, Microsoft App-V , VMware ThinApp ). Cela crée une "couche" mince entre votre ordinateur et le logiciel - il intercepte fondamentalement tous les appels passés par le programme afin de rediriger les écritures de fichier / registre et, fondamentalement, de mettre en sandbox l'application. Cela présente quelques avantages, tels que la possibilité d'exécuter plusieurs versions de certaines applications complexes et facilite le déploiement (il peut toutefois être difficile de comprendre / de pénétrer dans le domaine).

Pourquoi sont-ils si populaires maintenant? Tout se résume aux coûts et au temps d’administration.

Par exemple, dans mon entreprise, je dois exécuter de nombreux "systèmes" pour différents systèmes que j'utilise ... SQL Server, un système intranet, un système de facturation, un système de messagerie, VOIP, un système hérité de certains anciens logiciels que je possède depuis quelques temps. clients et quelques autres - sachant que certains d’entre eux peuvent être exécutés à partir de la même boîte, mais, pour une longue liste de raisons ennuyeuses, je souhaite les séparer.

Ce choix en 2004/2005 signifiait que j'avais 6 serveurs sur 24x7 - cela fonctionnait très bien, mais chaque machine avait 2 Go de mémoire (quand c'était cher!), Et un processeur de l'époque P4 sur lequel je pouvais faire cuire un œuf . Les processeurs sur tous les systèmes n’ont guère dépassé les 5% ... peut-être un pic à 10-15%, mais la majorité a ralenti sur 0% pendant presque toute la durée de vie des machines.

En électricité, je ne m'en souviens vraiment pas, mais je crois que cela m'a coûté environ 100 £ par machine et par an.

Maintenant, si au lieu de cela j'avais virtualisé cet environnement (ce que j'ai fini par faire), je pouvais déplacer tous ces systèmes sur une seule machine et bénéficier de nombreuses fonctionnalités telles que la surabonnement de mémoire.

Cela signifie que mes 6 machines disposaient chacune de 2 Go de mémoire, mais en moyenne, elles en utilisaient toutes environ un quart. Physique à virtuel - le processus de migration d'une machine), toutes mes machines tournent aussi vite qu'elles étaient ... en fait, elles sont plus rapides (grâce à un processeur plus rapide).

En plus de cela, de nombreux autres avantages, tels que la migration ( V-Motion ) et la haute disponibilité , font de la virtualisation un choix judicieux.

Il convient également de signaler que de nombreux utilisateurs particuliers / professionnels ne pensent pas à certains extras: j'ai pu me débarrasser de certains de mes équipements réseau, perdre une charge de câbles, pas besoin de mon cher KVM ... Je pourrais laisser tomber 5 UPS et mon PDU ... Et le meilleur de tout, ça tient dans une seule armoire / sortie au lieu de l'énorme bourdonnement énervant d'un rack ventilé! ... et pas un besoin aussi important de faire fonctionner la climatisation si haut en été (ce que je n'ai pas pris en compte dans les coûts d'électricité ci-dessus).

J'avais peut-être une petite taille, mais je pense aux grandes entreprises qui font cela à plus grande échelle - j'ai déjà aidé une grande entreprise à migrer vers un environnement virtualisé - elles n'avaient pas le budget, alors j'ai négocié que mes termes de contrat étaient J'obtiendrais toutes les économies de coûts pendant 1 an et 20% pour les 3 prochains ... Cela me payait très bien, et ils bénéficiaient des avantages liés à l'administration la première année - ainsi que d'énormes économies de coûts à venir.

J'espère que cela répond à votre question! Si vous avez des questions complémentaires, je me ferai un plaisir d'y répondre.

William Hilsum
la source
2
Très bonne réponse. J'ajouterais même une 4ème catégorie - les machines virtuelles logicielles (principalement pour la programmation) telles que la machine virtuelle Java, Perl, V8, CLI, etc. qui améliorent la portabilité.
schnaader
4
Peut-être devriez-vous écrire un article à ce sujet sur le blog @Wil ;-)
Ivo Flipse
4
Je ne vois pas en quoi les machines virtuelles contribuent à une disponibilité élevée. L'autre jour, nous avions un coffre-fort matériel sur notre matériel de serveur VM. Instantanément, huit serveurs ont quitté le réseau. D'après ce que j'ai compris, VMotion ne fonctionne que si l'hôte que vous souhaitez déplacer est en cours d'exécution.
Andy
2
@Andy - vmware.com/products/high-availability/overview.html - Je l'ai utilisé pour les clients, la machine virtuelle s'exécute à deux endroits et si l'un tombe en panne, l'autre reprend instantanément sans perdre un seul ping - vraiment est une technologie vraiment étonnante sans avoir à configurer le clustering ou quoi que ce soit dans le logiciel - c’est purement une caractéristique de l’hyperviseur.
William Hilsum
1
@IvoFlipse Deal! .... Quand j'ai le temps! Devrait commencer un nouvel emploi la semaine prochaine (que ce soit pour un contrat d'un mois) et les choses sont un peu mouvementées en ce moment.
William Hilsum
22

Pour ajouter à la réponse de William

Test du logiciel par rapport aux systèmes d'exploitation J'ai vu un script de programmation qui, lorsqu'une nouvelle version de leur logiciel était créée, démarrait automatiquement les machines virtuelles de différents systèmes d'exploitation et installait le nouveau logiciel, puis exécutait des tests unitaires pour s'assurer que tout fonctionnait correctement. puis arrête la machine virtuelle. Dans ce cas particulier, il n'y avait qu'une seule machine virtuelle pour chaque système d'exploitation, mais il serait possible d'étendre cela à plusieurs scenerios. Par exemple, Vm pour Windows 7 32 bits, un autre pour Windows 7 64 bits. Un autre pour W7 32 bits avec Service Pack 1, W7 64 bits avec SP1, vms avec IE 9, vms avec IE. Comme un seul de ces vms est exécuté à la fois, l’espace disque est utilisé; il est donc possible d’en avoir des dizaines sur un serveur normal.

Économie d'espace disque: si dix ordinateurs virtuels exécutent tous le même système d'exploitation, il est possible de les faire partager le même disque dur virtuel de base, puis d'écrire leurs modifications sur leur propre disque dur virtuel.

Allocation / réallocation d'espace. Avec différents serveurs physiques, il est assez courant de voir une machine à court d’espace disque et d’autres serveurs ayant des charges libres. Malheureusement, vous ne pouvez pas créer la moitié d'un disque (ou d'un ensemble) d'un serveur et vous en tenir à un autre. Mais avec les serveurs virtuels, il est possible de réduire l'allocation pour un serveur et d'augmenter l'autre (ou simplement d'utiliser des disques à extension dynamique).

Instantanés. Cela vous permet de prendre un instantané de votre serveur à un moment donné, plutôt qu’une sauvegarde complète quasi instantanée. Cela signifie que vous pouvez faire des choses comme prendre un instantané ou arrêter votre serveur. Montez l’instantané de la semaine dernière, vérifiez certaines choses, puis arrêtez et montez votre instantané le plus récent, puis continuez, sans passer de longues heures à sauvegarder et à restaurer votre serveur. Avec un peu plus de travail, vous pouvez monter l’ancien instantané en tant qu’autre machine virtuelle et faire fonctionner les anciennes et les nouvelles copies côte à côte)

Déplacement de serveurs virtuels. Si vous avez, par exemple, deux serveurs hôtes et que vous trouvez que host1 est surchargé, mais host2 ne l'est pas, il est possible de déplacer l'une des quêtes d'hôte1 à host2, ce qui est presque aussi simple que d'empêcher l'invité de déplacer un (plutôt grand) fichier. (Il existe des options, généralement des extras, qui vous permettent de faire des choses merveilleuses, comme déplacer des invités entre des hôtes sans le fermer, afin que les utilisateurs ne le remarquent pas.)

Et ce n’est pas seulement les serveurs / entreprises où la virutalisation peut être bénéfique.

Je fais mes comptes personnels en utilisant une ancienne version de Quicken et une très très ancienne version d'Excel et de quelques autres petits programmes. Cette configuration ne fonctionne pas correctement sous Vista / W7 et ne fonctionne pas du tout dans les fenêtres 64 bits. J'avais l'habitude de l'exécuter sur un vieil ordinateur qui commençait à ne plus être fiable. Ceci est maintenant dans un disque dur XP virtuel et maintenant, quand je reçois une nouvelle machine, je viens d'installer Virtual PC et de copier ma machine virtuelle et de démarrer ma machine virtuelle. Tout est configuré et fonctionne beaucoup plus rapidement. Pas besoin d'installer Quicken et Excel ni de trouver les disquettes sur lesquelles Excel est arrivé (est-ce que j'ai dit que c'était une version vraiment très ancienne).

L’inconvénient de cette opération avec Windows à la maison est le coût supplémentaire des licences. Comme AaronM l'a fait remarquer, les entreprises peuvent réaliser des économies considérables, mais ce n'est pas le cas chez nous.

sgmoore
la source
3
Les instantanés ne sont pas aussi bons qu'ils le paraissent - ils entraînent de grosses performances. Chaque instantané que vous prenez ralentit la machine virtuelle. Si vous continuez à prendre des instantanés avec plusieurs branches, votre machine virtuelle s'arrête. Si vous avez besoin d'une sauvegarde, vous feriez mieux de copier le contenu de la VM ailleurs que de prendre des instantanés. Les instantanés sont idéaux lorsque vous n'en prenez pas trop et que vous avez besoin d'un mécanisme de sauvegarde et de restauration "rapide", tel que le test des installations logicielles ou le comportement des virus.
Hippo
@sgmoore c'est étrange, car mon installation Windows Office 32 bits fonctionnait parfaitement sur mon nouvel ordinateur 64 bits. Ces machines ne sont-elles pas toutes supposées être rétro-compatibles?
Dark Templar
+1 pour les instantanés. Si ce qui est testé ne fonctionne pas, revenez, si cela fonctionne, supprimez l'instantané.
Bratch
@ JacobHayden. La compatibilité n’est pas parfaite, ce à quoi sert le mode XP. Mais je ne suis pas vraiment allé aussi loin que de tester ma copie d'Excel avec des fenêtres 64 bits (mais j'utilise la version 32 bits d'Office 2007 sous W7 64 bits au travail). Mes problèmes concernaient davantage les autres programmes, car la configuration de Quicken venait de planter et deuxièmement, j'avais des problèmes avec ODBC. Il était plus facile d'éviter les problèmes et de continuer à utiliser XP sur une machine virtuelle.
sgmoore
Je fais tout sous Linux sur mon ordinateur portable (pas d'entreprise du tout), mais j'ai toujours besoin de quelque chose de temps à autre sous XP ou 7. J'avais l'habitude de subir l'aggravation grave du redémarrage de ma machine à double démarrage deux fois - une fois pour arriver à XP et une fois pour revenir. Maintenant, je peux faire tourner XP sous vm, donc ça ressemble à une autre application sous Linux. C'est une énorme amélioration. Et en plus de cela, tout ce que je dois faire est de copier un (énorme) fichier pour sauvegarder complètement Windows - dans un formulaire prêt à fonctionner avec tous mes paramètres intacts. C'est brilliant!
Joe
5

Dans les grandes entreprises, cela permet également de réaliser d'importantes économies de coûts en termes de licences. Par exemple, une licence de processeur à deux serveurs Microsoft Server 2008 datacentre vous permettra d’exécuter autant de copies de Server 2008 R2 sur une boîte virtuelle qu’elle peut gérer, sans la charge supplémentaire liée aux licences par système d’exploitation. De même, Microsoft SQL Server est concédé sous licence par processeur.

Un seul serveur physique doté de deux processeurs peut exécuter plusieurs systèmes d'exploitation invités et chacun d'eux peut exécuter une instance de serveur SQL, le tout couvert par la licence de serveur physique unique, ce qui peut générer des économies considérables.

Reportez-vous à http://www.bythebell.com/2010/05/virtualization-licensing-savings-for-microsoft-windows-and-sql-server-products.html pour quelques exemples.

Tous les commentaires de William ci-dessus sont également valables.

AaronM
la source
5

Une autre raison majeure qui, à mon avis, est si populaire est que cette solution est considérée comme une manière « verte » d’exploiter votre datacenter, car elle peut potentiellement consommer moins d’électricité. Et le greenwashing est un gros problème pour les services de relations publiques des entreprises ces derniers temps.

Dans un environnement typique non virtualisé, vous construisez chaque serveur avec une capacité excédentaire pour gérer la charge de pointe, ce qui signifie que vous avez beaucoup de puissance supplémentaire sur une prise de courant au cas où tout le monde déciderait de lancer une requête coûteuse. à la fois.

Dans un environnement virtualisé, plusieurs serveurs logiques peuvent partager cette capacité excédentaire en supposant que les serveurs logiques co-localisés sur une machine physique ne vont pas tous être saturés simultanément.

Une deuxième raison pour laquelle il gagne de la vitesse est qu’il s’enfonce dans les rouages ​​de l’ informatique en nuage . Les serveurs virtualisés sont une technologie de base permettant d'offrir de nombreuses fonctionnalités de l'informatique en nuage, qui ne reflètent pas par hasard celles de la virtualisation. Le cloud computing est une tendance à la mode en ce moment et il est probable que si vous mettez des serveurs dans le cloud, ce sont des serveurs virtualisés.

JohnFx
la source
Bonjour JohnFX, pourriez-vous expliquer un peu en quoi le cloud computing et la virtualisation sont similaires ou liés? Merci :)
Dark Templar
1
Je parlais principalement de l'informatique en nuage de type Hardware-As-A-Service, dans laquelle vous externalisez les plates-formes de serveur et y accédez via Internet. Avant la virtualisation, des sociétés comme Rackspace auraient littéralement des ordinateurs physiques dédiés à chaque client. Désormais, ils se contentent d’allouer des ressources en utilisant la virtualisation, ce qui leur permet d’économiser des coûts considérables.
JohnFx
0

Tout ce qui a été mentionné dans les réponses précédentes est correct, mais la vraie raison pour laquelle il est devenu si populaire dans les grandes entreprises est qu’il a contourné toutes les restrictions d’exportation de chiffrement et de licence de logiciel de notre fournisseur lors du transfert d’emplois de centres d’appels vers des pays en développement.

mrm
la source
-3

Le commentaire de Mrm est juste sur l'argent. En plus de permettre aux logiciels d'être utilisés plusieurs fois plus que le nombre de licences achetées ne le permettraient (et de fournir une zone grise astucieuse, le logiciel n'étant techniquement installé que sur un seul système et il est très difficile de prouver de manière scientifique que plusieurs systèmes utilisé, beaucoup moins expliquer comment c'est illégal une fois que vous l'avez prouvé) la virtualisation permet aux services informatiques paresseux de déployer les anciennes versions de logiciels. Cela permet d'économiser de l'argent et des heures de travail sur la mise à niveau, le recyclage des utilisateurs et le traitement des problèmes causés par la mise à niveau.

Jamesson
la source
4
Je ne dirais pas que c'est très précis du tout. Veuillez lire ma réponse. Je ne me dirais pas du tout paresseux et je lance des applications héritées. La raison en est que je peux exécuter Windows NT 4 pour un système client parfaitement virtualisé, où, où, sur Terre, vais-je pouvoir prendre en charge un matériel aussi ancien? Et si quelque chose se brise, je vais avoir de gros problèmes… Cela fonctionne parfaitement dans une VM. En plus de cela, chaque machine virtuelle a un ID de BIOS, une MAC NIC et plus, de sorte qu’elles ressemblent complètement à une machine distincte et qu’il est très facile de faire la différence.
William Hilsum