Aller au contenu

Virtualisation

De Wiki Pat-Informatik
🏠 Accueil 📚 Index 🐧 Linux 🌐 Réseau 🔒 Cybersécurité 🖥️ Virtualisation ✅ Checklists d'intervention 📚 Tutoriels 🤝 Services
🖥️ LA VIRTUALISATION

Comprendre, créer et administrer des machines virtuelles


La **virtualisation** est une technologie qui permet de faire fonctionner plusieurs ordinateurs virtuels sur un seul ordinateur physique. Chaque machine virtuelle peut disposer de son propre système d'exploitation, de ses applications et de ses paramètres. Elle est très utilisée dans les entreprises, les centres de formation, les laboratoires informatiques et les serveurs.

1. Qu'est-ce que la virtualisation ?

Définition : la virtualisation consiste à créer une version logicielle d'une ressource informatique, par exemple un ordinateur, un serveur, un réseau ou un espace de stockage.

Traditionnellement, un ordinateur physique exécute un système d'exploitation principal. Grâce à la virtualisation, il peut héberger plusieurs machines virtuelles indépendantes.

Par exemple, un ordinateur équipé de Windows 11 peut héberger :

  • Une machine virtuelle sous Windows Server 2022.
  • Une machine virtuelle sous Ubuntu Server.
  • Une machine virtuelle sous Debian.
  • Une machine virtuelle dédiée aux tests de logiciels.

Chaque système invité fonctionne dans son propre environnement virtuel.

2. Comment fonctionne la virtualisation ?

La virtualisation repose généralement sur quatre éléments :

Élément Rôle
Matériel physique Processeur, mémoire vive, disques et cartes réseau.
Hyperviseur Crée, exécute et gère les machines virtuelles.
Machine virtuelle Ordinateur simulé par logiciel, avec des ressources attribuées.
Système invité Système d'exploitation installé dans la machine virtuelle.

Exemple d'architecture

+--------------------------------------------------+
|              ORDINATEUR PHYSIQUE                 |
|                                                  |
|  Processeur - RAM - SSD - Carte réseau           |
|                                                  |
+--------------------------------------------------+
|                  HYPERVISEUR                     |
+-------------------+------------------------------+
|                   |                              |
|  MACHINE VIRTUELLE|  MACHINE VIRTUELLE            |
|  Windows Server  |  Ubuntu Server                |
|                   |                              |
|  AD DS / DNS      |  Apache / Services Linux     |
+-------------------+------------------------------+

Les machines virtuelles partagent les ressources de l'ordinateur physique, selon la configuration et les capacités de l'hyperviseur.

3. Qu'est-ce qu'un hyperviseur ?

Un **hyperviseur** est un logiciel qui permet de créer et de gérer des machines virtuelles.

Il existe deux grandes catégories.

Hyperviseur de type 1 : bare-metal

L'hyperviseur s'exécute directement sur le matériel physique, sans système d'exploitation généraliste hôte placé en dessous.

Exemples :

  • Microsoft Hyper-V dans son déploiement en hyperviseur natif.
  • VMware ESXi.
  • Proxmox VE, qui s'appuie sur KVM sous Linux.

Utilisation : virtualisation de serveurs, infrastructures professionnelles et laboratoires avancés.

Hyperviseur de type 2 : hébergé

L'hyperviseur fonctionne comme une application installée sur un système d'exploitation existant.

Exemples :

  • Oracle VirtualBox.
  • VMware Workstation.
  • Parallels Desktop.

Utilisation : formation, tests, découverte de systèmes d'exploitation et création de laboratoires informatiques.

Critère Type 1 Type 2
Fonctionnement Directement sur le matériel Au-dessus d'un système hôte
Usage courant Serveurs et infrastructures Ordinateurs de bureau et formation
Exemples ESXi, Hyper-V natif, Proxmox VE VirtualBox, VMware Workstation

4. Les principaux logiciels de virtualisation

Logiciel Environnement Utilisation
VirtualBox Windows, Linux, macOS selon la version Création de machines virtuelles pour apprendre et tester.
VMware Workstation Windows et Linux selon l'édition Laboratoires, tests et formation.
Hyper-V Windows avec éditions et fonctionnalités compatibles Virtualisation et environnements de test.
Proxmox VE Serveur basé sur Debian GNU/Linux Gestion de machines virtuelles et de conteneurs.
KVM Linux Virtualisation intégrée au noyau Linux, souvent avec QEMU.

Le choix dépend du matériel disponible, du système d'exploitation, du niveau de compétence et de l'utilisation prévue.

5. Les avantages de la virtualisation

  • Réduction des coûts : plusieurs serveurs virtuels peuvent fonctionner sur un seul serveur physique.
  • Souplesse : création et suppression rapides de machines virtuelles.
  • Formation : possibilité de tester des systèmes sans disposer de plusieurs ordinateurs.
  • Isolation : les systèmes invités sont séparés dans leur fonctionnement, sous réserve de la configuration.
  • Sauvegarde : certains outils permettent d'exporter ou de sauvegarder des machines virtuelles.
  • Environnements de test : expérimentation de logiciels, mises à jour et configurations.
  • Consolidation : meilleure utilisation des ressources physiques disponibles.

