VMware Cloud Community
hafeezpashamoha
Enthusiast
Enthusiast

ESXi 4.1 Host CPU

Hi There,

We have 12 hosts in a esx cluster. Each host is running esx on ProLiant BL460c G6 with 8CPUs x 2.533 GHz.

Cluster Host summary is shown below

Number of Hosts : 12

Total Processors : 96

Currently, we have 40 VMs using 81 vCPUs in total, does it mean i am only left with 15 (96-81)???

0 Kudos
5 Replies
idle-jam
Immortal
Immortal

esxi allows over assign of vCPU, you can continue to assign as much vCPU as long as the utilization is low or the cpu ready and wait time are in the right threshold (can you use esxtop).

0 Kudos
AWo
Immortal
Immortal

One nice thing with virtualization is, that many guests can share a single CPU or its cores. If you still have cores free you can consider, that each vCPU owns "its" own core. As more vCPUs are assigned over time (more guests are created and running) that changes and the guest gets scheduled according to what ESX thinks ist best. That is no problem and works as designed.

AWo

vExpert 2009/10/11 [:o]===[o:] [: ]o=o[ :] = Save forests! rent firewood! =
0 Kudos
AntonVZhbankov
Immortal
Immortal

No, you are not limited with 96 vCPUs.

Aggregate info is just for your convenience to track resources. You can run multiple vCPUs on a single physical core - it's the main reason to use virtualization. It is recommended to maintain vCPU/pCore ratio below 8.0 for general environment and 11.0 for VDI.

This means you can run up 768 vCPUs on your cluster before reaching *recommended* maximum. But technically you can run a lot more - check Configuration Maximums document.

EMCCAe, HPE ASE, MCITP: SA+VA, VCP 3/4/5, VMware vExpert XO (14 stars)
VMUG Russia Leader
http://t.me/beerpanda
0 Kudos
Techstarts
Expert
Expert

I agree with everyone above. But also note, industry standard is to design 4-6VM's per core. I'm sure with latest generation servers (Which 460 G6 is) which are coming with CPU virtualization(Intel -VT) and memory virtualization (EPT) this count can be further increased with caution.

Thank you,

Techstarts.

With Great Regards,
0 Kudos
ewilts
Enthusiast
Enthusiast

The advantage of virtualization is that you can overcommit your resources.

The disadvantage of virtualization is that you can overcommit your resources.

You will need to monitor your hosts and your guests for performance issues, just like you would in a physical environment.

Please read http://blogs.vmware.com/performance/2011/02/perf-troubleshooting-41.html

How far you can overcommit really depends on your environment and what kinds of guests you're running.  Some may be CPU-bound in which case you can't overcommit your CPU as much as you might hope.  Some may be memory-intensive (java, database) and you won't be able to overcommit your memory as much as you might hope.  Other applications may be I/O intensive.

You may eventually find yourself with multiple clusters with varying sevice level agreements.

In our environment, we find that we run out of memory long before we run out of CPU.  For our key production applications that are either customer-facing or supporting customer-facing, we find 100 guests on 8 BL460c G7 blades with 96GB of memory each to be "comfortable" - we don't have any balooning or swapping and the CPU is there when it's requested.  For our dev/test environments, we overcommit considerably more than that although we are currently overcommited to the point where the users are legitimately complaining about performance and I have an order on its way up for more blades.

The more you overcommit, the lower your per-VM cost.

There are lots of "rules of thumb" on how much you can overcommit but you need to determine your own sweet spot.  Be careful, because this will sneak up on you - a small new guest added here and there may not seem like a problem, but eventually a lot of those small guests add up to a big performance problem.

0 Kudos