Article de reference

Virtualisation matérielle

La virtualisation matérielle consiste à virtualiser des ordinateurs sous forme de plateformes matérielles complètes, d'abstractions logiques de leurs composants, ou uniquement l...

virtualiser des ordinateurs sous forme de plateformes matérielles complètes, d'abstractions logiques de leurs composants, ou uniquement les fonctionnalités nécessaires à l'exécution de différents systèmes d'exploitation . La virtualisation émule l'environnement matériel de son architecture hôte, permettant ainsi à plusieurs systèmes d'exploitation de fonctionner sans modification et de manière isolée. À l'origine, le logiciel qui contrôlait la virtualisation était appelé « programme de contrôle », mais les termes « hyperviseur » ou « moniteur de machine virtuelle » se sont imposés au fil du temps.

machine virtuelle (parfois appelée « pseudo-machine »), un terme qui remonte lui-même au système expérimental IBM M44/44X . La création et la gestion de machines virtuelles sont également appelées, plus récemment, « virtualisation de plateforme » ou « virtualisation de serveur ».

La virtualisation de plateforme est réalisée sur une plateforme matérielle donnée par un logiciel hôte (un programme de contrôle ) qui crée un environnement informatique simulé, une machine virtuelle (VM), pour son logiciel invité . Ce dernier ne se limite pas aux applications utilisateur ; de nombreux hôtes permettent l’exécution de systèmes d’exploitation complets. Le logiciel invité s’exécute comme s’il était exécuté directement sur le matériel physique, avec toutefois quelques limitations importantes. L’accès aux ressources système physiques (telles que l’ accès réseau , l’affichage, le clavier et le stockage disque ) est généralement géré de manière plus restrictive que pour le processeur et la mémoire système de l’hôte . Les invités sont souvent empêchés d’accéder à certains périphériques ou limités à un sous-ensemble des capacités natives du périphérique, selon la politique d’accès matériel mise en œuvre par l’hôte de virtualisation.

Virtualization often exacts performance penalties, both in resources required to run the hypervisor and in reduced performance on the virtual machine compared to running native on the physical machine.

Reasons for hardware virtualization

  • In the case of server consolidation, many small physical servers can be replaced by one larger physical server to decrease the need for more (costly) hardware resources such as CPUs, and hard drives. Although hardware is consolidated in virtual environments, typically OSs are not. Instead, each OS running on a physical server is converted to a distinct OS running inside a virtual machine. Thereby, the large server can "host" many such "guest" virtual machines. This is known as Physical-to-Virtual (P2V) transformation. The average utilization of a server in the early 2000s was 5 to 15%, but with the adoption of virtualization this figure started to increase to reduce the number of servers needed.
  • In addition to reducing equipment and labor costs associated with equipment maintenance, consolidating servers can also have the added benefit of reducing energy consumption and the global footprint in environmental-ecological sectors of technology. For example, a typical server runs at 425W and VMware estimates a hardware reduction ratio of up to 15:1.
  • A virtual machine (VM) can be more easily controlled and inspected from a remote site than a physical machine, and the configuration of a VM is more flexible. This is very useful in kernel development and for teaching operating system courses, including running legacy operating systems that do not support modern hardware.
  • A new virtual machine can be provisioned as required without the need for an up-front hardware purchase.
  • A virtual machine can easily be relocated from one physical machine to another as needed. For example, a salesperson going to a customer can copy a virtual machine with the demonstration software to their laptop, without the need to transport the physical computer. Likewise, an error inside a virtual machine does not harm the host system, so there is no risk of the OS crashing on the laptop.
  • Because of this ease of relocation, virtual machines can be readily used in disaster recovery scenarios without concerns with impact of refurbished and faulty energy sources.

Cependant, lorsque plusieurs machines virtuelles s'exécutent simultanément sur le même hôte physique, leurs performances peuvent varier et être instables, en fonction de la charge de travail imposée au système par les autres machines virtuelles. Ce problème peut être résolu par des techniques d'installation appropriées permettant l'isolation temporelle des machines virtuelles .

Il existe plusieurs approches de la virtualisation de plateforme.