6. Les limites et les précautions

  • Plusieurs machines virtuelles consomment davantage de mémoire vive, de processeur et d'espace disque.
  • Les performances peuvent être inférieures à celles d'un système installé directement sur le matériel.
  • Une panne du serveur physique peut affecter toutes les machines virtuelles qu'il héberge.
  • Une mauvaise configuration réseau peut exposer des services involontairement.
  • Les instantanés (snapshots) ne remplacent pas une véritable sauvegarde.
  • Il faut maintenir à jour l'hyperviseur et les systèmes invités.

7. Les ressources nécessaires

Avant de créer une machine virtuelle, il faut vérifier les ressources de l'ordinateur.

Ressource À vérifier
Processeur (CPU) Prise en charge de la virtualisation matérielle, généralement Intel VT-x ou AMD-V.
Mémoire vive (RAM) Capacité suffisante pour le système hôte et les machines invitées.
Stockage Espace disponible pour les disques virtuels, les instantanés et les sauvegardes.
Réseau Mode de connexion adapté : NAT, réseau ponté ou réseau interne.
BIOS/UEFI Activation éventuelle des fonctions de virtualisation matérielle.

Exemple de laboratoire :

Pour utiliser un ordinateur avec 16 Go de RAM, on peut réserver une partie de la mémoire au système hôte et attribuer le reste aux machines virtuelles. Il faut ajuster les allocations à la charge réelle et éviter de saturer la mémoire physique.

8. Créer sa première machine virtuelle

Les étapes sont similaires dans la plupart des logiciels de virtualisation.

  1. Installer un hyperviseur compatible avec l'ordinateur.
  2. Télécharger l'image ISO du système d'exploitation à installer.
  3. Créer une nouvelle machine virtuelle.
  4. Choisir le nom, le type et la version du système invité.
  5. Attribuer la mémoire vive et le nombre de processeurs virtuels.
  6. Créer un disque virtuel.
  7. Associer le fichier ISO au lecteur virtuel.
  8. Démarrer la machine virtuelle et suivre l'installation du système.
  9. Installer les outils invités si le logiciel en propose.
  10. Configurer le réseau, les mises à jour et les paramètres de sécurité.

Conseil Pat-Informatik : avant de modifier une machine virtuelle qui fonctionne correctement, effectue une sauvegarde adaptée. Un instantané peut aider à revenir en arrière, mais il ne protège pas contre toutes les pannes.

9. Comprendre les modes réseau

Le réseau virtuel permet à la machine invitée de communiquer avec l'ordinateur hôte, le réseau local ou Internet.

Mode Fonctionnement Exemple d'utilisation
NAT La machine virtuelle accède généralement à Internet en passant par l'hôte. Naviguer et installer des mises à jour.
Pont (Bridge) La machine virtuelle apparaît généralement comme un appareil du réseau local. Tester un serveur accessible depuis d'autres ordinateurs.
Réseau interne Les machines virtuelles communiquent entre elles sur un réseau isolé du réseau externe, selon la configuration. Laboratoire Active Directory.
Réseau hôte uniquement Communication entre l'hôte et les machines virtuelles concernées, sans accès externe automatique. Tests locaux et administration.

Attention : en mode pont, les services de la machine virtuelle peuvent devenir accessibles depuis le réseau local. Vérifie les règles du pare-feu et les services exposés.

10. Virtualisation et conteneurs : quelle différence ?

Les machines virtuelles et les conteneurs permettent d'isoler des environnements, mais ils ne fonctionnent pas de la même manière.

Caractéristique Machine virtuelle Conteneur
Système d'exploitation Possède son propre système invité Partage le noyau du système hôte
Isolation Virtualisation matérielle et environnement invité Isolation au niveau du système d'exploitation
Démarrage Généralement plus long Généralement rapide
Utilisation typique Plusieurs systèmes d'exploitation, serveurs et laboratoires Applications et services déployés de façon reproductible
Exemples Hyper-V, KVM, VirtualBox Docker, Podman

Les conteneurs ne remplacent pas toujours les machines virtuelles. Les deux technologies peuvent être utilisées ensemble.

11. La virtualisation dans un serveur Ubuntu

Sur un serveur Ubuntu, plusieurs solutions sont possibles :

  • KVM et QEMU : exécution de machines virtuelles.
  • libvirt : gestion des machines virtuelles et de leurs ressources.
  • Proxmox VE : plateforme de virtualisation dédiée, basée sur Debian, pouvant héberger des VM et des conteneurs.
  • Docker : exécution d'applications dans des conteneurs.

Vérifier la prise en charge du processeur

Dans un terminal Linux, exécuter :

