Flash info

"Les IT Pros sont en train de migrer rapidement car PowerShell est plus facile et plus puissant que VBScript."

Microsoft Scripting Guys

 
Accueil arrow Bibliothèque de scripts arrow VMware arrow PowerCLI: Lister/Déconnecter les CDROM connectés sur vos VMs
PowerCLI: Lister/Déconnecter les CDROM connectés sur vos VMs
Écrit par Arnaud Petitjean [MVP]   
01-02-2011

Ce script s'appuie sur : VMWARE vSphere PowerCLI

Remarque : Avant d'exécuter ce script/fonction n'oubliez pas de charger le snap-in PowerCLI et de vous connecter au vCenter 

Testé dans la configuration suivante :  

  • PowerCLI v4.0 U1 Build 208462
  • vCenter 2.5 Update 6

Vous le savez, le fait que le lecteur de CDROM soit connecté à une VM empêche cette dernière d'être "vMotionnisée". Cela n'est pas trop gênant lorsqu'on initie le vMotion manuellement, mais cela l'est nettement plus si vous utilisez DRS en mode automatique, car votre VM ne pourra pas être déplacée à chaud et la charge ne pourra être équilibrée.

Grâce à ce petit script, vous allez désormais savoir en un instant quelles sont les VMs qui ont un CDROM connecté et l'image ISO associée.


Get-VM | Where {(Get-CDDrive $_).ConnectionState.Connected -eq $true} | Select-Object -Property `
   @{n='VM'; e={$_.Name}}, @{n='ISOPath'; e={(Get-CDDrive $_).ISOPath}}

Exemple de résultat:

VM                                     ISOPath
--                                     -------
SQLSRV1                                [Datastore_ISO] Images_ISO/en_sql_server_2008_r2.iso
Exchange2010SRV                        [Datastore_ISO] Images_ISO/Exchange_srv_2010_x64.iso
 

Si à présent vous souhaitez déconnecter dans la foulée les CDROMs, tapez la ligne de commandes suivante:


Get-VM | Where {(Get-CDDrive $_).ConnectionState.Connected -eq $true} | Select-Object -Property `
   @{n='VM'; e={$_.Name}}, @{n='ISOPath'; e={(Get-CDDrive $_).ISOPath}} | foreach {Get-VM $_.Name | Get-CDDrive | Set-CDDrive -Connected $false -nomedia -Confirm:$false}

 

Dernière mise à jour : ( 01-02-2011 )
 
© 2017 PowerShell-Scripting.com