La gestion des machines virtuelles va essentiellement s’opérer grâce à la famille de commandes « VM ». Ainsi pour démarrer une machine virtuelle, nous utiliserons Start-VM et pour l’arrêt Stop-VM ou Shutdown-VM.
PowerShell, Gestion des machines virtuelles
Exemple 1 : Démarrage d’une machine virtuelle
PS > Start-VM -VM ‘Windows 7 X64’
Cette commande donne l’ordre à la machine virtuelle de démarrer, puis elle retourne un objet de type VM et nous affiche toutes ses propriétés. En regardant la propriété Status, nous savons si l’action a réussi où non. Une autre façon de le savoir est d’aller consulter l’état du dernier travail (job) effectué.
Pour se faire, utilisons la ligne de commandes suivante :
PS > Get-Job | Select-Object -First 1
Description : Arrêter l’ordinateur virtuel
IsVisible : True
Status : Completed
StatusString : Terminé
ErrorInfo : Success (0)
StartTime : 13/09/2010 22:27:52
EndTime : 13/09/2010 22:27:53
Owner : PS-SCRIPTING\Administrator
OwnerSID : S-1-5-21-3628732846- 2239576409-4110719840-500
Name : Arrêter l’ordinateur virtuel
Steps : {Arrêter l’ordinateur virtuel}
CurrentStep : Arrêter l’ordinateur virtuel
ProgressValue : 100
Progress : 100 %
WasNotifiedOfCancel : False
CmdletName : Stop-VM
PROTipID :
ResultObjectID : 2f96fe4b-101b-49d2-bfde-76db17b9ce71
TargetObjectID : 2f96fe4b-101b-49d2-bfde-76db17b9ce71
TargetObjectType : VM
IsCompleted : True
AreAuditRecordsAvailable : False
AuditRecords : {}
AdditionalMessages : {}
Source :
Target :
ResultObjectType : VM
ResultObjectTypeName : Ordinateur virtuel
ResultName : Windows 7 X64
IsRestartable : False
IsStoppable : False
ID : 97026e63-01fe-4c19-9dad-04512ce39831
MarkedForDeletion : False
IsFullyCached : True
La propriété ErrorInfo ayant la valeur « Success », nous pouvons donc considérer que le travail s’est correctement exécuté. Attention toutefois, il faut bien avoir conscience qu’il faut dissocier le démarrage de la VM du démarrage de l’OS. En effet, la machine pourrait très bien être démarrée et le système d’exploitation « planté ».
Exemple 2 : Arrêt « brutal » d’une machine virtuelle
PS > Stop-VM -VM ‘Windows 7 X64’
Stop-VM a le même effet que si vous débranchiez la prise électrique d’une machine physique. C’est à utiliser en dernier recours, si un arrêt « propre » du système n’a pas d’effet, par exemple.
Exemple 3 : Arrêt « propre » d’une machine virtuelle
PS > Shutdown-VM -VM ‘Windows 7 X64’
Pour que cette commande puisse fonctionner correctement, il faut que des agents soient installés à l’intérieur des VM. Dans le monde Microsoft ces derniers s’appellent « Services d’intégration » et dans le monde VMWare ce sont les « VMWare tools ».
Il est intéressant de noter que cette commande suspend l’exécution de PowerShell tant que la machine n’est pas arrêtée. Pour forcer PowerShell à rendre la main, c’est à dire à continuer l’exécution sans attendre, il faut ajouter le commutateur -RunAsynchronously.
PS > Shutdown-VM -VM ‘Windows 7 X64’ -RunAsynchronously
A présent pour connaître l’état d’avancement de la tâche, il suffit de regarder l’état du dernier travail en cours comme précédemment.
PS > Get-Job | Select-Object -First 1
Description : Arrêter l’ordinateur virtuel
IsVisible : True
Status : Running
StatusString : En cours d’exécution
ErrorInfo : Success (0)
StartTime : 13/09/2010 22:59:06
EndTime :
Owner : PS-SCRIPTING\Administrator
OwnerSID : S-1-5-21-3628732846-2239576409-4110719840-500
Name : Arrêter l’ordinateur virtuel
Steps : {Arrêter l’ordinateur virtuel}
CurrentStep : Arrêter l’ordinateur virtuel
ProgressValue : 0
Progress : 0 %
WasNotifiedOfCancel : False
CmdletName : Shutdown-VM
…
L’arrêt est toujours en cours. On attend quelques instants puis on interroge à nouveau le travail en cours.
PS > Get-Job | Select-Object -First 1
Description : Arrêter l’ordinateur virtuel
IsVisible : True
Status : Completed
StatusString : Terminé
ErrorInfo : Success (0)
StartTime : 13/09/2010 22:59:06
EndTime : 13/09/2010 23:00:13
Owner : PS-SCRIPTING\Administrator
OwnerSID : S-1-5-21-3628732846-2239576409-4110719840-500
Name : Arrêter l’ordinateur virtuel
Steps : {Arrêter l’ordinateur virtuel}
CurrentStep : Arrêter l’ordinateur virtuel
ProgressValue : 100
Progress : 100 %
WasNotifiedOfCancel : False
CmdletName : Shutdown-VM
Cette fois, c’est bon, le travail est terminé et il s’est terminé correctement.
Pour aller plus loin sur PowerShell avec les experts @ITPROFR :
Powershell, une ligne de commande qui a su se faire désirer · iTPro.fr
Les 10 éléments clés à connaître pour tirer parti de PowerShell · iTPro.fr
Téléchargez cette ressource
Les 10 tendances clés de l’Expérience Client (CX) pour 2025
Dans le contexte actuel, l'expérience client est un levier clé de réussite. Pour rester compétitives, les entreprises doivent adopter des stratégies CX audacieuses, en s'appuyant sur le cloud, le digital et l'IA. Alors quelles stratégies mettre en place pour garder une longueur d’avance ?
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- La législation européenne sur l’IA entre en vigueur. Comment s’y préparer au mieux ?
- Actions pour agir face à l’impact environnemental de l’IA générative
- DORA : échéance clé du 17 janvier 2025 pour les établissements du secteur financier
- La protection des données : quelles solutions ?
- Comment maîtriser votre facture Azure !