Lister les machines virtuelles avec PowerCLI
Sommaire
I. Présentation
Le listing de machines virtuelles avec la console PowerCLI passe par l’utilisateur du command-let « Get-VM » auquel on peut ajouter des options afin d’afficher uniquement certaines VM, selon la banque de données où elles sont stockées, l’hôte sur lequel elle se trouve, etc… Nous allons voir dans ce tutoriel l’utilisation de ce command-let.
Avant de commencer ce tutoriel, exécutez la console PowerCLI et connectez-vous sur votre serveur vCenter ou sur votre hôte ESX/ESXi si vous n’avez pas de serveur vCenter.
II. Lister l’ensemble des VMs
Pour lister l’ensemble des VMs présentent dans l’inventaire de votre serveur vCenter, sans faire de filtrage, saisissez la commande suivante :
Get-VM
Ce qui vous retournera un listing comme ceci :
III. Lister les VMs dont le nom « commence par… » ou « contient… »
Il est également possible de lister les VMs dont le nom commence par « Win » par exemple, en utilisant l’option « -Name » du command-let Get-VM. Ce qui donnera la commande suivante :
Get-VM –Name Win*
Le caractère « * » après « Win » permet d’indiquer qu’on veut lister les VMs dont le nom contient « Win » suivit de d’autres caractères.
Dans le cas de l’exemple avec « Win » ça permet d’obtenir ce genre de résultat :
Si l’on veut voir les VM dont le nom contient « in » on l’entoure du caractère étoile « *in* » ce qui donnera ceci :
Get-VM –Name *in*
IV. Lister les VMs situées sur une banque de données
Maintenant, nous allons voir comment lister les VMs stockées sur une banque de données précise, sans lister celles qui se trouvent sur d’autres banques de données. Pour cela, on utilise toujours le même command-let avec l’option « -Datastore ». Par exemple, pour lister les VMs stockées sur le datastore nommé « datastore1 » cela donnera ceci :
Get-VM –Datastore datastore1
V. Lister les VMs enregistrées sur un serveur vCenter
Nous venons de voir comment lister les VMs situées sur une banque de données précisée en paramètre, il est possible de faire la même chose en listant les VMs enregistrées sur un serveur vCenter qu’on indique également en paramètre. Le paramètre en question est « -Server » suivi du nom du serveur vCenter. Il est possible d’utiliser la variable « $DefaultVIServer » qui a pour valeur le nom du serveur auquel on est connecté actuellement.
Par exemple, pour lister les VMs enregistrées sur le serveur vCenter auquel on est connecté, ça donnera ceci :
Get-VM –Server $DefaultVIServer
VI. Lister les VMs d’un cluster, d’un centre de données et d’un pool de ressources
L’option « -Location » permet de lister les VMs d’un cluster, d’un centre de données, d’un pool de ressources, etc… Par exemple, pour lister les VMs situées dans le pool de ressources « Service Informatique », voici ce que ça donne :
Get-VM –Location "Service Informatique"
Voilà, vous avez toutes les clés en mains pour utiliser le command-let « Get-VM » qui permet de lister des VMs tout en effectuant du filtrage sur le résultat grâce aux différentes options. Bien sûr, vous pouvez utiliser plusieurs options dans la même commande.