Deployer 500 VM à partir d’un CSV

Au détour du Community Sample Code de VMWare nous sommes tombés sur un script de déploiement en powershell réalisé par Rob Mokkink.

Ce script permet, vous l’aurez compris, de déployer des VM à partir d’informations contenu dans un fichier csv, mais surtout d’un template existant dans Virtual Center

Nous nous sommes permis de modifier le script pour y ajouter la possibilité d’ajouter une liste de suffixes dns à la VM, la jonction à un domaine Active Directory, la sélection du Network Label après déploiement et l’affinité CPU.

Nous avons également rajouter une barre de défilement globale et individuelle :

Ce script vous permettra donc de lancer un déploiement massif de VM sans surcharger votre VC (les vm sont déployées en série) et ce avec des paramètres qui peuvent être très différents selon les VM (datastore, IP, Cluster, Ressource Pool, etc…)

N’hésitez pas à nous faire part de vos commentaires et/ou remerciements que nous ne manquerons pas de faire suivre. Thanks Rob !

create-vm.csv

create-vm-csv.ps1

/!\ le script ne vérifie pas (encore) l’espace disponible sur le datastore /!\

Tags: , , ,

6 Responses to “Deployer 500 VM à partir d’un CSV”

  1. Ça a l’air d’être génial pour des très gros data centres. Pour nous les petits, cela reste quand même impressionnante. A suivre donc… -:)

  2. Oui c’est vraiment quelque chose qui manque à VC et même pour 3 ou 4 VM c’est pratique. J’ai fais une version pour mon VC de prod qui renseigne aussi nos CustomField et Notes de la VM après le déploiement, Je ne peux plus m’en passer :)

  3. Hello !

    Est-ce que ce script est toujours fonctionnel pour un environnement en vmware 6.0 ?
    Je vais avoir besoin de deployer un certain nombre de machine assez rapidement :)

    Merci à toi,

    A+

  4. A tester mais il y a de grande chance que oui. Dis moi si tu as besoin d’aide ;)

  5. Alors ca marche plutot bien :) ca créé bien la vm, dans le bon folder, le bon vlan etc… par contre ca n’allume pas la VM et ne configure pas les paramètres reseau …
    Dans les logs du scripts j’ai un warning qui doit etre lié mais je ne sais pas comment contourner ce probleme :

    WARNING: PowerCLI scripts should not use the ‘Client’ property. The property
    will be removed in a future release.

    MacAddress : 00:50:56:aa:ab:ee
    WakeOnLanEnabled : True
    NetworkName : VLAN8
    Type : Vmxnet3
    ParentId : VirtualMachine-vm-8754
    Parent : TEST01
    Uid : /VIServer=domain\username@vcenter.tld.fr:443/Vir
    tualMachine=VirtualMachine-vm-8754/NetworkAdapter=4000/
    ConnectionState : NotConnected, GuestControl, StartConnected
    ExtensionData : VMware.Vim.VirtualVmxnet3
    Id : VirtualMachine-vm-8754/4000
    Name : Network adapter 1
    Client : VMware.VimAutomation.ViCore.Impl.V1.VimClient

    2017-7-7 17:25:57 VM Finished

    Une idée ?

  6. Il faudrait jouer les étapes pas à pas pour savoir mais aucun rapport avec le warning.

Leave a Reply