lscpu

Sur de nombreux processeurs Intel ou AMD, on peut également rechercher les indicateurs de virtualisation :

grep -Eoc '(vmx|svm)' /proc/cpuinfo

Un résultat supérieur à zéro indique que des indicateurs de virtualisation sont visibles pour le système. Cela ne garantit pas à lui seul que toute la configuration KVM est opérationnelle.

Vérifier KVM

ls -l /dev/kvm

Si le périphérique existe et que les permissions sont correctes, le système peut être prêt pour utiliser KVM. En cas d'erreur, vérifier la compatibilité du processeur, les paramètres UEFI/BIOS, les modules du noyau et les droits de l'utilisateur.

Installer les outils KVM sur Ubuntu

Sur une version d'Ubuntu compatible, une installation de base peut être réalisée avec :

sudo apt update
sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients virt-manager

Redémarrer ou ajuster les services et permissions si nécessaire. Vérifier les recommandations correspondant à la version d'Ubuntu utilisée avant de déployer en production.

Important : ne lance pas plusieurs installations de plateformes de virtualisation sur un serveur de production sans vérifier leurs interactions, leurs exigences et leur impact sur le réseau et le stockage.

12. Exemple de laboratoire informatique

Un laboratoire virtuel permet de s'entraîner sans multiplier les ordinateurs physiques.

Machine virtuelle Système Rôle
VM01 Windows Server 2022 Active Directory et DNS.
VM02 Windows 11 Poste client du domaine.
VM03 Ubuntu Server Serveur Web Apache.
VM04 Debian Tests Linux et services complémentaires.

Pour un laboratoire Active Directory, il est conseillé d'utiliser un réseau virtuel isolé ou soigneusement contrôlé. Il faut aussi prévoir les adresses IP, le DNS et les ressources nécessaires avant de démarrer les machines.

13. Instantanés et sauvegardes

Un **instantané** (snapshot) conserve l'état d'une machine virtuelle à un moment donné, selon les possibilités du logiciel utilisé.

Il peut servir à :

  • Tester une mise à jour.
  • Essayer une nouvelle configuration.
  • Revenir à un état antérieur en cas de problème.

Cependant, un instantané peut dépendre des fichiers de disque de la machine virtuelle et occuper beaucoup d'espace.

Bonnes pratiques :

  1. Effectuer des sauvegardes régulières vers un emplacement distinct.
  2. Tester la restauration des sauvegardes.
  3. Documenter la configuration réseau et les ressources attribuées.
  4. Ne pas conserver indéfiniment des instantanés inutiles.
  5. Protéger les sauvegardes contre les suppressions accidentelles et les accès non autorisés.

14. Sécurité et bonnes pratiques

  • Mettre à jour l'hyperviseur et les systèmes invités.
  • Utiliser des mots de passe robustes et des comptes administratifs limités.
  • Activer les pare-feux nécessaires.
  • Isoler les environnements de test sensibles.
  • Limiter les services exposés sur le réseau.
  • Surveiller l'utilisation du processeur, de la mémoire et du stockage.
  • Prévoir un plan de reprise après incident.
  • Vérifier les licences des systèmes d'exploitation et des logiciels utilisés.

15. Problèmes fréquents

Problème Cause possible Vérification
La machine virtuelle ne démarre pas Virtualisation désactivée ou ressources insuffisantes. Vérifier le BIOS/UEFI et les ressources.
L'installation ne démarre pas sur l'ISO ISO non associée ou ordre de démarrage incorrect. Vérifier le lecteur virtuel et le démarrage.
Pas d'accès à Internet Mode réseau ou configuration IP incorrecte. Vérifier NAT, pont, DNS et passerelle.
Machine virtuelle lente Mémoire, processeur ou stockage saturé. Contrôler l'utilisation des ressources.
Disque virtuel plein Taille insuffisante ou instantanés accumulés. Contrôler l'espace libre et les fichiers associés.
Connexion impossible depuis le réseau local Mode NAT, pare-feu ou service non accessible. Vérifier le mode réseau et les règles de filtrage.

16. Glossaire

Terme Définition
Hyperviseur Logiciel ou couche système qui exécute et gère les machines virtuelles.
Machine virtuelle (VM) Ordinateur simulé par logiciel.
Système hôte Système sur lequel fonctionne un hyperviseur hébergé.
Système invité Système d'exploitation installé dans une machine virtuelle.
CPU virtuel (vCPU) Processeur virtuel attribué à une machine virtuelle.
Disque virtuel Fichier ou volume représentant le stockage de la machine virtuelle.
Snapshot Capture d'un état de machine virtuelle permettant certains retours en arrière.
ISO Image de disque souvent utilisée pour installer un système d'exploitation.
KVM Technologie de virtualisation du noyau Linux.
Conteneur Environnement isolé partageant le noyau du système hôte.

17. Ressources et documentation

18. Pages associées


⬆ Retour en haut