Thursday, January 30, 2014

Using vCAC Resource Actions

vCloud Automation Center 6.0 includes a new and easier way to extend the machine action menus so that you can add just about any type of operation to the list.  As you can see here, I've added an action to mount an ISO to a virtual CD drive on a VM.



What's involved?  Well, for starters you will need to have Advanced Services configured within you vCAC install.  If you have already set this up you can skip to CREATE A RESOURCE ACTION.

SETTING UP ADVANCED SERVICES FOR VCAC


Advanced Services (AS) take advantage of the tight integration of vCenter Orchestrator (vCO) with vCAC.  The vCAC appliance includes an instance of vCO embedded in the OS so you don't have to worry about installing it. But you do need to do some quick and easy configurations.

  First go to Administration > Advanced Services and make sure your embedded (default) vCO instance is running (troubleshooting this is beyond the scope of this post).


Next, you will need to configure the endpoints you wish to use with AS.  For example, if you want to manipulate your vSphere environment then you will need to set up your vCenter as an AS endpoint.  Or a Microsoft AD domain controller to manipulate AD objects.

From the Administration > Endpoints click on the green plus sign to create a new endpoint.


In the Add Endpoint workflow, you will be able to select from the available plug-ins installed in the embedded vCO.  For this example we will be using the vCenter Server plug-in.  Select it from the drop down list and click Next.



Provide a friendly name and description.... and click Next.


Now you will need to enter the vCenter server information... first the vCenter host name or IP and then click the Next> button...


...then your user name and password for vCenter.


Then click "Add" and you'll have a vCenter endpoint.


Now that you have your endpoint configured, you will need to add the Service Architect role to your login so that you the Advanced Services tab will be accessible.  From Administration > Users use the search box to find your login (just type your name and hit Enter).  Then you can edit your roles.


Select "Service Architect" and then "Update"


You will need to log out and back in to see the Advanced Services tab.  I just noticed that my previous screen shots show the tab already active - too lazy to go back and re-snap, so pretend they aren't there!

CREATE A RESOURCE ACTION

Now, I'm going to do a bit of a cooking show here (you know, where we mix the ingredients but pull a previously baked pie out of the oven).  For the most part, for basic purposes, the vCO workflows will work nicely.  However, I had to customize the workflow I will use for this next section.  However, I will provide the workflow so that you can download it and import into your vCO if you wish to use this example in your environment.  To do so, first download the file HERE and then follow these instructions.

From Administration > Advanced Services > Import workflow packages you will browse to the download above (file name is "dias.mylab.mountiso.package") and click Import Package.


Now go to Advanced Services > Resource Actions and click the green plus icon to add a resource action.


In the workflow selection tab, navigate to and select the "Mount ISO to CD-ROM drive" workflow you imported from the package earlier.  Click Next>


You don't need to change anything here, but for instructional purposes this is where you map vCAC resource types to vCO input parameters.  For example the screen shot shows that the vCAC resource type IaaS VC VirtualMachine is supplied to the vCO "vm" input parameter and converted to vCO type VC:VirtualMachine.  This is automatically detected for you - a great feature in vCAC 6.0 and vCO integration!


Clicking Next > brings us to the Details tab where we can modify the action name and description.  Default values are pulled from the vCO workflow.  Edit to your needs and click Next >


The Form designer is next.  You can spend some time here adjusting the form field names and types.  But generally speaking all you need to do is a little clean up.  First, we will create a list of selections for the ISO file so the user can select from the appropriate images.  If you click on the isoFile field section, and then click the pencil icon...


...you will be in the field editor.  By default the field is a text entry, but since we don't want the user to have to figure out the ISO path on the vSphere datastore, we will create a radio button selection list.  So, change the "Type" to Radio Button Group as show below.


Now we just need to supply the values for the list.  The path for our ISO, as you can see from the description field in the previous screen shot is [DATASTORE]folder/image.iso - so I'll add the path for the first image for the "Value" and then a friendly name, like "MS SQL 2008R2" for the "Label" and then click the green plus icon.


And I'll add another just so we have multiple choices....




Click the Submit button when done adding images to the list, and note that the isoFile field is now a radio button selection list!  Click "Add" to finish creating your new Resource Action.


Just as with other catalog items, you will need to publish the Resource Action so it can be entitled....


...add the new Resource Action to your entitlements....


... and the action will now show up for any deployed machines (under the same entitlement of course) as in the first image of this post!

1 comment: