Monday, June 27, 2016


We have 3 Node cluster with ISCSI SAN Storage attached
Node1 Summary View
Physical sockets=2  , Physical CPU per socket= 1, Core Per CPU=4
So Total core:-  2x4=8 , Each core is 2.294Ghz
Total Computing power is :-  8x2.294 GHz=18.352 GHz
Here we have not enable HyperThreding so total logical Processors its showing is = 8 Logical processor
If we enable hyperthreding then we should get double of it i. e   8x2=16 Logical processors
 but this will not increase total computing power because it is depend on your total core and not logical processors……….:)



Below figure shows that after enabling Hyperthreding in 2 sockets Node with 4 cores per sockets.
It showing 16 logical processors……………Grt
2 (sockets) x 4 (Cores per sockets) x 2 (Hyperthreding) = 16 logical Processors
But total compute capacity i.e. CPU Capacity is= 8 (total cores) X 2.393 GHz


Below is the Virtual machine running on 3 node cluster
Now here we have given 1 vCPU and 2 GB RAM to this Virtual machine and install Windows 2008 R2 Enterprise Edition  64 Bit OS


In windows its showing Quad-Core AMD processor with 2.29 GHz and in task manager its showing 1 core of processor.


And my node is licenced with Enterprise licensed type its showing 6 cores per CPU

And with enterprise plus licensed type its gives 12 core per CPU and 8 way virtual SMP

Now when I tried to edit the Virtual processors and change it to MAX available value i.e. 8
Ohh wait from where this MAX Virtual processors value came from …. My license type doesn’t say anything about this then it must be the MAX total core in my node…… Yah that’s gr8 we found the link between vCPU and Physical core of the node.


Ok now I change the vCPU from 1 to MAX 8 and try to boot the Virtual machine………
Ohh no there is an error …….

It says that virtual machine has 8 virtual CPUs but host support only 4.  Oh no, then I am not able to use 8 vCPU.
I went to check where the exact problem is? Is this the guest OS limitation or my host licence?
My guest OS is Windows 2008 R2 Enterprise Edition which Supports Upto 8 CPU then it must be a problem with Host License ok let me check that as well.
Ok here is my license type Enterprise License with 2 physical CPUs and 1-6 Core per CPU
It looks good then what is the 4-Way virtual SMP ………
Here is the definition of SMP from VMware
4-Way VMware Virtual SMP (symmetric multiprocessing). With the power of up to four physical processors available to each virtual machine

Now we can conclude that 4-way SMP it the blocking point for us, so we can’t use more than 4 vCPU to any guest regardless of Guest OS type.
Let’s check by giving 5 vCPU to same guest………….
Yah same error

So I give 4 vCPU and started Virtual machine.


Ok I have one more server node of ESX having different license file.
Here its enterprise plus and 8 way SMP
And I checked here Virtual machine with windows 2008 R2 Ent. Edition having 8 vCPU
 And in windows its showing 8 processors wow gr8.




From above figure we can see how memory has been allocated to Virtual machine
Starting from bottom 512 MB and 4 GB are the default memory Tab from Operating system, as guest os is windows 2008 so recommended is 4 GB.
Now third tab is “Maximum recommended for best performance” and it’s 32GB Ohh what is that?
Its MAX memory installed on Node... Remember we have 32GB physical memory installed on Node1.
Ok then what is the fourth Tab about 255 GB RAM…ok now we can get that this is the max memory supported by that Node as per our ESX license file ……256 GB max supported in Enterprise license

And for enterprise plus there is no RAM limitation.




2.294 GHz X 4 vCPU = 9.176 GHz total computing power allocated to Virtual Machine
CPU resource allocation
Share: - Low=1, Normal=2, High=4
So in above condition when Low share selected it allocating

Share Values
Setting
CPU share values
Memory share values
High
2000 shares per virtual CPU
20 shares per megabyte of configured virtual machine memory.
Normal
1000 shares per virtual CPU
10 shares per megabyte of configured virtual machine memory.
Low
500 shares per virtual CPU
5 shares per megabyte of configured virtual machine memory.
For example, an SMP virtual machine with two virtual CPUs and 1GB RAM with CPU and memory shares set to Normal has 2x1000=2000 shares of CPU and 10x1024=10240 shares of memory.
Note
Virtual machines with more than one virtual CPU are called SMP (symmetric multiprocessing) virtual machines. ESX/ESXi supports up to eight virtual CPUs per virtual machine. This is also called eight-way SMP support.
The relative priority represented by each share changes when a new virtual machine is powered on. This affects all virtual machines in the same resource pool. All of the virtual machines have the same number of VCPUs. Consider the following examples.
Two CPU-bound virtual machines run on a host with 8GHz of aggregate CPU capacity. Their CPU shares are set to Normal and get 4GHz each.
A third CPU-bound virtual machine is powered on. Its CPU shares value is set to High, which means it should have twice as many shares as the machines set to Normal. The new virtual machine receives 4GHz and the two other machines get only 2GHz each. The same result occurs if the user specifies a custom share value of 2000 for the third virtual machine.