Author
guest3be047
View
3.293
Download
1
Embed Size (px)
1
Virtualisation par logiciels libres
Benoît DonnetteExpert OSSA
2
● Qu'est-ce que la virtualisation ?– Raison d'être– Histoire, généralisation
● Technologies de virtualisation● Virtualisation libre
– Principaux logiciels● Conclusion
Sommaire
3
Qu'est-ce que la virtualisation ?
● Virtualiser : donner à une machine l'apparence de n machines logiques
Une forme de schizophrénie logicielle « Je sont des autres » ;-)
4
Qu'est-ce que la virtualisation ?
Système hôte : système qui acceuille les solutions de virtualisation, qui met à disposition ses ressources.
Système invité : système qui utilise les ressources mises à disposition par l'hôte.
VE : Virtual Environment. C'est une machine logique. Généralisation d'un système invité.
5
La virtualisation, raison d'être
Premiers ordinateurs : « machines à batch »– Programmation séquentielle– CPU peu utilisé lors des I/O– Si le batch se finit, la machine attend...
Au prix de la puissance de calcul à l'époque !
6
La virtualisation, raison d'être
Première solution : la multiprogrammation– Accessible dès que l'on a pu charger rapidement
un programme (RAM, disque)– Initialement faite « à la main », puis déléguée
au système
Apparition d'une couche d'abstraction : la « tâche », la machine se présente sous la forme d'unités de traitement parallèles
7
La virtualisation, raison d'être
● Abstraction suivante : la machine virtuelle– VM = ensemble de tâches + OS
8
La virtualisation, raison d'être
● Utilisation actuelle moyenne des serveurs ~10%(Source : Wikipedia)
● Besoin d'optimiser l'utilisation des ressources– Optimiser l'énergie, la ressource de calcul,
l'espace physique pris par les machines– Besoin de systèmes cloisonnés donc indépendants
La solution : la virtualisation. Une seule machine présente l'apparence de plusieurs machines indépendantes.
9
La virtualisation – Histoire
● Recherches IBM, au catalogue dès 1972 (VM/CMS)● Mainframes, architectures NUMA (Superdome)● Généralisation par l'émulation (années 1980-90)● Début 2000 : VMWare● Apparition des instructions de virtualisation sur les
processeurs de PC (2004)
La virtualisation devient accessible à tout ordinateur personnel
10
Technologies de virtualisation
Machine virtuelle
OS hôte
Matériel
Application
OS
VM logicielle
Application
OS
Application
OS
VM logicielle VM logicielle
11
Technologies de virtualisation
OS hôte
Matériel
Application
OS
Virtualisation
Application
OS
Application
OS
Virtualisation d'OS
12
Technologies de virtualisation
Hyperviseur
Matériel
Application
OS
Application
OS
Gestionnairede VM
Hyperviseur complet
13
Technologies de virtualisation
Hyperviseur
Matériel
Application
OS
Application
OS
Application
OS
Paravirtualisation
14
Virtualisation par logiciels libres
Système hôte considéré : Linux● Toutes les technologies sont représentées● Un grand nombre de projets● 4 projets remarquables, matures
– OpenVZ, Qemu (kqemu, kvm), VirtualBox, Xen● Des cadres prometteurs (kvm, lguest)● Des solutions stables et solides
15
OpenVZhttp://openvz.org/
Solution libre de virtualisation d'OS● Issue du logiciel commercial Virtuozzo● Econome en mémoire
– (1 seul kernel, plusieurs VM)
● Bon niveau de performances– 1 seul kernel, une seule couche système
● Limité au partage de plusieurs VE sous (strictement) le même OS
● Mise en place d'une distribution délicate
16
Qemuhttp://fabrice.bellard.free.fr/qemu/
F. Bellard, produit sous licence GPL● Logiciel de machine virtuelle
– Produit très ingénieux : virtualisation native ou par émulation
● Accélération potentielle : kqemu ou kvm● Produit mature, stable
● Interface un peu désuète
17
VirtualBoxhttp://www.virtualbox.org/
Logiciel de machine virtuelle de Innotek GMBH● Coexistence d'une version Open Source et d'une
version éditeur● Les 2 versions sont très actives● Utilise des parties de Qemu (boot)● Accélération par module● Interface aboutie
– Démarrage de VM en quelques clics
● Gourmand en RAM
18
Xenhttp://xen.org/
University of Cambridge - Citrix● Paravirtualiseur, né sous la forme d'un moniteur● Disponible pour les machines sans extensions de
virtualisation– Dans ce cas, un noyau modifié est nécessaire
● Profite des extensions de virtualisation si disponibles depuis la version 3.01
● Configuration souple mais complexe● Dom0 (hôte) limité à certains kernels (patches lourds)
19
Conclusion
● Plusieurs solutions libres pour plusieurs problèmes– Couverture des principales technologies
● Outils d'administration locale et à distance en retrait– Développements en cours
20
Conclusion
● Approche opposée au clusterCluster : n machines regroupées en une machine logique
● Les deux approches devraient en fait être complémentaires
Le cluster apporte la sûreté et la capacité en pointe de charge, la virtualisation consolide l'utilisation globale.
● Généralisation : n machines logiques sur p machines physiques
Possible et même opérationnel sur certains services (SGDB/JDBC)
Solutions encore spécifiques