vRealize Automation – vCAC 6.1 – Building vCO workflows for Multi-Machine Blueprints

It seem that there is a bit of confusion around using vCO workflows with multi-machine blueprints.  Before I discuss how to build vCO workflows for multi-machine blueprints I want to discuss the differences between single machine and multi-machine blueprints and how they relate to each other.

Single Machine Blueprints

Single machine blueprints are pretty straight forward.  When a custom property is defined on a single machine blueprint it only affects that machine.  Makes sense right?  When we trigger a vCO workflow to run during a state transition of a single machine it interacts with only that machine.  It is important to be mind full of the vCO workflows that are assigned to single machine blueprints that may be used as a component machine of a multi-machine blueprint.

Multi-Machine Blueprints

Multi-Machine blueprints are extremely versatile allowing single machine blueprints to be grouped together for and requested in a single deployment.  They are so versatile that you can add single machine blueprints of different types that are possible deployed to different types of Endpoint and across geographies.  This however also makes them somewhat complex requiring you to be careful and thoughtful as to how you structure custom properties and the vCO workflows that you may choose to run on them.

Custom properties that are defined at the Multi-Machine blueprint are passed down to the component virtual machines that are a part of them.  This can be very useful, but can also be a bit dangerous.  Take the hostname property.  If we define a hostname using this property at the Multi-Machine level it will cause chaos during the deployment and cause the deployment to fail because all machine will inherit the property and the value and ultimately have the same name.

This is the case with any different properties when used at the multi-machine level.  You also need to be mindful of the effect of that property across different platform, provisioning types as well as geographies.  This becomes even more complicated when executing state transition workflows that run vCO workflows.  If you attach a workflow to the multi-machine it will in turn become attached to every component machine as well.  This can be very useful if you want to execute the workflow on every component machine, however if that workflow is utilizing an entity that doesn’t exists at the parent multi-machine level it will again cause chaos for your deployment.  The good news is it doesn’t have to as long as the vCO workflows are built to support the intended result.

In the following walk-through I will be using the Custom vCenter Folders Extension to demonstrate what you can do to account for the Multi-Machine and Single Machine aspects of vCO workflows.

Continue reading “vRealize Automation – vCAC 6.1 – Building vCO workflows for Multi-Machine Blueprints”

vRealize Automation – vCAC 6.1 / NSX 6.1 – Creating a Multi-Machine Blueprint w/NSX Routed Gateway Support

The out of the box vCAC –> NSX integration requires the use of Multi-Machine blueprints.  Multi-Machine blueprints are basically a blueprint that pulls together one of more single-machine blueprint.  In order to create a three tier web application like the one I will be walking through we will need three standard blueprints to utilize within our Multi-Machine blueprint.  In the below example will be configuring a Multi-Machine blueprint that will deploy an NSX Edge Gateway on to it’s own reservation and then deploy three different blueprints each onto a different network specific to it’s tier.  Example below:

image

I will be walking through how to create a Multi-Machine blueprint that will build out the equivalent of the above diagrams Multi-Machine App.

Continue reading “vRealize Automation – vCAC 6.1 / NSX 6.1 – Creating a Multi-Machine Blueprint w/NSX Routed Gateway Support”

VMware NSX 6.1 & vCAC 6.1 – Connecting NSX to vCAC

Now that we have installed and configured NSX I think it’s time we connected it to vCAC.  In version 6.1 there are some changes to the integration with NSX and vCAC.  When I say changes I should say there are some great new changes.  The integration now utilizes a vCO Plug-in that handles all the interactions between NSX and vCAC.

Benefits of vCO plug-in for NSX to vCAC integration

The benefits of the vCO plug-in are huge.  These workflows that now exist in vCO are there for you to use in your own customization giving you the ability to interact with NSX in a custom way without having to code against it’s api.  Personally I await the day for all integrations to be this way.

As most of you know the vCAC appliance has vCO built in and the built in vCO server already has the NSX plug-in installed for.  If you want to use an external vCO you will have to deploy the plug-in to that appliance before trying to connect vCAC to NSX.

Continue reading “VMware NSX 6.1 & vCAC 6.1 – Connecting NSX to vCAC”

vRealize Automation – vCAC 6.1 – Adding a vCO Endpoint

Item 2 updated for vRA 7

vCO Endpoints are used by vCAC when vCAC needs to execute vCO workflows.  These can be out of the box workflows such as the NSX workflows, or they can be workflows that you created and want vCAC to execute as part of a deployment state transitions such as during building machine, machine provisioned, machine destroyed or various other master workflow states.  vCAC cannot execute these workflows without first having a vCO endpoint to which it can query and call to execute.  vCAC can pass machine custom properties and other information through to vCO as part of the execution to parameterize the workflows.

Continue reading “vRealize Automation – vCAC 6.1 – Adding a vCO Endpoint”