DefinIT

What’s in my vRA7 EBS Payloads?

| 30/03/2016 | Tags: , , , , , , ,

vRAAs I discussed in my previous post, vRA7 Event Broker integration is a big change from previous version of vRA – we no longer receive the same objects that used to be passed from vCAC/vRA to vCO. Instead we receive the mysterious “payload” – a properties object.

I wanted to create a workflow that I could enable to log all of the keys, values and types of the properties object for each stage of the vRA7 MachineProvisioning workflows, and create a reference for myself on the payload for each stage.

To do this I created a new workflow “debugProperties” and added an input variable called “payload”, type Properties. Next I added a single scriptable task and cycled through the properties. Some of the properties’ values are actually other properties objects, so there’s a function to test the type and iterate through if required.

You can download the debugProperties¬†workflow¬†here. (more…)

vRealize Orchestrator (vRO/vCO) – Troubleshooting SOAP operations

vRealize OrchestratorRecently, I’ve had a bit of a SOAP baptism of fire – the project I am working on makes hundreds of SOAP calls to multiple SOAP APIs on multiple hosts. During this time I’ve encountered some common and rare problems and troubleshooting them seems to be a bit of a black art, if the number of results in Google is any measure.

To demonstrate some of these troubleshooting methods I will use a global weather SOAP service, http://www.webservicex.com/globalweather.asmx?WSDL. I’ve added the web service to vRO using the “Add a SOAP host” workflow, and then used the “Generate a new workflow from a SOAP operation” workflow to create a new workflow: GetWeather. This simple workflow runs successfully:

image (more…)

vRealize Orchestrator (vRO/vCO) and vCloud Director – fixing bugs in "Add a vDC"

vRealize OrchestratorWhen you are using a VMware orchestration platform with an official VMware plugin to manage a VMware product, you don’t really expect to have to fix the out-of-the-box workflows. However, during some testing of some workflows with a client the other day we ran into a couple of issues with the vCloud Director plugin workflows.

Software versions used

  • vCloud Director 5.5.1 (appliance for development) and 5.5.2 (production deployment)
  • vRealize Orchestrator Appliance 5.5.2.1
  • vCloud Director plugin 5.5.1.2

CPU allocations are incorrect for both "Add a VDC"

When you provide the CPU allocation model properties for the Allocation Pool model the first problem is decrypting the naming – it doesn’t match the names in the vCloud Director interface!

The "CPU (GHz)" value is the vCPU speed, and the "CPU Quota (GHz)" value is the CPU allocation

image

(more…)

Performance tweak – increasing Max Heap Size for the vRealize Orchestrator (vRO/vCO) Client

vRealize Orchestrator[Update Dec 2016: An updated article for vRO 7.x is available here]

I’m developing some very large, very complicated workflows for vRealize Orchestrator (vRO/vCO), and as it’s a Java based application it will probably come as no surprise to many that the performance of the client drops off sharply as the client’s RAM usage creeps up.

When working on some of the larger workflows, or after long sessions and heavy clipboard use, the client would become (even more) sluggish and in some cases would freeze entirely. This is particularly annoying because the vRO client has a habit of forcing itself on top of other applications – for instance Task Manager.

Exhibit 1 – a large workflow!

image (more…)

3DES Password Based Encryption with vRealize Orchestrator (vRO/vCO)

vRealize OrchestratorA requirement that often arises in large, complex orchestration projects is the need to encrypt and decrypt information. One such requirement recently specified triple DES password based encryption as the standard, which led me through a lot of Google searches to CryptoJS.

CryptoJS is a growing collection of standard and secure cryptographic algorithms implemented in JavaScript using best practices and patterns. They are fast, and they have a consistent and simple interface.

Importantly for me, the collection includes a 3DES library. Unfortunately, this is where I stalled for a long time – I could not manage to get the CryptoJS library to work, and it became clear that it was likely to be beyond my skill set. Falling back on Google with a vengeance, I found this VMware Communities post – CryptoJS Hashers and Cyphers, and in it a package created by Dan Linsley (@danlinsley) which contained an encrypt and decrypt action for 3DES, based on CryptoJS. The package also contains actions for generating random initialisation vectors and base64 encoding. In short, exactly what I needed!

Based on this excellent work, I created two workflows, Encrypt-3DESPassword and Decrypt-3DESPassword. (more…)

Generating a secure random password with vRealize Orchestrator (vRO/vCO)

vRealize OrchestratorIt’s a fairly common requirement when creating a new user to assign a randomly generated password, so during a recent engagement I wrote a little password generator to do that. I wanted to be able to chose whether special characters were used, and the length of the password – typically if the password doesn’t used special characters I would increase the length significantly!

Characters should be randomly picked from:

  • a-z
  • A-Z
  • 0-9
  • (optional) ASCII special characters

(more…)

vRealize Orchestrator (vCO) Multi-node Plug-in use case: Remote Site Selection and Execution

vRealize OrchestratorOne of the use cases I’ve been working on with a customer is based on the vRO/vCO multi-node plug-in and involves the master vRO/vCO node calling proxy workflows based on a parameter – in this case the target site. As you can see from this very simple diagram, a Cloud Management System (CMS) calls a workflow on the Master node, which then executes a proxy workflow on the correct site. The trick is getting the Master Orchestrator node to pick the right proxy workflow.

image (more…)

Configuring and Using vRealize Orchestrator (vCO/vRO) Multi-node plugin

vCenter Orchestrator (vCO)To quote the release notes for the latest version of vCO/vRO Multi-node Plugin:

The VMware vCenter Orchestrator Multi-Node Plug-In allows organizations to manage environments with multiple vCenter Orchestrator server instances.

As organizations increase their level of automation, they often find the need to deploy multiple Orchestrator instances. With the VMware vCenter Orchestrator Multi-Node Plug-In, administrators have a more efficient way to manage multiple Orchestrator instances from a central point. The plug-in allows administrators to log in to a master Orchestrator server to view the inventories and workflows of remote Orchestrator servers, and to trigger workflows remotely.

The Multi-Node plug-in also makes it easier for administrators to manage workflow packages. From a single Orchestrator server, administrators can push packages to one or more remote Orchestrator servers and ensure that all instances are in sync with the same workflow versions.

Installation of the plugin is a really simple affair, just download and import the plugin file on your “master” node, then add the “slave” vCO servers to the inventory. (more…)

Configuring a vRO/vCAC PowerShell host with Basic Authentication

vCenter Orchestrator (vCO)To add a Windows Server 2012 R2 PowerShell host using Basic Authentication only, follow these steps.

Ensure that the Windows Firewall service is running (it doesn’t matter if the firewall is enabled or disabled, it should always be running! That’s a general rule, not just for this).

On the PowerShell host open a command prompt (*NOT* PowerShell console) as administrator and run the quickconfig command – you can re-run it if it’s already been run – but make sure it has.

winrm quickconfig

Enable basic authentication:

winrm set winrm/config/service/auth @{Basic="true"}

image

(more…)