Déploiement des hôtes Hyper-V
- 1. Plateformes disponibles et licences
- 2. Déploiement à partir de Windows Server avec GUI
- 3. Déploiement avec Windows Server Core
- 4. Limites des hôtes
- 5. Exercice d'installation d'une machine virtuelle
- 6. Exercice de gestion des VM en powershell
1. Plateformes disponibles et licences
Microsoft Hyper-V est disponible avec :
- Windows
- Windows Server avec ou sans GUI (Core)
- Hyper-V Server
Avec Windows, on dispose d'une solution "Workstation" aux fonctionnalités HA limitées (Cluster, Live Migration).
On connaît des limites en nombre de machine virtuelles licenciées avec Windows Server Standard.
Hyper-V Server est gratuit mais ses machines doivent être sous licence.
- Windows 10 :
14393.0.160715-1616.RS1_RELEASE_CLIENTENTERPRISEEVAL_OEMRET_X64FRE_EN-US.ISO
- Windows 2016 Server :
14393.0.160715-1616.RS1_RELEASE_SERVER_EVAL_X64FRE_EN-US.ISO
- Windows 2016 Hyper-V :
14393.0.160916-1106.RS1_REFRESH_SERVERHYPERCORE_OEM_X64FRE_EN-US.ISO
Versions 2016
Source : http://www.thewindowsclub.com/windows-server-2016-editions
Comparaison des versions
Source : http://www.thewindowsclub.com/windows-server-2016-editions
Pour plus de détail sur le licensing Windows 2016 Server / Hyper-V 2016 Server
- http://www.guvirt.org/dsi-et-architecture/34-aide-a-la-decision/229-licencing-windows-server-2016
- http://www.thomasmaurer.ch/2015/12/windows-server-2016-licensing-and-pricing/
- https://technet.microsoft.com/en-us/library/dn303421(v=ws.11).aspx
2. Déploiement à partir de Windows Server avec GUI
- Dans Gestionnaire de serveur, dans le menu Gérer, cliquez sur Ajouter des rôles et fonctionnalités.
- Dans la page Avant de commencer, vérifiez que votre serveur de destination et environnement réseau sont préparés pour le rôle et la fonctionnalité que vous voulez installer. Cliquez sur Suivant.
- Dans la page Sélectionner le type d’installation, cliquez sur Installation basée sur un rôle ou une fonctionnalité, puis sur Suivant.
- Dans la page Sélectionner le serveur de destination, sélectionnez un serveur dans le pool de serveurs, puis cliquez sur Suivant.
- Dans la page Sélectionner des rôles de serveurs, sélectionnez Hyper-V.
- Pour ajouter les outils avec lesquels vous créez et gérez des ordinateurs virtuels, cliquez sur Ajouter des fonctionnalités.
- Dans la page Fonctionnalités, cliquez sur Suivant.
- Dans les pages Créer des commutateurs virtuels, Migration d’ordinateur virtuel et Emplacements pardéfaut, sélectionnez les options appropriées.
- Dans la page Confirmer les sélections d’installation, sélectionnez Redémarrer automatiquement le serveur de destination, si nécessaire, puis cliquez sur Installer.
- Fin de l’installation, vérifiez que Hyper-V a été installée correctement. Ouvrez le tous les serveurs page dans le Gestionnaire de serveur et sélectionnez un serveur sur lequel vous avez installé Hyper-V. Vérifier le des rôles et fonctionnalités vignette sur la page pour le serveur sélectionné.
3. Déploiement avec Windows Server Core
Pour installer Hyper-V sur un serveur auquel vous êtes connecté à distance, exécutez la commande suivante et remplacez -ComputerName <computer_name> avec le nom du serveur.
Install-WindowsFeature -Name Hyper-V -ComputerName <computer_name> -IncludeManagementTools -Restart
Si vous êtes connecté localement sur le serveur, exécutez la commande sans -ComputerName <computer_name>.
Après le redémarrage du serveur, vous pouvez voir que le rôle Hyper-V est installé et voir quels sont les autres rôles et fonctionnalités installés en exécutant la commande suivante.
Get-WindowsFeature -ComputerName <computer_name>
Si vous êtes connecté localement sur le serveur, exécutez la commande sans -ComputerName <computer_name>.
4. Limites des hôtes
Ces valeurs maximales s’appliquent à chaque hôte Hyper-V.
Composant | Maximum | Remarques |
---|---|---|
Processeurs logiques | 512 | Ces deux éléments doivent être activés dans le microprogramme : Virtualisation à assistance matérielle -Prévention de l’exécution des données appliquée par matériel (DEP) L’hôte du système d’exploitation (partition racine) ne verront maximales 320 processeurs logiques |
Memory | 24 TO | Aucune. |
Associations de cartes réseau (cartes) | Aucune limite imposée par Hyper-V. | Pour plus d’informations, consultezcartes. |
Cartes réseau physiques | Aucune limite imposée par Hyper-V. | Aucune. |
Ordinateurs virtuels en cours d’exécution par serveur | 1024 | Aucune. |
Stockage | Limité par ce qui est pris en charge par le système d’exploitation hôte.Aucune limite imposée par Hyper-V. | Remarque :Microsoft prend en charge le stockage connecté au réseau (NAS) lors de l’utilisation de SMB 3.0.Le stockage NFS n’est pas pris en charge. |
Ports de commutateur réseau virtuel par serveur | Varie ; aucune limite imposée par Hyper-V. | La limite pratique dépend des ressources informatiques disponibles. |
Processeurs virtuels par processeur logique | Aucun ratio imposé par Hyper-V. | Aucune. |
Processeurs virtuels par serveur | 2 048 | Aucune. |
Réseaux de zone de stockage virtuel (SAN) | Aucune limite imposée par Hyper-V. | Aucune. |
Commutateurs virtuels | Varie ; aucune limite imposée par Hyper-V. | La limite pratique dépend des ressources informatiques disponibles. |
5. Exercice d'installation d'une machine virtuelle
Installation d'une première machine virtuelle Centos 7, Windows 10 ou Windows 2016 Server avec le Gestionnaire graphique Hyper-V. Découverte des fonctionnalité, notamment du réseau et des paramètres de mémoire.
6. Exercice de gestion des VM en powershell
Source : https://msdn.microsoft.com/en-us/virtualization/hyperv_on_windows/quick_start/walkthrough_powershell
Après avoir créé une machine virtuelle en interface graphique avec le Gestionnaire Hyper-V.
Aide Powershell
Get-Help Get-VM
NAME
Get-VM
SYNOPSIS
Gets the virtual machines from one or more Hyper-V hosts.
SYNTAX
Get-VM [[-Name] <String[]>] [-CimSession <Microsoft.Management.Infrastructure.CimSession[]>] [-ComputerName <String[]>] [-Credential
<System.Management.Automation.PSCredential[]>] [<CommonParameters>]
Get-VM [[-Id] <Guid]>] [-CimSession <Microsoft.Management.Infrastructure.CimSession[]>] [-ComputerName <String[]>] [-Credential
<System.Management.Automation.PSCredential[]>] [<CommonParameters>]
Get-VM [-ClusterObject] <PSObject> [<CommonParameters>]
DESCRIPTION
The Get-VM cmdlet gets the virtual machines from one or more Hyper-V hosts.
RELATED LINKS
Online Version: http://go.microsoft.com/fwlink/?LinkID=306845
REMARKS
To see the examples, type: "get-help Get-VM -examples".
For more information, type: "get-help Get-VM -detailed".
For technical information, type: "get-help Get-VM -full".
For online help, type: "get-help Get-VM -online"
PS C:\Users\Administrator> Get-Help Get-VM
Commande Get-VM
Get-VM
Name State CPUUsage(%) MemoryAssigned(M) Uptime Status Version
---- ----- ----------- ----------------- ------ ------ -------
c7-1 Running 0 512 1.02:31:09.6040000 Operating normally 8.0
hy1 Running 0 4096 1.02:18:54.5370000 Operating normally 8.0
test Off 0 0 00:00:00 Operating normally 8.0
Obtenir un état de machine virtuelle
Get-VM | where {$_.State -eq "Running"}
Name State CPUUsage(%) MemoryAssigned(M) Uptime Status Version
---- ----- ----------- ----------------- ------ ------ -------
c7-1 Running 0 512 1.02:35:36.8510000 Operating normally 8.0
hy1 Running 0 4096 1.02:23:21.7850000 Operating normally 8.0
Get-VM | where {$_.State -eq "Off"}
Name State CPUUsage(%) MemoryAssigned(M) Uptime Status Version
---- ----- ----------- ----------------- ------ ------ -------
test Off 0 0 00:00:00 Operating normally 8.0
Démarrer une machine virtuelle
Get-Help Start-VM -examples
NAME
Start-VM
SYNOPSIS
Starts a virtual machine.
Example 1
PS C:\>Start-VM –Name TestVM
Starts virtual machine TestVM.
Example 2
PS C:\>Start-VM –Name Test*
Starts all virtual machines whose names start with “Test.”
Arrêter une machine virtuelle
Get-Help Stop-VM -examples
NAME
Stop-VM
SYNOPSIS
Shuts down, turns off, or saves a virtual machine.
Example 1
PS C:\>Stop-VM –Name TestVM
Shuts down virtual machine TestVM through the guest operating system.
Example 2
PS C:\>Stop-VM –Name VM1 -Force
Shuts down virtual machine TestVM through the guest operating system, regardless of any unsaved application data. Hyper-V gives the
guest five minutes to save data, then forces a shutdown. This shutdown can result in loss of unsaved data.
Example 3
PS C:\>Stop-VM –Name TestVM –TurnOff
Turns off virtual machine TestVM. This operation is equivalent to disconnecting the power from the virtual machine, and can result in
loss of unsaved data.
Démarrer toutes les machines éteintes
Get-VM | where {$_.State -eq "Off"} | Start-VM
Eteindre toutes les machines en fonction
Get-VM | where {$_.State -eq 'Running'} | Stop-VM
Créer un checkpoint (snapshot)
Get-VM -Name <VM Name> | Checkpoint-VM -SnapshotName <name for snapshot>
Script de création d'une machine virtuelle
$VMName = "VMNAME"
$VM = @{
Name = $VMName
MemoryStartupBytes = 2147483648
Generation = 2
NewVHDPath = "C:\Virtual Machines\$VMName\$VMName.vhdx"
NewVHDSizeBytes = 53687091200
BootDevice = "VHD"
Path = "C:\Virtual Machines\$VMName"
SwitchName = (Get-VMSwitch).Name[0]
}
New-VM @VM
Configurer une machine virtuelle
To configure deeply a VM, you can use the Set-VM PowerShell cmdlet. Below an example:
Set-VM -Name <VM Name>
-ProcessorCount <number of vCPU>
-DynamicMemory
-MemoryMinimumBytes <Minimum Memory>
-MemoryStartupBytes <Startup Memory>
-MemoryMaximumBytes <Maximum Memory>
-AutomaticStartAction <automatic Start Action>
-AutomaticStartDelay <Automatic Start Delay in second>
-AutomaticStopAction <Automatic stop action>
- Name: Name of the VM you would like to edit
- ProcessorCount: number of vCPU that you want to assign to the VM
- DynamicMemory: Enable the Dynamic Memory
- MemoryMinimumBytes: set the minimum memory value
- MemoryStartupBytes: set the startup memory value
- MemoryMaximumBytes: set the maximum memory value
- AutomaticStartAction: action which is run when the Hyper-V service is starting (Nothing, Start, StartIfRunning)
- AutomaticStartDelay: number of second to wait before the automatic start action is run
- AutomaticStopAction: action which is run when the Hyper-V service is stopping (Save, Shutdown, TurnOff)
If you want to configure the VM with static memory you can use the below command:
Set-VM -Name <VM Name>
-ProcessorCount <number of vCPU>
-StaticMemory
-AutomaticStartAction <automatic Start Action>
-AutomaticStartDelay <Automatic Start Delay in second>
-AutomaticStopAction <Automatic stop action>