How To Guy
Don't Get Caught Not Knowing Your vSphere Requirements
Read the forgetful manual. It'll save you some pain later on when troubleshooting vSphere.
You're exempt from reading the manual, right? I am too, but sometimes the consequences can hurt. Recently I was trying to build as compact of a vSphere lab as I could build and, after some frustration, discovered I was attempting to violate the vSphere requirements.
You need to know these requirements for a variety of reasons. I'll explain what I was doing wrong in a bit, but first, let's talk requirements (and it's going to hurt less than getting bit by not knowing them).
What are the vSphere Requirements?
There are really two different sets of requirements you need to know to ensure your vSphere install or upgrade goes as your expectations envision it.
First, there is the VMware Hardware Compatibility Guide (previously called the Hardware Compatibility List, or HCL). This list is for hardware. You need to ensure that your hardware is going to work with vCenter or ESXi and, yes, that includes all pieces of it (NICs, storage, HBAs, etc). The "guide" version of this old list is much easier to use and VMware is currently offering a preview of the new Hardware Compatibility Guide version 2.0 that is really slick (see Fig. 1).
Figure 1. VMware has a preview of its new Hardware Compatibility Guide, version 2.0. (Click image to view larger version.)
Second, you need the requirements of installing vSphere, from a software perspective. The two primary pieces of vSphere that most everyone installs are vCenter and ESXi and you'll find their respective requirements in the VMware vSphere 4.1 Update 1-Documentation.
While you may immediately be told that you don't meet the vSphere hardware or software requirements when you do something (like an ESXi install on a 32-bit server), on the other hand, you may also get vCenter or ESXi installed and, only later (and much more painfully) find out that your NIC is incompatible or, for whatever reason, you have to do a reinstall of vCenter.
In my case, it was the vCenter requirements that bit me.
But I DO Meet the Requirements!
I was trying to install vCenter 4.1 on a Windows 2008 R2 64-bit virtual machine. In my virtual lab, I calculated that I would have two virtual ESXi servers, a virtual vCenter server, and a virtual Windows domain controller and DNS server. That would total 4 virtual machines.
Then, it occurred to me that perhaps I could consolidate the Windows domain controller and vCenter server on the same VM. No, it isn't the best practice, but it would save me one virtual machine and, on my virtual lab system, that could help a lot. The Windows DC/DNS server was already 64-bit, so I theorized that I could just install vCenter into it.
As soon as the install started, I got the message, "the product can only be installed on one of the 64-bit operating systems. ..." As you can tell from Fig. 2, I was actually running a 64-bit OS and it was Windows 2008 R2. This was indeed confusing. Seemingly, I did meet the requirements that it said I didn't meet.
Figure 2. In some instances, you might get an install error telling you that you're trying to run software that's incompatible, when the error really relates to something completely different. (Click image to view larger version.)
After some more testing and research, I finally figured out that this was a slightly erroneous error message. Yes, I did meet the OS requirements but what the vCenter installer was really telling me was that I couldn't install vCenter on a Windows server that has the domain controller role. As it turns out, installing the DC role actually modifies the OS type such that vCenter says it doesn't match the requirements.
I also learned that vCenter installs its own ADAM database that conflicts with the existing Windows AD database. I did find some instructions on how to manually get this to work (which would be unsupported by VMware and would violate best practices) but I will pass on that and stick to a separate VM for vCenter as it just isn't worth the trouble.
Also, you may have thought that you could fool the vCenter installer by installing vCenter first, then making it a domain controller. That won't work either as you'll just get an error that LDAP ports are in use (see this article).
Reading system requirements and release notes can be a pain, but so can struggling with strange error messages. For those that already read all the directions, kudos to you! For those, like me, who like to throw the manual away with the box, I suggest you checkout the new Compatibility Guide 2.0 and read the vSphere release notes. Trust me, neither are as bad as those instructions you get with your kids toys and they just might save you a lot of time.
David Davis is a well-known virtualization and cloud computing expert, author, speaker, and analyst. David’s library of popular video training courses can be found at Pluralsight.com. To contact David about his speaking schedule and his latest project, go to VirtualizationSoftware.com.