What options are available in vCO5.1 workflows to know about and work with vm's that require to be shudown and restart in a particular order?
Is some custom configuration required at the vm level to be able to know vm B needs to startup before vm C and be able to read this in a workflow?
The best way to find out about what script need to be written to update VM boot order is to use Onyx. You can then change it in vCenter UI and see what code gets generated for vCO.
Please check these articles:
Thanks I'll check that out it looks like a real time safer but won't that just help me find the vCO code to shutdwn a vm? I was more wondering about how to handle the logic about knowing which to shutdown first and correspendly which to start first
The autostart order set on the hosts might be worth looking at but how would I handle the case where the vm's are not on the same host?
Is there a way to link vm's in a dependency so that if vm B is issued with a shutdown the system knows to take vm C down first and not have to worry about the logic at the wokflow level at all?
I was thinking to capture the code to set the VM boot order so you can use this to read it from vCO and shut the VM down in the right order.
You can also store this information indepedently from vCenter. For this vCO has custom propersties you can set on any object using Server.setCustomProperty();
Looks like it involves VcHostAutoStartManagerConfig API Reference and powerinfo API Reference if changing the startup order @ host level as long as you're not in a HA cluster
I remembered vApps support start order as well VcVAppConfigSpec API Reference and VcVAppEntityConfigInfo API Reference which sidesteps the issue of startup sequence for vm's at the workflow level but might add complexity elsewhere dealing wiht mixes of vm's and vApps
Other option would be as you say to use custom properties to set a start order priority for every vm across the environment.
My coding/scripting skills aren't at a level to phrase this correctly but would it be possible to re-use existing objects, attributes, scripting classes to reproduce similar features with startup order, startup delay, stop order, stop delay and stop action but store the values in custom properties?