vRA & SovLabs: Custom Naming module

My previous post showed how to run through all the pre-requisites, installation and licensing of the SovLabs modules.  Now it is time to configure it and I am starting off with the Custom Naming module.

This you might think is not important, but you always need to specify a name for a computer and the more descriptive this is, the easier it is to identify it without having to reference some type of database, spreadsheet or your own custom notes.

The problem with most automated solutions is that it provides a very basic custom naming solution out of the box with some characters for the pre-fix and numbers for post-fix.

If you have a complex Company naming standing then this will not work for you.  SovLabs custom naming modules makes use of the SovLabs template engine  which allows for static text in combination with dynamic content such as vRA custom properties and/or custom logic. Another cool feature is that you can assign different naming standards to your blueprint, so your departments are not force to use the same naming convention.  There are a lot of other great features to justify this module and they can be reviewed here.

My naming convention example:


L = location

T = Type

  • (p)hysical
  • (v)irtual

O = OS

  • (w)indows
  • (l)inux

E  = Environment  (in brackets is what will be used)

  • (pr)o(d)uction
  • (dev)elopment
  • (q)uality (a)ssurance
  • (st)a(g)e

A = Application

  • Various 3 character code.  This could either be provided to user in dropdown during request or can be a custom text field. There are many options available here.

## = numbers sequence

  • Begins with 01 and is specific to each combination of identifying prefixes.

For all these identifiers i am going to create a custom property and assign it in vRA.

  • SovLabs.Naming.Location           -> Assigned to Endpoint
  • SovLabs.Naming.Type                  -> Assigned to Endpoint
  • SovLabs.Naming.OS                      -> Assigned to VM object in Blueprint
  • SovLabs.Naming.Environment  -> Assigned to Business group
  • SovLabs.Naming.Application     -> Assigned to VM object in Blueprint


  1. First off we need to define our Naming Sequence
    1. (This can be used in one or more Naming Standards)
    2. Login to vRA tenant
    3. Catalog -> SovLabs vRA Extensibility Modules
    4. Screen Shot 2017-04-18 at 11.53.03 AM.png
    5. Click Request button on “Add naming sequence”
    6. Screen Shot 2017-04-18 at 11.54.06 AM.png
    7. Enter Configuration Label
      • Only AlphaNumeric characters, no spaces or special characters except: – and _
    8. Select sequence type
      • Mostly you will just pick Decimal
    9. Reuse sequence values = no
      • This you would select yes if you want to use the sequence number again once the computer is deleted.
    10. Max sequence length = 2
    11. Initial value = 01
    12. Sequence padding = 0
    13. Unique key
      • I want to use all the variables to make up the unique key.
      • {{SovLabs.Naming.Location}}{{SovLabs.Naming.Type | substring: 0,1}}-{{SovLabs.Naming.OS | substring: 0,1}}{{SovLabs.Naming.Environment}}{{SovLabs.Naming.Application}}
    14. Click Submit
  2. Now we need to define our Naming Standard
    1. Login to vRA tenant
    2. Catalog -> SovLabs vRA Extensibility Modules
    3. Screen Shot 2017-04-18 at 11.53.03 AM.png
    4. Click Request on Add Naming Standard – SovLabs Module
    5. Screen Shot 2017-04-18 at 1.34.05 PM.png
    6. Enter the Configuration label
      • Only AlphaNumeric characters, no spaces or special characters except: – and _
    7. Select the naming sequence
      • The only option available right now is the one I just created
    8. Template
      • This is based on the custom property names I created for my standard naming convention example.
      • The template must include the sequence(s):  {{sequence.sequencename}}
      • {{SovLabs.Naming.Location}}{{SovLabs.Naming.Type | substring: 0,1}}-{{SovLabs.Naming.OS | substring: 0,1}}{{SovLabs.Naming.Environment}}{{SovLabs.Naming.Application}}{{sequence.standard_2_digit}}

    9. Screen Shot 2017-04-18 at 1.54.00 PM.png
    10. Click Submit

You can review, update or delete your configuration under your catalog items.

  • Select Items -> SovLabs Extensibility Modules
  • Select the module name in left menu
  • Highlight the item
  • Click Actions -> Select Delete or Update


Enable the module:

Now we need to enable the custom properties module on our blueprint

  1. Click on Design -> Blueprint
  2. Edit Blueprint
  3. Click on the blueprint vSphere machine on the Design Canvas.
  4. Click on properties tab
  5. In the properties group section click +Add
  6. Screen Shot 2017-04-18 at 1.55.56 PM.png
  7. Check the box for:
    • SovLabs-EnableLifecycleStubs
    • Starts with SovLabs-NamingStandard- for single machine scenarios
    • Starts with SovLabs-NamingStandardMultiMachineContainer for multi-machine container scenarios
  8. Click OK
  9. Repeat these steps for all blueprints that should use this custom naming.


Now deploy a VM and watch the magic happen. Effortless, predictable, consistent and best of all no manual input of trying to figure out a name.

One thought on “vRA & SovLabs: Custom Naming module

  1. Pingback: vRA & SovLabs: BIG-IP F5 load balancer | JohannStander

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s