Have you ever tried to build a day 2 operation for use with Multi-Machine applications? Well if you have chances are you hit the same issue one of my colleagues Pontus ran in to when he first attempted. Pontus however didn’t give up when he discovered there is no Object type to tie the action to. Instead he dug deeper and deeper until he found a solution. If you find yourself needing this capability or have found yourself banging your head for hours trying to figure this out you should check out Pontus’s post on virtualviking.net. The post can be found at http://virtualviking.net/2015/11/13/day-two-operations-on-multi-machine-blueprints-in-vrealize-automation-6-2/
FIlter vRealize Automation 6.2 has been released. This release although not a Major Version packs a pretty powerful punch. It’s loaded with new features and enhancements that you are all going to want. This release aims to add some features that solve some basic challenges that have been seen by many of you running the product in your production environments. Here is a breakdown of what is new in this release:
- vCloud Air EndPoint with support for Proxy Servers with vCloud Air
- Configurable email tempaltes
- Calendar of Events
- Use IaaS custom properties within Application Services (Application Services)
- Support for CloudFoundry as a deployment target (Application Services)
- vRealize Operations Integration including health badges in vRA Portal.
- XenDesktop 7.x Support
- Support for OpenStack Havana
- Ability to edit Custom Properties during approval time
- Scheduler for reconfigure operations
- Ability to change lease times to indefinite
- Enhanced Event and Audit Logging
- Log Bundle tool
- VM Disk Support for up to 60 disks (Previously 15)
- Improved Rest API
- API for Reservation Management
- Better control for DB log rollover
- Swap Space Custom Property to account for swap space on disk
- Filter Catalog by Business Groups
- Enhanced installation for easier HA deployments
- UI Performance Improvements
This is something that has been long sought after by many. The hardening guide is 38 pages long packed with hardening information for the vRA Appliance, IaaS Server, Identity Appliance, and Application services appliance. This document takes you through the hardening of the SLES 11, PostgresSQL, Windows Host including SQL Server, IIS, and Microsoft .Net. The hardening guide also covers the network security and securing communications between the vRA components.
The network security section of the guide includes a complete list of all the vRA components and the ports/protocols that are used by the component. Even if you are not ready to start creating a fully hardened deployment it’s worth taking a look at the guide and becoming familiar with the the communications between the different components.
I am frequently get asked “Should we deploy the vRealize Automation Identity Appliance or should we connect vRealize to the vCenter SSO server”? The answer to this really depends on what is important to you. There are pro’s and con’s both scenarios. Let’s look at the vRealize Identity appliance first.
vRealize Identity Appliance
The major benefit to running the vRealize Identiy appliance is that it is released as part of the vRealize Automation code stream. This is important because if new features are released in vRealize Automation that have dependencies on specific support from the SSO server the Identity Appliance will be updated with the needed support. This will allow you upgrade when a new version is released without having to worry about external dependencies.
The downside of running the vRealize Identity Appliance is the extra administrative overhead, especially of you are deploying an HA environment. It’s extra servers to support, backup, and maintain on top of the vRA Appliance, IaasS Server, and any deployed for DEM’s/Agents. Not a huge deal, but it’s something to consider.
Have you ever needed more control over what custom properties get assigned to specific component machines of a multi-machine blueprint, or want to use the same component blueprints for all component machine of a multi-machine blueprint? The Ultimate Multi-Machine Blueprint Extension aims to help with that.
The Ultimate Multi-Machine Blueprint Extension allows you to utilize the same source component blueprint for multiple component machines while at the same time controlling which custom propertied get assigned to each of the components. This allows you customize each of them differently during deployment.
This extension works well with the Custom Hostname and the Custom vCenter Folders extension to round out the use of Multi-Machine Blueprints.
Example Use Cases:
- Use a single machine blueprint for all components of a multi-tiered multi-machine blueprint and customize the name of each component.
- Use a single machine blueprint for all components of a multi-tiered multi-machine blueprint and customize the guest agent actions of each component machine.
- Use a single machine blueprint for all components of a multi-tiered multi-machine blueprint and override the template for each component to deploy from a different source vCenter template for each component.
The goal of this extension is to limit blueprint sprawl and leverage the multi-machine construct to customize the component machines and rely less on customizing the single machine blueprints making them more re-usable.
This extension was designed and built as a collective effort by Tom Bonanno and Sid Smith. If you have any feedback please let us know.
- Define which component machines to apply custom properties to in a multi-machine blueprint.
- Utilize a singular blueprint for all component machines in a multi-machine blueprint.
- Fixed bug that caused properties with Multiple periods not to be processed properly.
- Initial Release
Remember we have performed a large amount of testing, but this is a v1.0 extension so please test and let us know if you find any issues.
Are you getting ready for the pending release of vRealize Automation 6.2 next week? If so you’ll want to make your first stop GitHub to download Brian Graf’svCAC62-PreReq-Automation.ps1 script. If you are not familiar with Brian’s PreREq automation scrip, it is a script that configures all of the needed requirements ion your Windows IaaS server prior to installing vCAC. Brian did a fantastic job with the creation of this, it is a must have if you are installing vCAC from scratch.
In this version he updated the script to account for vCAC 6.2 Pre-Requisites so head on over to https://github.com/vtagion/Scripts/blob/master/vCAC62-PreReq-Automation.ps1 to download the script and get familiar with it to be prepared for the pendinf release.
For those of you who have not seen this yet, it is a must have for anyone writing vCO workflows for vCAC. VMware’s own Dan Linsey build a set of pre-built workflows to help aid you in your own development efforts. The toolkit includes workflows for performing Create, Read, Update, & Delete Operations for vCAC custom properties for more than just virtual machine objects. IT includes support for the following:
- Build Profiles
- Business Groups
- Property Dictionary
- Virtual Machines
- and more
Top check out this incredibly useful toolkit head over to the VMware Communities and download it.
CloudUtil is a vRA(vCAC) repository management tool that is part of the vRA Designer. It actually is what you are launching when you run the designer. When run without parameters it launches the GUI Designer. It however has other functions that can prove useful from time to time.
For starters if you don’t have the Designer Installed you can get it by going to https://FQDNofvCACAppliance:5480 –> IaaS Install –> vCloud Automation Center Designer. When you install it make sure you put in the IaaS host, NOT the vCAC appliance hostname.
I frequently get asked how can workflow revisions be removed from the designer. The answer is they can, but you need a Development Kit license to do so with CloudUtil. Working in the designer you will come to find out that the revisions add up fast and before you know it you could have hundreds. I’m going to walk you through a way to remove the revisions without a Development License for CloudUtil.
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 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.
vCAC by default will place all provisioned machines into a vCenter folder named VRM. You can override this using the custom property VMware.VirtualCenter.Folder to tell vCAC where to place the provisioned machine. While this is great that you can tell vCAC where to place the provisioned machine it isn’t very flexible. I built the Custom vCenter Folder Extension to fix that and make folder placement as flexible as you need it to be. VM folder placement is just about organizing virtual machines. It provides a way to control access to these machines through vCenter as well. Many organizations control permissions to these environments using these folders and need to be able to place any machine where they need for these purposes.
Multi-Machine blueprints is another area where this extension adds value. You can control placement of virtual machines by defining the VMware.VirtualCenter.Folder property on a Multi-Machine blueprint folder, but all VM’s for all Multi-Machine apps are placed in the same folder creating confusion as to which VM’s belong to which Multi-Machine application. Now if you add NSX into the mix and you have Multi-Machine components spread all over the place with no way to easily determine which VM’s as well as NSX Edges go to which application.
When used with Multi-Machine blueprints the Custom vCEnter Folder Extension can place all component Virtual Machines as well as Deployed NSX Edge appliances in a folder named after the Multi-Machine application if you desire making it easy to identify related components of an application. This also allows you to easily permission vCenter access to the components of the application if necessary.
- Dynamic Folder Names based on custom naming scheme
- Multi-Machine folder placement including NSX Edge applince
- Automatic Multi-Machine folder removal when Multi-Machine app is destroyed