This is a short list of myths, failures and issues I faced while working with VMware. I think that everyone working with virtualization should know these so i want to share my experiences:

VM Memory Limits

This is one of my favorites and most devastating mistake and I’ve seen it twice. It all started with an Administrator who was totally new to virtualization. He was afraid that a virtual machine might have a problem which could affect the physical host’s entire memory. With that in mind he created a virtual machine with 4GB of virtual memory and gave it a memory limit of 4 GB. Nothing bad at this point but the memory limit was unnecessary as the virtual machine could (besides overhead) never affect more memory than it has been given. A few month later, the virtual machine required more memory so he changed the memory to 8 GB without changing the limit. This change forced the ESX host to swap out the additional 4GB of memory to the datastore which slowed down both – the limited virtual machine and the other virtual machines in the datastore nevertheless that there was enough physical memory available.

Be aware with memory limits and always keep in mind that there could be a wrong intended limit.

Resource Pools and Shares

A common misuse of resource pools is to create 3 Pools with High, Medium and Low default shares and sort virtual machines based on their importance. This usually leads to plenty of virtual machines in the High Pool and only a few inside the Low pool. The problem is that it is does not matter how many virtual machines are inside the pool, they have to share the same amount of resources. That imbalance means in effect that your unimportant virtual machines in the Low pool might have more performance than your production.

Chris Wahl and Duncan Epping have written great posts about this topic:

Understanding Resource Pools in VMware vSphere

The Resource Pool Priority-Pie Paradox

Resource Pools and Shares

Disk Format (Thin/Thick/Eager) affects performance

Some time ago there was a clear statement: Thin provisioning is bad, use thick provisioned instead. And when you want to have really great performance, you have to go eagerzeroed. When I got asked which format to use today, there is only one correct answer: It depends!

When you have a VAAI capable storage, it is doesn’t matter which disk format you choose. Thin provisioning can save you a lot of money but there is probably a risk that your datastore can run out of space. If you are able to handle this, go thin provisioning.

There is a great post about VM Performance by Ravi Venkat:

VM Performance on Flash Part 2: Thin vs. Thick Provisioning – Does it Matter?

“HA uses vMotion to restart VMs”

I have no idea how often i have heard this phrase. Of course, this is totally wrong. VMware HA does not need vMotion to restart virtual machines. vMotion is a technique that allows running virtual machines to be migrated to another physical host. There is no way to migrate a virtual machine in a running state after the physical host has crashed.

“VMware Tools are not required on Linux Guests”

It seems to be a common practice to forget the VMware Tools installation on Linux virtual machines. I reckon that this misbelief is caused by VMware Workstation where you usually install VMware Tools only for better Mouse and Display performance on Windows boxes. But with ESX there is no excuse: Install VMware Tools on every virtual machine!

To many virtual CPUs

This is one of the most common performance issues. Virtual machines are given too many virtual CPUs to be on the safe side. You have to consider that if you have a virtual machine with 4 vCPU, running an application that utilizes only one core, the 3 idle cores have to be scheduled to.

My advice is to give a virtual machine only a minimum amount of vCPU and add additional vCPUs later, when required.

There is a great Whitepaper about the VMware CPU Scheduler.

Admission Control does not prevent from overprovisioning

Many Administrators think that they can enable Admission Control to prevent Clusters from getting overprovisioned and slow. Admission Control does not work like this by default as it only considers reserved resources. When you have no virtual machines with reservations, you can power on a huge amount of virtual machines as per default only the overhead is reserved.

Check configuration maximums and unsupported hardware

Simple fact and often ignored. When you want to get support, you have to comply with the VMware HCL and configuration maximums. Unsupported Hardware does not state that you can’t install the Hypervisor. It just states that you don’t get technical support when you have a problem.

VMware Compatibility Guide (HCL)

VMware vSphere ESX and vCenter Configuration Maximums

Not everyone who needs virtual desktops requires VDI

Sometimes I have customers requiring a few virtual desktops and thus want to deploy VMware View. In many cases VMware View is much to overkill and what the customer really needs is a simple virtual Windows XP installation running on an ESXi Host.

You should ask your customers what they want to do, not what they think they need.

Always set vSphere Client and vCenter Server language to english

Did you ever try to google a solution for a non-english error message? This can be pain…

How to change vCenter Server language

Changing the language used by vSphere Client