Hello,
Here's the problem:
One ESXi 4.1 update 1 server with 4 GB RAM and 2 CPUs (Dell optiplex 960)
It only allows me to create resource pools with 2 GB of RAM.
And even if I don't create a resource pool, and leave the VMs directly in the server, I can only power on VMs that togheter use 2 GB.
I'm using vCenter, but the problem persists if i connect directly to the ESXi server.
Any thoughs?
Thanks!
Welcome to the Communities -
In regards to the resource pools - you ESX host will use come of the pysical RAM and what ever is left will be available for the use in resource pools -
In regards to the VMs - you should be able to oversommit memory so something else is going on - when you created your VMs did you set memory reservations? If you did the amount of memory reservations of powere don VMs must be less than or equal to available memory as is for resource pools -
if you find this or any other answer useful please consider awarding points -
The ESXi hosts and the vCenter Server Agent which runs on it when running in a vCenter Server environment also need some RAM. This might be the "missing" RAM you are looking for. Please take a look at http://vm-help.com/esx40i/memory_allocation.php. What do you see in the "Configuration" and "Resource Allocation" tabs?
André
Hi,
The configuration -> Memory page shows:
Physical
Total: 3965.4 MB
System: 418.4 MB
Virtual Machines: 3547.0 MB
The Resource allocation page shows:
Memory
Total Capacity: 2172 MB
Reserved Capacity: 0
Available Capacity: 2172 MB
All VMs are powered off
---------------------------------------
Lowering the reserved memory amount of the vmvisor module as suggested in that article just gaves me an extra 256 MB but it doesn't let me access the 1.5 GB I should be able to allocate
Well, apparently VmWare temporaly uses an extra amount of memory in order to power on a VM. (the vmvisor module I think)
So I've just powered them on in groups of 4 and now all are on at the same time.
Not sure what made it work, but here's what I did.
1) Followed the article http://vm-help.com/esx40i/memory_allocation.php and reduced the ammount of reserved memory used to power on VMs from 512 to 256.
2) Removed from all the VMs the memory reservation (set it to 0), but I kept the Memory limit.
3) Ignored the memory listed in the "Resource allocation" page and powered them on in groups of 4.
Now, there're 24 XP machines powered on.
Each one has assigned 128 MB of RAM (not reserved), and it's limited to 130.
According to the perfmon/task manager of each XP machine, it's normal memory usage is 120 MB
So with all XPs powered on, it currently has a RAM usage of 2880 MB
So, the ESX is currently using 2880 MB for VMs + 418 MB for the System which gives 3298 MB
In case all VMs reach they're RAM limitation, it will be 3120 + 418 = 3538 MB
Which leaves 427 MB of RAM for ESX Tasks, like the 256 MB now needed to power on machines, snapshots, etc.
Thanks!
Some things to point out -
Hi,
I though if you set the limit to unlimited it will assign more ram if needed by the VM and available in the ESX server, but now you point it out, The guest OS will only see the ammount assigned in the hardware tab.
So, if I have 4 GB - the 512 used by ESXi
When I was using memory reservation (24 VMs x 128 MBs = 3072 MB), why I was unable to power all them on?
And why was I unable to create a Resource Pool with more than 2GB when there was no memory reservation or VM running?
Any ideas?
The question remains, why can't I create a resource pool with a memory limit higher than 2 GB RAM when there's no VM powered on or memory reservation in any VM and the ESX host has 4 GB of RAM?