The host does not have sufficient memory resources to satisfy the reservation.

At a customer site I was having problems with an ESXi4.0U1. The host was part a of cluster of 10 other ESXi4.0U1 hosts. VMware HA/DRS was turned on, a few Resource Pools were created. The other hosts were running fine except this one. Every time I wanted to start a virtual machine up, the host threw an error message on the screen:

At the same time an entry was logged in to the Events log:

I checked everything I could think about:

  1. My VM’s CPU and Memory Resource Allocation and there were no reservations nor limits defined.
  2. Host had plenty of memory and processor power, actually the host was idle, no powered on VMs!
  3. My VM’s parent Resource Pool but there wasn’t any, This VM wasn’t part of any Resource Pool.
  4. Cluster settings: HA was set to Power on VMs that violate availability constraints.

I removed the host from the cluster, made a direct connection with vCenter client and booted up the VM, but still same error. I could say that something was wrong with the host only, and not with the VMware cluster’s resource allocation config.

Last place to look at, the esx.conf file. I recalled  that Resource Pool details were written in each host’s esx.conf file, especially for the host’s own resource pool. So I ssh’ed in and cat out /etc/vmware/esx.conf:
/resourceGroups/root/child[0000]/child[0000]/mem/maximum = “16000
/resourceGroups/root/child[0000]/child[0000]/mem/minLimit = “unlimited”
/resourceGroups/root/child[0000]/child[0000]/mem/minimum = “16000
/resourceGroups/root/child[0000]/child[0000]/mem/shares = “10000
/resourceGroups/root/child[0000]/child[0000]/mem/units = “mb”
/resourceGroups/root/child[0000]/child[0000]/name = “vmvisor”

The host’s esx.conf got screwed somehow. Look at that, 16GB were allocated to the host! Damn that was all physical memory available on the server! I was not surprised no virtual machine could start up.

By checking the other hosts, I could figure out what were the correct values. I edited /etc/vmware/esx.conf file and changed the values as follow:
/resourceGroups/root/child[0000]/child[0000]/mem/maximum = “unlimited
/resourceGroups/root/child[0000]/child[0000]/mem/minLimit = “unlimited”
/resourceGroups/root/child[0000]/child[0000]/mem/minimum = “1024
/resourceGroups/root/child[0000]/child[0000]/mem/shares = “1000
/resourceGroups/root/child[0000]/child[0000]/mem/units = “mb”
/resourceGroups/root/child[0000]/child[0000]/name = “vmvisor”

Saved the esx.conf file and rebooted the host, added back to the VMware cluster, HA got installed successfully, and guess what, now I can boot up the VMware Data Recovery VM and other virtual machines as well, no more memory reservation issues 🙂

I have no idea what happened with that host, but eventually by checking the /etc/vmware/esx.conf file I could see something was wrong and fix it…


About PiroNet

Didier Pironet is an independent blogger and freelancer with +15 years of IT industry experience. Didier is also a former VMware inc. employee where he specialised in Datacenter and Cloud Infrastructure products as well as Infrastructure, Operations and IT Business Management products. Didier is passionate about technologies and he is found to be a creative and a visionary thinker, expressing with passion and excitement, hopefully inspiring and enrolling people to innovation and change.
This entry was posted in Uncategorized. Bookmark the permalink.

11 Responses to The host does not have sufficient memory resources to satisfy the reservation.

  1. Pingback: Tweets that mention The host does not have sufficient memory resources to satisfy the reservation. « DeinosCloud --

  2. Hussain says:

    excellent, post and informative. But this issue might happen to the ESX hosts as well or only the ESX(i)? in my environment only ESX no (i) at all. And started wondering this might happens once upon a time.


    • deinoscloud says:

      Hi Hussain, thx for your comment. I witnessed this problem just once and with ESXi4.0U1. One could be a script that scrwed up the esx.conf file or a a bug that shows up under certain conditions, I just don’t know for the moment.

      Did you experience the same problem in your environment?

  3. Pingback: Top 5 Planet V12n blog posts week 21 | Download VDI Solutions

  4. Daniel Estévez says:

    Hi! Thanks for the post! We had this same issue and could also solve it by editing manually the memory limits at esx.conf.
    Only thing we can add is that it also happened with 2 of our machines running ESXi 4.1.0; we can’t know if it’s a bug or some uncontrolled behaviour installing or configuring Esxi/vCenter.

  5. NiTRo says:

    At that time did you also check at configuration>system resource allocation>advanced in vcenter/vi client ? I’m pretty sure you could have solved that way…

    • deinoscloud says:

      Hi NiTRo and thx for your comment.
      I do not remember if I checked that…
      Indeed it would be easier to fix it through the GUI than the CLI if the problem shows up there as well.

  6. deinoscloud says:

    The following VMware KB ( describes a similar issue where in this case the host was given too few resources to have HA agent starting up as opposed to my blog where the host was given all the memory resources.

    It is good to know, and I have witnessed that myself when I was running 3 nested ESXi hosts and a lappy with 6GB of memory, 1537MB is the bear minimum to boot up an ESX(i).


  7. Pingback: Go Scalable » How to restart ESXi management agents

  8. Johnc116 says:

    Hello, I desire to subscribe for this blog to obtain most recent updates, thus where can i do it please help. daeabedecgae

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your 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