Exemples de cas d'utilisation de la virtualisation :

  • Exécution d'une ou plusieurs applications non prises en charge par le système d'exploitation hôte : une machine virtuelle exécutant le système d'exploitation invité requis pourrait permettre l'exécution des applications souhaitées, sans modifier le système d'exploitation hôte.
  • Évaluation d'un système d'exploitation alternatif : le nouveau système d'exploitation pourrait être exécuté dans une machine virtuelle, sans modifier le système d'exploitation hôte.
  • Virtualisation des serveurs : plusieurs serveurs virtuels peuvent être exécutés sur un seul serveur physique, afin d’utiliser plus pleinement les ressources matérielles de ce dernier.
  • Duplication d'environnements spécifiques : une machine virtuelle peut, selon le logiciel de virtualisation utilisé, être dupliquée et installée sur plusieurs hôtes, ou restaurée à un état système précédemment sauvegardé.
  • Création d'un environnement protégé : si un système d'exploitation invité exécuté sur une machine virtuelle est endommagé d'une manière qui n'est pas rentable à réparer, comme cela peut se produire lors de l'étude de logiciels malveillants ou de l'installation de logiciels mal conçus, la machine virtuelle peut simplement être supprimée sans dommage pour le système hôte, et une copie propre peut être utilisée lors du redémarrage de l'invité.

Virtualisation complète

Schéma logique de la virtualisation complète

En virtualisation complète, la machine virtuelle simule suffisamment de matériel pour permettre l'exécution isolée d'un système d'exploitation invité non modifié, conçu pour le même jeu d'instructions . Cette approche a été initiée en 1966 avec les IBM CP-40 et CP-67 , prédécesseurs de la famille des machines virtuelles .

paravirtualisation

hyperviseur est appelé « hyperappel » dans TRANGO et Xen ; il est implémenté via une instruction matérielle DIAG (« diagnostiquer ») dans le CMS d'IBM sous VMIBM 308X en 1980, avec l'instruction SIE (Start Interpretive Execution).

En 2005 et 2006, Intel et AMD ont développé du matériel supplémentaire pour prendre en charge la virtualisation exécutée sur leurs plateformes. Sun Microsystems (désormais Oracle Corporation ) a ajouté des fonctionnalités similaires à ses processeurs UltraSPARC série T en 2005.

En 2006, il a été constaté que la prise en charge matérielle x86 32 et 64 bits de première génération offrait rarement des avantages en termes de performances par rapport à la virtualisation logicielle.

Virtualisation au niveau du système d'exploitation

noyau est également utilisé pour implémenter les environnements « invités », et les applications exécutées dans un environnement « invité » donné le perçoivent comme un système autonome.

Reprise après sinistre pour la virtualisation matérielle

Un plan de reprise après sinistre (PRA) est souvent considéré comme une bonne pratique pour une plateforme de virtualisation matérielle. La PRA d'un environnement de virtualisation garantit une haute disponibilité lors de nombreuses situations perturbant le fonctionnement normal de l'entreprise. Lorsque la continuité d'exploitation des plateformes de virtualisation matérielle est essentielle, un PRA assure le respect des exigences de performance et de maintenance du matériel. Un PRA pour la virtualisation matérielle comprend la protection du matériel et des logiciels par différentes méthodes, dont celles décrites ci-dessous.

Sauvegarde sur bande pour les besoins d'archivage à long terme des données logicielles
Cette méthode courante permet de stocker des données hors site, mais leur récupération peut s'avérer complexe et longue. La qualité des données sauvegardées sur bande dépend de la dernière copie enregistrée. Ces méthodes nécessitent un périphérique de sauvegarde et un support de stockage permanent.
Réplication de fichiers entiers et d'applications
La mise en œuvre de cette méthode nécessite un logiciel de contrôle et une capacité de stockage suffisante pour la réplication des fichiers d'application et de données, généralement sur le même site. Les données sont répliquées sur une partition de disque différente ou un périphérique de disque distinct. Cette réplication peut être planifiée pour la plupart des serveurs et est plus fréquemment utilisée pour les applications de type base de données.
redondance matérielle et logicielle
Cette méthode assure le plus haut niveau de protection en cas de sinistre pour une solution de virtualisation matérielle, en fournissant une réplication matérielle et logicielle dupliquée dans deux zones géographiques distinctes.