VMware Cloud Community
ahmed_boudhraa
Contributor
Contributor

CPUs aggregation between multiples esxi hosts

Hi, actually i m running multiples ESXi 5.5 hosts unders vcenter 5.5 and i got issues with some vms in particular cases, in all my hosts cpus usage is almost null (all my vms not heavy cpu users)

except for one or two onces, and we end up with several hosts that not using all their cpu power, and one or two hosts using almost 90% of their compute power. we have done all the tunning OS side on the concerned vms and actually we cant make clusters to reduces vms cpu concumptions. to make it simple is there a way to aggregate cpu from other hosts to be used in any hosts, like a pool of cpus? some expert in discussion told me that with ESXi 6.7 and above it can, i'm planning to migrate to that version but i cant find any information about what i need. any idea or informations?

Thanks

4 Replies
daphnissov
Immortal
Immortal

No, one VM must run on one host and is constrained by the resources of that host.

scott28tt
VMware Employee
VMware Employee

For groups of VMs that is logically done using host clusters and resource pools, but a single VM only physically consumes the compute resource of the single host on which it is running at any point in time.


-------------------------------------------------------------------------------------------------------------------------------------------------------------

Although I am a VMware employee I contribute to VMware Communities voluntarily (ie. not in any official capacity)
VMware Training & Certification blog
ahmed_boudhraa
Contributor
Contributor

thanks for the reply, that's what i knew, but that so called expert when trying to explain my issues told us so, it was just discussing...anyways ive been searching a little and found memory aggregation in xen solutions, thought it would be easy to do the same with cpus. maybe the latencys would be too great to exploit such solution... anyway thanks again

Reply
0 Kudos
depping
Leadership
Leadership

Latency is the problem, even with memory. Memory latency is measured in nanoseconds, while network latency is high microseconds or even milliseconds. If you aggregate these resources across hosts than there's definitely a significant overhead. And then there's the scheduling problem for CPU, across hosts that would be very challenging. I am not saying it is not doable, but it would probably not make sense for most workloads for CPU.

You should consider: lowering the number of vCPUs for the VMs which have a high number. And if you don't have it enabled, considering vSphere DRS, as that will automatically balance your environment based on what the VMs are requesting.

Reply
0 Kudos