VMware Cloud Community
scerazy
Enthusiast
Enthusiast

VM will not start unless resource pool unlimited

VC 2.5 with 2 x ESX 3.01 servers in cluster(HA/DRS)

The VM in question is esXpress Helper

If I place it in a resource pool that has limit on CPU and/or memory it will not start

Make the resource pool unlimited & it starts with no problems.

My existing machines in resource pools also with limits start fine

Anybody any idea at all? Two days fiddling with esxpress support help with no results so far

Seb

0 Kudos
10 Replies
rriva
Expert
Expert

start & no start it's such a poor information for debugging.

In these two days .... have you look at vcenter logs ? esx logs ?

which is the message that they tell you when the VM not start ?

Bye

R

If you found this information useful, please consider awarding points for "Correct" or "Helpful". Thanx!

RRiva | http://about.me/riccardoriva | http://www.riccardoriva.com
0 Kudos
scerazy
Enthusiast
Enthusiast

OK, will not power on due to not enough memory.

Rubbish, memory is plenty on a server with 50% memory utilization (out of 16 Gb)

Logs are totally useless, thay say close to as much as my first message

Seb

0 Kudos
rriva
Expert
Expert

try to pin point on which is the problem ....

you said that if you set as unlimited your resource poll the VM start

and if you configure your resource pool with "Expandable reservation" on RAM Memory what about the VM ? start or not ?

Which are the memory limit of that resource pool ? how much RAM is used/configured for the other VM running on it ?

How much RAM is configured on your VM ?

Bye

R

If you found this information useful, please consider awarding points for "Correct" or "Helpful". Thanx!

RRiva | http://about.me/riccardoriva | http://www.riccardoriva.com
0 Kudos
scerazy
Enthusiast
Enthusiast

Expandable makes no difference, pool memory limit is 1200, VM needs 256, the ONLY running VM in the pool

I believe it is the combination of VC2.5 and ESX 3.01

On the matrix they should work, but in practice I believe it is a problem

Seb

0 Kudos
ThomasNederman
Enthusiast
Enthusiast

Have you tried moving out another VM with the same amount of CPU and memory and try to power this VM on ? HA limits the amount of VM's you can have based on a calculation of memory overhead and 256* number of VCPU's etc, so it could be a limit of number of VM's in the resource pool that is preventing the power on even though it looks like you have memory and CPU. I know this apply on cluster level, not sure how the calculation goes on RP level

Thomas Nederman, VCP http://www.thomasnederman.com
0 Kudos
scerazy
Enthusiast
Enthusiast

The calculations must have changed in VC 2.5, as with 2.02 it was behaving correctly.

Also there must be some CPU calculations done as well, as the VM in this pool will also not power on when CPU is limited to 1000

The machines in question are esXpress VBA Helpers

3 VM (2 powered off) with 66Mb overhead each would make 966Mb, so with limit of 1200 there should be NO problem, yet it is a problem.

Following the suggestion I dragged existing unused W2K3 VM with 512Mb RAM configured and... it started OK

So now I am back at esXpress support to figure out what is going on

Seb

0 Kudos
ThomasNederman
Enthusiast
Enthusiast

The calculation has changed in VC2.5. Bwllow you find info from my call with VMware regarding this issue

Thomas Nederman, VCP

Calculate the number of available slots for the cluster

Once the maximum slot size has been calculated, you can then figure out the maximum number of slots that are available per host in the cluster. This is calculated by taking the maximum CPU and Memory Resources on each of the individual ESX Servers and dividing it by the maximum reservations calculated above.

If the ESX Server hosts have different maximum resources available (RAM or CPU), when VMware High Availability calculates failover capacity it takes into account the worst case scenario. Therefore to check if the cluster can survive x number of failures (where x is the configured failover capacity) VMware HA will exclude the hosts with the most resources from the calculation.

For example if you have the following requirements on 4 ESX Servers:

ESX Server 1 has 16GB of RAM and 4 CPU's running at 3GHz

ESX Server 2 has 24GB of RAM and 8 CPU's running at 2GHz

ESX Server 3 has 32GB of RAM and 8 CPU's running at 2GHz

ESX Server 4 has 32GB of RAM and 8 CPU's running at 3GHz

Configured failover capacity is set to 1 host.

