Hybrid Cloud

Automating VMware Cloud Foundation: Creating a Workload Domain

In part two of our Automating VMware Cloud Foundation Series, we go into detail on the first use case which leverages vRealize Orchestrator (vRO) to deploy a new VCF VI Workload Domain.


In the previous post, I highlighted some of the benefits of Automating VMware Cloud Foundation (VCF) services via the SDDC API. This post will take a deep dive into the first use case which leverages vRealize Orchestrator (vRO) to deploy a new VCF VI Workload Domain.

A typical Virtual Infrastructure (VI) Workload Domain creation from the VCF SDDC Manager involves inputs for all the following steps shown in the screenshot below. 

As you can see, there are multiple fields on many tabs which require manual input. This process can be prone to human inconsistency and error. This also means as an end-user, you need to have privileged account access to the systems, and knowledge of the information required on all of the integrating points that are needed to create a Workload Domain. 


Automating all the above steps and converting it to a consumable Cloud/IT service results in the following (While this is not a defacto standard, it does demonstrate how an IT service can be made simple for end users to consume)

Zooming in on the “Create VCF VI WLD” catalog when a user clicks the “Request” button it will look as simple as this:

As illustrated in the screenshot above, all this would need is a unique “Deployment Name” and “number of hosts for the WLD” and THAT’S ALL!! You really are making it simple for the end user to consume while a lot of complexity is hidden under the hood. 

In reality, this catalog request is running the following vRealize Orchestrator (vRO) workflows shown in the image below:

In summary, a catalog request performs the following tasks via automation:

  • Get the host: Grabs available “Unassigned-Usable” VCF hosts from the VCF inventory
  • Get Existing Domains: Gets the existing domain information and auto generates the naming for the Domain, Datacenter Name, & vCenter DNS name, it also acquires the IP for vCenter, Cluster Name, vDS Port Group Names
  • Create WLD JSON Payload: Builds a JSON specification dynamically which is needed in order for SDDC Manager to perform REST calls to perform the desired automation function
  • Create vROps Adapter: Creates a vRealize Operations adapter instance for newly deployed Workload Domain for monitoring
  • Add a vCenter Server instance: Adds vCenter appliance instance of newly created domain to vRO which will be used for auto-scaling
  • Create Cloud Account: Creates a Cloud Account in vRealize Automation Cloud to onboard VMware Cloud Foundation (VCF) VI Workload Domain vCenter as a cloud endpoint


The following prerequisites are assumed to be available in the environment:

  • At least three (3) unassigned-usable hosts in VCF inventory, because a minimum of three hosts are required to create a new VI Workload Domain
  • Name resolution is important, the IP and hostname for the vSphere components should either be pre-configured in DNS (with forward and reverse records) or use an IPAM solution 


Next up in the Automating VMware Cloud Foundation Series services we will look at Auto-Scaling Workload Domain Clusters.