VMware Cloud Community
Chris53
Contributor
Contributor

SBS 2011 - assigning vcpus

We are in the process of replacing our current servers with a single  HP ML350 with a single Xeon E5645 (6 cores) and 30GB memory. The plan is  to run SBS2011 and a Win 2008R2 terminal server as virtual machines in  ESXi 5. My main question is: What do I do with the 6 cores?

As SBS with Exchange and the terminal server can  utitilize multiples cpus I think I really should give them more than one  vcpu. (the requirements for SBS call for a quad core processor, but as a  virtual machine I've heard it doesn't matter) Even if I give them both 2  vcpus they are never going to be in contention and I will still have 2  cores left unused. Should I give one of the servers 3 vcpus if it looks  like it can use it? Is it a good idea to leave one core 'unused' to ensure ESXi can use it to do what it needs to do?

Its highly unlikely that we will be adding extra vms in the future.

0 Kudos
5 Replies
Kasraeian
Expert
Expert

Welcome to community,

It's depend on these VMs cpu usage; for assigning vCPU to your VMs, you can start with low number (like 2 vCPU) for each one and if in any case they need more than that you can add more to them and as Intel Xeon E5645 supports HT, you have 12 logical Cores not 6 Cores.

May I ask if you selected which edition you are going to use?

If you are going to use "Enterprise/Enterprise Plus Acceleration Kits" or "Enterprise/Enterprise Plus" you can use feature called "Hot Add" which give administrator the capability of adding some needed resources (CPU/Memory) while the OS is up and running without any downtime.

If you found this note/reply useful, please consider awarding points for "Correct" or "Helpful" If there's any mistake in my notes, please correct me! Sohrab Kasraeianfard | http://www.kasraeian.com | @Kasraeian
a_p_
Leadership
Leadership

Welcome to the Community,

I'd recommend you start with 2 vCPUs for each guest and only increase the vCPU count if necessary.

Btw. make sure you have Hyperthreading enabled (even if may currently be no real need for it) and set the power option in the host's BIOS to "Maximum Performance".

André

0 Kudos
Gkeerthy
Expert
Expert

Hi

The vcpu allocation is purely based on the application capability, it the application is multi threaded you can give multiple vcpu, here in your case you have single socket with 6 real cores and with HT enabled you will get 6 virtual cores.

As per the best practice, until and unless it the server and the application uses the multiple virtual cpus to 80% then you can give. Example you have given 4 vcpus and the server is not utilizing much and it is using only below 50 % in the peak time then it is bad to give more vcpus, then you will suffer from the co scheduling issue, this will reduce the performance.

First check the current usage, and for exchange you can give 3 or 4 and for terminal 2 or 1 etc. the Vmkernel will do the rest.

Please don't forget to award point for 'Correct' or 'Helpful', if you found the comment useful. (vExpert, VCP-Cloud. VCAP5-DCD, VCP4, VCP5, MCSE, MCITP)
0 Kudos
Gkeerthy
Expert
Expert

Also refer the resource management guide for best practices

http://pubs.vmware.com/vsphere-50/topic/com.vmware.ICbase/PDF/vsphere-esxi-vcenter-server-50-resourc...

Also refer the below

www.vmware.com/pdf/Perf_Best_Practices_vSphere5.0.pdf
Please don't forget to award point for 'Correct' or 'Helpful', if you found the comment useful. (vExpert, VCP-Cloud. VCAP5-DCD, VCP4, VCP5, MCSE, MCITP)
0 Kudos
Chris53
Contributor
Contributor

Thanks everyone for your responses.

I understand that both SBS2011 (running exchange and its other functions) and Server 2008R2 (Standard Edition) as a terminal server can make use of multiple cpus and with only 2 vms and 6 cores I'd be wasting the other cores if i didn't assign them. I am also conscious of the fact that I shouldn't over-commit my cores by giving too many vCPUs to any vm. I'm also aware that ESXi uses some CPU resources for its own needs. I know a lot of small businesses are now running similar virtual setups, and wondered how they assigned their vCPUs

I now have a good idea of how it will work.

0 Kudos