Debian logo [inetdoc.LINUX]

Virtualisation système et enseignement

Philippe Latu

Historique des versions
Version $Revision: 1500 $ $Date: 2010-05-25 22:20:48 +0200 (mar. 25 mai 2010) $ $Author: latu $
Année universitaire 2008-2009

Résumé

Cet article est à la fois un retour d'expérience et une proposition d'évolution dans l'usage de la virtualisation d'instances de systèmes d'exploitation dans les enseignements pratiques sur ces mêmes systèmes. L'objectif est de faciliter la diffusion et l'usage de la virtualisation auprès des étudiants qui ont quelques difficultés à dépasser le niveau du simple utilisateur.

Table des matières

1. Copyright et Licence
1.1. Méta-information
1.2. Conventions typographiques
2. Introduction
3. Choix d'une solution de virtualisation
3.1. Virtualisation et noyau Linux
3.2. Contexte pratique
4. Mise en œuvre de KVM
4.1. Identification des extensions matérielles du processeur
4.2. Sélection des options du noyau Linux
5. Mise en œuvre de QEMU
5.1. Identification des extensions matérielles du processeur
5.2. Construction du module KQEMU du noyau Linux
6. Mise en œuvre de VIRTIO
6.1. Identification des modules disponibles
6.2. Utilisation des bibliothèques VIRTIO
7. Création d'une machine virtuelle avec KVM
7.1. Outils nécessaires avec KVM
7.2. Installation d'une machine virtuelle KVM
8. Création d'une machine virtuelle avec QEMU
8.1. Outils nécessaires avec QEMU
8.2. Installation d'une machine virtuelle QEMU
9. Optimisation d'une machine virtuelle
9.1. Optimisation de la gestion de paquets
9.2. Optimisation de la console
9.3. Optimisation de la configuration graphique
10. Extension de la capacité de stockage d'une image de machine virtuelle
10.1. Extension de l'image disque
10.2. Extension des volumes logiques LVM
11. Communications réseau en mode utilisateur
11.1. Exemple d'utilisation des communications réseau en mode utilisateur
12. Fonction TUN/TAP du noyau Linux
12.1. Configuration manuelle d'une interface TAP
12.2. Configuration système d'une interface TAP
12.3. Configuration Debian d'une interface TAP
13. Communications réseau en mode point-à-point
13.1. Exemple d'utilisation des communications réseau en mode point à point
14. Communications réseau en mode pont
14.1. Configuration simple
15. Communications réseau en mode commutation virtuelle
15.1. Configuration manuelle
15.2. Configuration système
16. En guise de conclusion

1. Copyright et Licence

Copyright (c)  2000,2010 Philippe Latu.
Permission is granted to copy, distribute and/or modify this 
document under the terms of the GNU Free Documentation License, 
Version 1.2 or any later version published by the Free Software
Foundation; with no Invariant Sections, no Front-Cover Texts, 
and no Back-Cover Texts. A copy of the license is included in 
the section entitled "GNU Free Documentation License".
Copyright (c)  2000,2010 Philippe Latu.
Permission est accordée de copier, distribuer et/ou modifier ce
document selon les termes de la Licence de Documentation Libre GNU
(GNU Free Documentation License), version 1.2 ou toute version
ultérieure publiée par la Free Software Foundation ; sans
Sections Invariables ; sans Texte de Première de Couverture, et
sans Texte de Quatrième de Couverture. Une copie de
la présente Licence est incluse dans la section intitulée
« Licence de Documentation Libre GNU ».

1.1. Méta-information

Cet article est écrit avec DocBook XML sur un système Debian. Il est disponible en version imprimable aux formats PDF et Postscript : vm.pdf | vm.ps.gz.

Toutes les commandes utilisées dans ce document ne sont pas spécifiques à une version particulière des systèmes UNIX ou GNU/Linux. C'est la distribution Debian GNU/Linux qui est utilisée pour les tests présentés. Voici une liste des paquets contenant les commandes :

  • procps - The /proc file system utilities

  • kernel-package - A utility for building Linux kernel related Debian packages.

  • fakeroot - Gives a fake root environment.

  • kvm - Full virtualization on x86 hardware

  • qemu - fast processor emulator

  • kqemu-common - Common files for the QEMU Accelerator module

  • kqemu-source - Source for the QEMU Accelerator module

  • openvpn - virtual private network daemon

  • vde2 - Virtual Distributed Ethernet

1.2. Conventions typographiques

Tous les exemples d'exécution des commandes sont précédés d'une invite utilisateur ou prompt spécifique au niveau des droits utilisateurs nécessaires sur le système.

  • Toute commande précédée de l'invite $ ne nécessite aucun privilège particulier et peut être utilisée au niveau utilisateur simple.

  • Toute commande précédée de l'invite # nécessite les privilèges du super-utilisateur.