CentOS7 Customization needs vCenter Server 5.5 U3

Holla! It’s been some time that I wrote on my blog, I am happy to share my recent experience with one of the customer who runs a private cloud built out of the vCloud Suite.

The customer is running a 6.2 vRealize Automation built on top of vCenter Server 5.5 U2d and ESXi 5.5U2. The R&D Team immediately needed a couple of CentOS7 machines to run their builds, however the current catalog did not have it.

The Cloud Infrastructure and Management  team curated a CentOS7 machine and built it as per their organizational standards and had VMware Tools installed, created a template and finally got that added as a catalog item on the vRA Catalog list.

Here comes the situation: VMs provisioned by the vRA portal were being allocated IP Addresses from the Network Profiles, however when we logged into those CentOS7 machines, we did not see any IPv4 assigned to it(it showed a IPv6). Neither did we see the IP Address on the Summary page of the VM on the vSphere Web Client/vSphere Client.

We were already running CentOS6.6/RHEL6/RHEL7 as catalog items and they were just running perfectly fine! What could be wrong with CentOS7? After all we were using the same Customization Specification for all Linux based machines!!

Ok. So lets do a recap – vRA provisioned the machine, it allocated an IP from the Network Profile, it also initiated a Customize Machine workflow to get it customized and it was powered on. We verified this by looking at the Tasks and Events of that machine as well, all of them were Completed successfully.

The customization tasks showed us a line stating that “For details, reference the log file /var/log/vmware-imc/toolsDeployPkg.log in the guest OS”

We looked into the file and we see that the IP Address field was blank in the toolsDeploypkg.log file which hinted us that probably there is something wrong with the Guest Customization Specification. But hey, how come we were able to successfully provision other VMs out of the same spec!

This made us turn to our favourite messiah – Google!! and we stumbled upon https://lonesysadmin.net/2015/01/06/centos-7-refusing-vmware-vsphere-guest-os-customizations/ by @plankers .

The trick was to fool the customization spec to believe that /etc/redhat-release stated “Red Hat Enterprise Linux Server release 7.0 (Maipo)”

Once this was done, the trick worked!!!

Only after this we saw this really important document – Guest OS Customization Support Matrix at http://partnerweb.vmware.com/programs/guestOS/guest-os-customization-matrix.pdf which stated the obvious – CentOS7 requires vCenter Server to be at the 5.5 Update 3 Build, which we were not.

The above is a hack(definitely not supported by VMware Support), I would highly recommend you to get the Upgrade done.

However in my customer’s case, where the Upgrade had a lot of dependencies, this was a quick and dirty way to get CentOS7 machines to the R&D folks, which made them happy!!

Thanks to @plankers.

Lessons learned:

  1. Pre-requisites – Check compatibility guides, in this case the GOS Customization Support Matrix.
  2. Search better in Google! 😉





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 )

Google+ photo

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

Twitter picture

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

Facebook photo

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


Connecting to %s