« Si j’apprends Hyper-V, je dois reconstruire tout le laboratoire SORIA sur Hyper-V. »
Non. Le fil rouge garde son hyperviseur principal. Ici, Hyper-V sert à transférer les mêmes concepts vers l’écosystème Windows Server : VM, réseau virtuel, disque virtuel, ressources, checkpoint et export.
Contrat du TP
Tu travailles uniquement sur un hôte de laboratoire dédié. Si Hyper-V est exécuté dans une VM, la virtualisation imbriquée doit avoir été préparée par l’administrateur de la plateforme. Ce TP ne demande jamais d’activer Hyper-V sur un serveur de production.
01Vérifie l’hôte avant toute modification
Ouvre PowerShell en administrateur et établis d’abord l’état initial :
Get-ComputerInfo |
Select-Object WindowsProductName, WindowsVersion, OsArchitecture
Get-WindowsFeature Hyper-V
systeminfo.exe | Select-String 'Hyper-V'
Conserve la sortie. Si les prérequis de virtualisation matérielle ne sont pas disponibles, arrête le TP et documente le blocage au lieu de forcer une installation.
02Installe le rôle de manière contrôlée
Commence par une simulation :
Install-WindowsFeature -Name Hyper-V \
-IncludeManagementTools -WhatIf
Sur l’hôte jetable validé, l’installation réelle peut ensuite être réalisée :
Install-WindowsFeature -Name Hyper-V \
-IncludeManagementTools -Restart
Après redémarrage :
Get-WindowsFeature Hyper-V
Get-Command -Module Hyper-V | Select-Object -First 15 Name
Le rôle Hyper-V fournit l’hyperviseur ; le module PowerShell fournit les commandes d’administration. Sur Server Core, l’administration graphique peut être effectuée à distance : elle n’est pas un prérequis à la compétence.
03Crée un réseau virtuel sans toucher au réseau physique
Pour ce TP, crée un commutateur interne. Il permet de relier l’hôte et les VMs sans modifier l’interface physique :
New-VMSwitch -Name 'SORIA-HV-LAB' -SwitchType Internal
Get-VMSwitch |
Select-Object Name, SwitchType, NetAdapterInterfaceDescription
Attribue ensuite une adresse au côté hôte du réseau de laboratoire :
Get-NetAdapter -Name 'vEthernet (SORIA-HV-LAB)'
New-NetIPAddress \
-InterfaceAlias 'vEthernet (SORIA-HV-LAB)' \
-IPAddress 10.60.0.1 \
-PrefixLength 24
04Crée une VM et son disque VHDX
Prépare un emplacement dédié :
New-Item -ItemType Directory \
-Path 'C:\SORIA-HV-LAB\VMs' -Force
Crée ensuite une VM de génération 2 :
$vmName = 'BTS-HV01'
$vmPath = "C:\SORIA-HV-LAB\VMs\$vmName"
$vhdPath = "$vmPath\$vmName.vhdx"
New-VM \
-Name $vmName \
-Generation 2 \
-MemoryStartupBytes 2GB \
-NewVHDPath $vhdPath \
-NewVHDSizeBytes 30GB \
-Path 'C:\SORIA-HV-LAB\VMs' \
-SwitchName 'SORIA-HV-LAB'
Set-VMProcessor -VMName $vmName -Count 2
Set-VMMemory -VMName $vmName \
-DynamicMemoryEnabled $true \
-MinimumBytes 1GB \
-StartupBytes 2GB \
-MaximumBytes 4GB
Vérifie ce qui a réellement été créé :
Get-VM -Name $vmName |
Select-Object Name, State, Generation, MemoryStartup
Get-VMProcessor -VMName $vmName |
Select-Object VMName, Count
Get-VMMemory -VMName $vmName |
Select-Object VMName, DynamicMemoryEnabled,
Minimum, Startup, Maximum
Get-VMNetworkAdapter -VMName $vmName |
Select-Object VMName, SwitchName, MacAddress
Get-VHD -Path $vhdPath |
Select-Object Path, VhdFormat, VhdType, Size, FileSize
05Attache un ISO et installe le système invité
Utilise uniquement une image ISO déjà validée dans le laboratoire :
$iso = 'D:\ISO\debian-netinst.iso'
Test-Path $iso
Add-VMDvdDrive -VMName $vmName -Path $iso
$dvd = Get-VMDvdDrive -VMName $vmName
Set-VMFirmware -VMName $vmName -FirstBootDevice $dvd
Installe un système invité minimal. Pour un invité Linux, adapte Secure Boot au système et à l’image utilisés au lieu de le désactiver automatiquement.
Démarre et observe :
Start-VM -Name $vmName
Get-VM -Name $vmName |
Select-Object Name, State, Uptime, CPUUsage,
MemoryAssigned, Status
Active la mesure des ressources puis relève une baseline :
Enable-VMResourceMetering -VMName $vmName
Measure-VM -VMName $vmName
06Utilise un checkpoint sans le confondre avec une sauvegarde
Commence par inspecter le type configuré :
Get-VM -Name $vmName |
Select-Object Name, CheckpointType
Privilégie un checkpoint de production et refuse silencieusement aucun fallback pour cet exercice :
Set-VM -Name $vmName -CheckpointType ProductionOnly
Checkpoint-VM -Name $vmName -SnapshotName 'avant-changement'
Get-VMSnapshot -VMName $vmName |
Select-Object VMName, Name, CreationTime, SnapshotType
Si le checkpoint de production échoue parce que l’invité ne le supporte pas dans ce laboratoire, conserve cette erreur comme preuve et explique la dépendance. Ne transforme pas automatiquement l’exercice en checkpoint standard sans le documenter.
07Provoque un changement et prouve le retour
Dans la VM, crée un marqueur de test, par exemple :
/var/tmp/bts-hyperv-changement.txt
Puis relève l’heure et l’état de la VM. Après validation de la preuve, applique le checkpoint depuis l’hôte :
Restore-VMSnapshot \
-VMName $vmName \
-Name 'avant-changement' \
-Confirm:$true
Redémarre si nécessaire, reconnecte-toi à l’invité et vérifie si le marqueur est revenu à l’état attendu.
Le compte rendu doit distinguer l’état de l’hyperviseur de l’état fonctionnel du système invité.
08Exporte la VM et vérifie l’artefact
Prépare un emplacement différent du dossier courant de la VM :
New-Item -ItemType Directory \
-Path 'E:\SORIA-HV-EXPORTS' -Force
Stop-VM -Name $vmName -Shutdown
Export-VM -Name $vmName -Path 'E:\SORIA-HV-EXPORTS'
Get-ChildItem 'E:\SORIA-HV-EXPORTS' -Recurse |
Select-Object FullName, Length
L’export fournit un ensemble réimportable de configuration et de disques. Il ne prouve pas à lui seul une politique de sauvegarde : une vraie stratégie doit aussi traiter séparation, rétention, intégrité, restauration testée et objectifs RPO/RTO.
09Transfère les concepts depuis Proxmox
Les noms et implémentations changent, mais le raisonnement reste : ressources → réseau → stockage → cycle de vie → preuve → reprise.
Défends ta VM Hyper-V
- prouve les prérequis de l’hôte ;
- crée le vSwitch interne et documente son périmètre ;
- crée une VM génération 2 avec disque VHDX et mémoire dynamique ;
- installe un invité minimal et collecte son état ;
- crée un checkpoint en nommant explicitement son type ;
- provoque un changement réversible et démontre le retour ;
- exporte la VM ;
- compare cinq concepts Hyper-V avec l’environnement Proxmox déjà connu.
Preuves attendues
- état Hyper-V avant/après installation ;
- sortie de
Get-VMSwitch; - configuration VM, CPU, mémoire, réseau et VHDX ;
- état de la VM avant et après démarrage ;
- type et date du checkpoint ;
- résultat du retour après changement ;
- inventaire des fichiers exportés ;
- limite expliquant pourquoi checkpoint et export ne valent pas automatiquement sauvegarde validée.
✓À retenir
Hyper-V est une autre implémentation des concepts de virtualisation déjà maîtrisés. Le TP vérifie que tu sais créer, relier, dimensionner, observer et protéger temporairement une VM, sans confondre checkpoint, export et véritable stratégie de sauvegarde.