Problem
The Custom Naming machineRequested workflow runs and will fail to generate a unique name with an error similar to:
exception: 'Exiting Custom Naming... a unique Hostname was not able to be generated. The previous generated hostname was '01', the newly generated hostname is '01'. Hostnames must be unique, please check the log file and verify the Hostname rendered as expected.
In older versions of the module you may see the workflow runs until it times out with an error similar to:
Event Broker Subscriber error 10030 - {'com.vmware.csp.core.designer.service@event.subscription.workflow.execution.timeout}
Cause
The Hostname being generated only contains the sequence number and no other characters. This is caused when none of the templated values expected in the Naming Standard are set or are null.
For example:
The Custom Naming Standard template looks like this:
{{naming.OS}}{{{naming.Environment}}{{naming.AppType}}{{sequence.seqProfile}}
If the values for properties for naming.OS, naming.Environment and naming.AppType are not provided, you end up with a Hostname that consists only of the sequence number, e.g. 01. This is not a valid hostname, and the workflow will fail. These values are typically set using vRA property definitions where the requestor selects the value from a dropdown menu, or they could be set on other elements in vRA, such as in the Custom Properties on things like Reservations, Business Groups, Endpoints, etc.
Affected Versions
All Versions
Workaround or Solution
Overview
Make sure to set all properties expected in your Naming Standard and Naming Sequence profiles.
A few items to check (If and where applicable) that could help resolve this error for you or help avoid the issue in the future..
Set your property definition to required
This could be an easy fix. A user has deployed a VM and received the aforementioned error. But they forgot to select an item from a drop down OR type in text in a text field. One way to help make sure this is avoided is by making the field a required field.
- Making any drop down / text boxes used in your property definition to form part of the Hostname as Required = Yes.
- If set to Required, when a blueprint is deployed and the field is not completed, it will prompt to have that field completed.
- All required fields on the blueprint will be highlighted in red
Confirm the values you are using in your custom naming are values that exist in your payload.
The following is a simple check to see what values are being passed into your VM's payload in vRO. This will help determine if they are coming through blank. This could point out a spelling error, or a value that is not automatically populating due to an error in some template text or even if you are using the property toolkit to dynamically define the hostname, could help point out simple issues.
- Check for any spelling errors
- Check that the named value in your custom naming matches the named value in your blueprint
- For a property definition it must match the Name and not the Label
- Check in your payload for the custom naming machineRequest workflow contains the values you are expecting
Additional information
SovLabs Custom Naming : http://docs.sovlabs.com/latest/vRA/7.6/modules/platform-extensions/custom-naming/
SovLabs Template Engine : http://docs.sovlabs.com/latest/vRA/7.6/framework/sovlabs-template-engine/basics/intro/
0 Comments