Using the values from the previous step of this document VMware High Availability calculates the number of slots for CPU and Memory.

Note: VMware High Availability only utilizes the lower of the two slot values per ESX Server to ensure that failover can occur for all virutal machines.

For VirutalCenter 2.0.x:

ESX Server 1 -

Memory: 16GB of RAM / 2GB slot size = 8 memory slots

CPU: (4 CPU * 3 GHz) / 2GHz slot size = 6 CPU slots

ESX Server 2 -

Memory: 24 GB of RAM / 2GB slot size = 12 memory slots

CPU: (8 CPU x 2 GHz) / 2GHz slot size = 8 CPU slots

ESX Server 3 -

Memory: 32 GB of RAM / 2GB slot size = 16 memory slots

CPU: (8 CPU x 2 GHz) / 2GHz slot size= 8 CPU slots

ESX Server 4 -

Memory: 32 GB of RAM / 2GB slot size = 16 memory slots

CPU: (8 CPU x 3 GHz) / 2GHz slot size= 12 CPU slots

For VirtualCenter 2.5.x:

ESX Server 1 -

Memory: 16GB of RAM / 2GB slot size = 8 memory slots

CPU: (4 CPU * 3 GHz) / (4vCPU * 2GHz slot size) = 1 CPU slots

ESX Server 2 -

Memory: 24 GB of RAM / 2GB slot size = 12 memory slots

CPU: (8 CPU x 2 GHz) / (4vCPU * 2GHz slot size) = 2 CPU slots

ESX Server 3 -

Memory: 32 GB of RAM / 2GB slot size = 16 memory slots

CPU: (8 CPU x 2 GHz) / (4vCPU * 2GHz slot size) = 2 CPU slots

ESX Server 4 -

Memory: 32 GB of RAM / 2GB slot size = 16 memory slots

CPU: (8 CPU x 3 GHz) / (4vCPU * 2GHz slot size) = 3 CPU slots

In this example ESX Serer 4 has the most slots so it would be excluded from the calculation therefore the slots from ESX1, ESX2 and ESX3 will be used for the calculation. Therefore the maximum number of VM's that could be run on VirtualCenter 2.0.x is 22, while on VirtualCenter 2.5.x only 5 VM's could be powered on to satisfy failover requirements.

In the example the CPU reservations are the limiting factor. Also the memory overhead for the virutal machine is not taken into account, in this calculation to ensure round numbers.

Errata corrige:

Edited article to add detail on the calculations

Removed:

Number of VM's 50 but only 39 are on.

Number of ESX hosts 3

Least amount of RAM on ESX hosts 16 GB

Most amount of RAM on VM 1 GB

Slots = 16

Total slots available with 1 host down = 32

32 < 39 therefore Current failover capability = 0

Thomas Nederman, VCP http://www.thomasnederman.com
0 Kudos
scerazy
Enthusiast
Enthusiast

Done some more tests.

I CAN start the VM in question from within of VC 2.5

But if I connect with client directly to ESX server & try to start the same VM, I get error abbout memory availability.

So ESX 3.01 does NOT like something that VC 2.5 is OK with.

Seems to me that combination of VC 2.5 & ESX 3.0x is not the best (or even possibly should not be allowed)

If you chose properties of the resource pool in VC 2.5 & then again properties of the same pool when connected to ESX 3.0x thay simply are WAY different!!!!

So there is some massive mismatch somewhere

Seb

0 Kudos
ThomasNederman
Enthusiast
Enthusiast

VC 2.0 that is needed to connect to the ESX 3.02 is not using the same calculations for HA as VC 2.5, in my post above VM ware confirms the calculation for VC has changed. So it is logical you could get a error in one and not the other

Thomas Nederman, VCP

http://www.thomasnederman.com

Thomas Nederman, VCP http://www.thomasnederman.com
0 Kudos
scerazy
Enthusiast
Enthusiast

OK, but VC 2.5 with ESX 3.0.1 IS a supported combination by VMware.

Yet obviously it does NOT work and it seems like nothing I can do about it (apart from upgrading to ESX 3.5)

But will the upgrade make the same settings for resource pool to be in both ESX 3.5 & VC 2.5 (not a mismatch like now?)

Seb

0 Kudos