I feel there has been a lot of unnecessary confusion around Windows Server 2016 licensing.
My goal with this post is to alleviate this confusion by showing you how simple it actually is.
Windows Server 2016 licensing is licensed per-core. Because processors always have an even number of cores, licenses are sold in two-core packs. One “license pack” equals (or is good for) two cores.
To run Windows Server 2016, you need to purchase licenses for a minimum of 16 cores, per two physical processors.
This translates to you needing to purchase a minimum of 8x two-core packs for every two physical processors in your server. This is the equivalent of a regular standard Windows Server 2012 R2 license.
If you have more than 8 cores per processor, then all you do is purchase 1x two-core license pack for every two cores past the 16 minimum.
Example: You have a server with two processors. Each processor has 10 cores. You have 20 cores total. You purchase the minimum 8x two-core packs, which covers 16 of your cores. You need to purchase an additional 2x two-core license packs to cover the extra 4 cores you have.
Question: Wait, what? Is it really that easy?
Question: So what if my server has two processors, but each processor only has 6 cores each?
You would still need to purchase the minimum 8x two-core packs, licensing you for a total of 16 cores, even though you only have 12 total cores. Don’t worry, this still comes out to the same thing as a Standard 2012 R2 licensing.
Question: What if I have 4 physical processors in my server?
Then you would need to purchase twice the minimum… 16x two-core license packs. Then you buy 1x two-core license pack for every two cores you have after the minimum combined 32-cores.
Virtualization rights with Windows Server 2016 Standard are, relatively speaking, the same as they are with Windows Server 2012 R2 Standard.
You could install Windows Server 2016 Standard on your physical server, installing and using ONLY the Hyper-V (and supporting) roles/features, and then run two Window Server 2016 virtual machines (VM) on that same physical server, using the same Windows Server 2016 license.
Note 1: As a general rule, you should never (or rarely) install the Standard edition of Windows Server 2016 on a physical server if you are using it as a Hyper-V host. You should instead install Hyper-V Server 2016 (Microsoft’s free hypervisor OS).
You can run two virtual machines for every 8x two-core license packs you purchase. In reality, you’d install Hyper-V Server 2016 on your physical server, and purchase a Windows Server 2016 Standard license (8x two-core license packs) for every two Windows Server 2016 virtual machines you want to run on that host.
Note 2: Virtualization rights only apply to Windows Server VMs. You can have any unlimited number of Linux VMs running on any version of Windows, providing your hardware can handle the load.
What about Datacenter Edition?
In regards to virtualization rights, Windows Server 2016 Datacenter doesn’t start to make any sense until you see yourself needing to run upwards of 13 virtual machines on a single host. The exact cutoff is 14 virtual machines, but because each minimum (8x two-core license packs) license gives you 2 VMs, 13 is the same cost as 14. Purchasing 7 Standard edition licenses to run 13 virtual machines on a single host costs the same amount of money as a Datacenter edition license.
Note 3: Datacenter edition has features that Standard edition does not, such as Storage Spaces Direct and Storage Replica… among quite a few others. So there are some legitimate reasons reasons to run Windows Server 2016 Datacenter edition on a Hyper-V Host.
Windows Server 2016 Failover Cluster Licensing
In general, each physical node in a cluster must be licensed for any VM that can run on it.
You can lower the number of physical node licensing by preventing VMs from running on specific nodes. This is done via “Possible Owners” in Failover Cluster Manager as shown below:
Keep in mind that if a VM CAN run on a node, the node MUST be licensed appropriately!
Software Assurance (SA)
If you purchased SA with your server license, you have some additional interesting benefits. Specifically, “License Mobility” and “Fail-over Rights”.
It’s important to always look at the current licensing documentation Microsoft Provides, linked below in references. Licensing can and does change!
The Software Assurance benefit specifically called “License Mobility” refers to your ability to deploy Windows Server 2016 in Microsoft Azure or any authorized Mobility partner.
This means that in anticipation of a fail-over event, you may run passive fail-over on another qualifying shared server (NODE2). Keep in mind that the number of licenses that otherwise would be required to run the passive fail-over Instances must not exceed the number of licenses required to run the corresponding production Instances on the same partner’s shared servers.
Microsoft Volume Licensing (direct .doc link): Microsoft Product Terms – February 1, 2017
Windows Server Licensing: Windows Server
All Microsoft Products: Licensing Terms and Documentation
The “Fail-over Rights” to have a passive backup server idle waiting in case the primary fails, and to licence only the main server, it’s clear to me.
What about if you have a VMware HA/DRS cluster let’s say of 3 hosts with each 4 socket x 12 cores… but most of the workload is Linux, and you have only 10 VM with Windows Server. In this case Standard Edition “seems” to make sense… But how many licences ?
a) Is it like Oracle licensing in the past (still now?) that you have to license each physical core where a VM could be running ? = 144 cores ?
b) or you licence only the host with most physical cores (in the case as all the same) = 48 cores ?
In the rules for ESU Srv 2008 below, I read that for each 2 VM, it’s not only a pack of 8 core to buy, but “Customers who wish to run and update more than two virtual machines on a server licensed with Windows Server Standard must re-license ALL of the physical cores on the server with both Windows Server Standard and Extended Security Updates for each additional pair of virtual machines.”.
In my example, I have a server with 4 physical CPUs of 16 cores each for a total of 64 physical cores. The server is running ESXi and I want to license any number of Windows VMs virtualized on top of VMware.
Would I need 32 2-core licenses for this server?
Yes, you need a 16core datacenter license for each host for unlimited vms. So 4×16 datacenter cores, or 32x2core datacenter packs.
I have two question. The STD edition says that for every new VMs, the physical cores must be licensed aain. So if we have 2 VMs on a 1 proc, 4 core server, 16 core needs to be purchased 3 times. 2 for VMS, one for the host. Is this correct?
Secondly, for enterprise, does the above logic holds true? What about if I have 16 VMs on the same configuration? I have to purchase 16 x 16 cores(per server)
1. You need to license a minimum of 16 cores per server, period. This allows for up to two VMs to run on the system, where the host is ONLY doing Hyper-V. If the host is doing other stuff as well, like file server, AD, etc., then that needs licensed, in which you may only have 1 VM running, as your host will then use up the other. So for a server only running two VMs where the host is doing nothing but Hyper-V, on a 1proc-4core server, you only need to license 16 cores and that’s it.
2. For every two VMs you have running on Standard edition, you need to license a minimum of 16 cores. After about 13 VMs, Enterprise edition makes sense.
congrats to your blog.
We are running a Windows Server 2016 cluster infrastructure with about 20 nodes and ~600 VM’s. All nodes are licencensed as Windows Srv 2016 DataCenter MAK C (SPLA). About 50 of the VM’s are running MS SQL services (standard/enterprise…). So now we plan to create a new cluster with 4 nodes to run all the MS SQL VM’s on it and license the 4 nodes with a MS SQL Enterprise OSE license (operating system environment).
Questions: Do we have to build the new cluster or would it be possible to use the option “Possible Owners” as you write above? What do you think?
Dani you are talking about two different license types, Windows Server, and SQL Server. If all your windows servers are licensed as you say, then you do no need to build a new cluster for SQL, there is no relationship between the licensing. You do need to ensure you are properly licensed for the amount of SQL you will be running and you will need to have SQL SA to allow for movement of SQL between the clustered nodes.
I have a new DELL poweredge r730 server, with 2 CPUs and 22 cores, this server has no OS, so I purchased 1 windows server 2016 standard edition.
Installed Hyper-V Server 2016 (Microsoft’s free hypervisor OS).
Since 1 windows 2016 standard covers 2 VMs, I built 2 windows 2016 server VMs on Hyper-V 2016 free hypervisor OS.
Since 1 windows 2016 standard covers 8 cores, I purchased 22-8=14/2 = 7 additional core licenses.
I used same windows 2016 standard server product key to activate both VMs, VM1 is activated, and VM2 failed.
1) do I have enough license for these 2 VMs?
2) did I activate VMs wrong?
Windows Server 2016 Standard doesn’t cover any amount of cores. You need to purchase enough 2-core packs to cover all of your CPU cores, and must license a minimum of 8 cores per CPU. This means that in a server that has two CPUs, you must license a minimum of 16 cores, meaning you need to purchase at least 8 2-core license packs. This comes out to about the same price as prior Windows Server licensing.
Now in your situation, you have more than 16 total cores, but something seems to be off here.
Is that 22 cores for each CPU? I’ve not heard of an 11-core CPU. Was it supposed to be 2x 10-core CPUs for a total of 20 cores?
If it’s 22 cores per CPU, then it’s 44 total, in which case you would need to purchase 22x 2-core license packs in order to cover all 44 cores.
In any case, add the total amount of cores you have (16 minimum for a 2-CPU server), divide by two, and that’s the amount of 2-core license packs you need to purchase.
Thank you Tim
Just checked the specification, the Dell server R730 has 14 cores / CPU, for 2 CUPS, total cores = 28.
The windows 2016 server covers for 16 core version, then I have 7×2 core licenses=14 cores, total 16+14=30 cores, am I right?
So i have 2 extra core license, now questions are:
1) Should I use my windows 2016 standard edition product key to activate 2 windows 2016 server VMs (same key for both VMS) ?
2) How to input core license, they are no key (2 core) license
total number of cores = 28, so you need 14 x 2 core licenses.
I have a 2016 Datacenter Cluster that I need to install a 2012 R2 VM. I’ve purchased the 3 Datacenter Licenses via MPSA, but I can’t locate the downgrade ISO or keys to install it.
The following are AVMA public keys that can be used for Windows Server 2012 R2 if your host is running a Datacenter edition of Windows Server:
If you are running Hyper-V Server on your hosts, then you will need to request from Microsoft a Windows Server 2012 R2 key, if you don’t see one available when you log in to your Microsoft Volume Licensing account.
For completeness, here are the AVMA public keys that can be used for Windows Server 2016:
we have created a cluster of Four node standard windoews 2012 (8 core)
host about 100 LINUX VM 8 core fo each vm
, so how many license to report for microsoft
Note we applied SPLA license ?
And if you have docs for confirmation please send
Linux VMs do not need Microsoft Windows licenses. Windows VMs and Windows hosts do, however.
If your physical servers (nodes) are running Windows Server, the hardware needs licensed. If your physical servers (hosts) are running Hyper-V Server (not Windows Server), then they do not need licensed.
You mention that under license mobility that the two-node cluster would be running a host with datacenter licensing and the other being the free hyper-v 2016 server, but you can’t use failover clustering with the free hyper-v 2016 server, right?
Yes, you can in fact add the Failover Cluster feature to the free Hyper-V Server 2016, and add it to your cluster. This (Hyper-V Server 2016) is the preferred method of using Hyper-V, NOT Windows Server + Hyper-V Role.
” if you have a two-node cluster with one physical server using Datacenter (NODE1), a second physical server with the free Hyper-V Server 2016 (NODE2)” – You can mix Standard and Datacenter in the same cluster but you cannot mix Hyper-V Server with other editions… Validate will throw an Error that it is not supported.