Reservations of VMs per host

Reservations are the devil.

The more you deep dive into reservations and resource pools the more you don’t want to touch them.

I wont go into great detail about the dangers as vFrank, Eric Sloof and Duncan Epping (to name but a few) have been telling us for years.

Basically unless you REALLY know what you are doing and you have a REALLY good reason to use them… Don’t.

However, back in the real world reservations are still being demanded by some vendors. Most notably anything to do with VOIP. Which is understandable as you don’t want these guys fighting for resources. I will say though some of the numbers they ask for can be eye watering.

One problem with reservations is that it can be quite difficult how much non reserved CPU MHz is actually left on a single host. vCenter will show you for the cluster but it doesn’t dive down to each host.

So you can have a scenario where you have a host with 10 VMs. 5 of them have reservations for half the CPU between them and the rest have none.

When the reservation VMs are doing nothing the CPU scheduler will allow the other VMs to use those cycles.

But.. what happens when the host gets busy. This is when things get tricky. If the reservation VMs are using 50% of the CPU then the other 5 hosts have to fight for the rest. If the reservations set are not high enough, the reservation VMs will ask for additional resources as well. Then you have to factor in hypervisor overhead for things like VSAN, iSCSI etc the list goes on.

Using DRS for VOIP things can be a no no or the host itself may not even be licensed for it.

So, what can you do to see how much actual free cycles are on each host?

PowerCLI of course

Here is some code I threw together to help me report on this to help me make smarter VM migrations.

This article and code was done in coordination with Chris McChesney and Virtually Trivial.


One Reply to “Reservations of VMs per host”

  1. Pingback: Reservations of VMs per ESXi host. - Scottish VMUG

Leave a Reply

Your email address will not be published. Required fields are marked *


This site uses Akismet to reduce spam. Learn how your comment data is processed.