We are the most section in IT deploying a servers using VMware Product for serving our Company. I would please to guide me how we following the best practices to configure virtual machine with virtual sockets and core per virtual socket!
1- Creating a virtual machine with number of virtual socket 1 and core per that socket is 4 > RAM 8GB
2- Creating a virtual machine with number of virtual socket 4 and core per that socket is 1 > RAM 8GB
1- Creating a virtual machine with number of virtual socket 1 and core per that socket is 8 > RAM 16GB
2- Creating a virtual machine with number of virtual socket 8 and core per that socket is 1 > RAM 16GB
What is the correct best practice?
From an ESX perspective, 1 vCPU with 4 virtual cores is exactly the same is 4 vCPU with 1 virtual core. The ability to provision cores to a VM is more about what is presented to an operating system. If you want to run Windows 2008 standard, you are limited to 4 vCPUs. With the availability of cores, you can configure 4 vCPUs with 4 virtual cores, thus giving the VM 16 cores worth of processing power. The KB below provides more complete information:
This VMware blog post (Does corespersocket Affect Performance? - VMware vSphere Blog - VMware Blogs) says:
#1 When creating a virtual machine, by default, vSphere will create as many virtual sockets as you’ve requested vCPUs and the cores per socket is equal to one. I think of this configuration as “wide” and “flat.” This will enable vNUMA to select and present the best virtual NUMA topology to the guest operating system, which will be optimal on the underlying physical topology.
#2 When you must change the cores per socket though, commonly due to licensing constraints, ensure you mirror physical server’s NUMA topology. This is because when a virtual machine is no longer configured by default as “wide” and “flat,” vNUMA will not automatically pick the best NUMA configuration based on the physical server, but will instead honor your configuration – right or wrong – potentially leading to a topology mismatch that does affect performance.
I don't think this setting will impact to performance, you can keep any combination whatever you want but it will impact to Licence policy or OS supporting limitation, for example few OS have some core base limitation where you keep best possible combination which is suitable for your requirements.
kindly go through below link for the better understand
I'm sure you have already gotten your answer but from a performance perspective it can make a difference. If we assume that you have 2 NUMA nodes on your underlying hardware as you have a 2 socket 8 core server. In this case a 1 socket 8 cores VM will have 1 vNUMA node based on defaults whereas 2 sockets and 4 cores will spread your VM over NUMA nodes.
I'm not really explaining this well but this link does show that matching your vNUMA nodes with the underlying hardware can make a difference if you are not worried about licensing or OS restrictions.