2 Replies Latest reply on Apr 12, 2011 12:09 AM by BackOfficeTeam

    How to Deploy Multiple VM's from Template in Orchestrator

    BackOfficeTeam Novice

      Hi Guys

       

      Is there any way to deploy multiple VM's from template in Orchestrator?I

      Any scripts, PowerShell or step by step manuals how to configure Orchestrator to deploy from Templates

       

      Cheers

        • 1. Re: How to Deploy Multiple VM's from Template in Orchestrator
          mcfadyenj Hot Shot

          there most certainly is.

           

          I am just rewriting a working model of this to run on vc 3.5. But essentially what I did was this.

           

          I was using xml as a source to determine which machines would be built from which templates. But you could do similar with configuration objects.

           

          As a minimalist amount of info you need something like this for each of the vm's you wish to deploy.

           

          • Machine Name (string)
          • Template name  (VcVirtualMachine)
          • target host (VcHostSystem)
          • target datastore (VcDatastore)
          • vlan  (string)
          • target vm folder (VcVmFolder)

           

          Because I am used to working with xml and I wanted to make a workflow that was static and just fed different data from the xml to adjust its behaviour.

           

          So I use the xml to load data into configuration objects and then created a workflow loop to iterate the configuration object. See below site for workflow loops.

           

          http://www.vcoteam.info/learn-vco/creating-workflow-loops.html

           

          There are a couple of complexities of using xml and they are:

           

          most of the data was in string form and needed to be converted to vco object types.

          xml cannot be returned as an object that can be iterated with a workflow loop.

           

          To work around the first issue of string types. I did the following.

           

          see attached ipGetObjectFromStringDatastore.action

           

          This would iterate through an array of datastores and return a datastore object based on a string representation of that object.

           

          You will need a similar action for each of the strings you wish to return as an object.

           

          ie

           

          hosts, templates, datastores

           

          One you have all the objects required for each of your mass deployment items you need to either load them to a configuration object or an array object. This will be the basis of the workflow loops that come in the next step.

           

          You can populate a config object similar to this.

           

          var serverNameArray = configElement.getAttributeWithKey("serverName").value;
            serverNameArray.push(serverName);

           

          The deploy from a template action already exists and can be found at

           

          com.vmware.library.vc.basic "cloneVM"

           

          I am just in the process of converting all this to vc 3.5 at which point I can post the results. But as I was using vc3.5 against a vco4.1 db its not really usable for general public yet.

           

          please excuse my naming convention on my actions this was my first workflow so I lacked the forethought of good names :-)

          • 2. Re: How to Deploy Multiple VM's from Template in Orchestrator
            BackOfficeTeam Novice

            Thaks on that Champ

             

            Once you have finished can you please export your Workflow and attach

            Cheers