Microsoft Licensing

Windows Server Licensing in Virtualization and Container

Windows Server Licensing in Virtualization and Container

Windows Server Licensing in Virtualization and Container

Virtualization has radically changed how we deploy Windows Server, and with it comes added complexity in licensing. Microsoftโ€™s Windows Server licensing model accounts for virtual machines (VMs) and containers.

This article examines how to license Windows Server in various virtualized environmentsโ€”from traditional hypervisors to modern containersโ€”and highlights best practices for remaining compliant while optimizing costs. IT infrastructure architects and SAM professionals will gain clarity on licensing Windows Server in scenarios involving VMware/Hyper-V farms, container orchestration, and hybrid setups.

Read more about Microsoft Windows Server Licensing.

Licensing Windows Server in Virtual Machines

Physical Host Licensing vs. Per-VM Licensing:

Windows Server licenses are typically applied at the physical host level in a traditional on-premises setup. As discussed earlier, if you license all physical cores of a server with Windows Server, you can run a certain number of VMs on that host, depending on the edition (Standard gives rights for 2 VMs per license set, Datacenter gives unlimited). This per-host licensing model is straightforward when you have dedicated hardware for your organization.

However, there are cases where licensing per physical host isnโ€™t practical, such as using a public cloud or a shared virtual environment. In those cases, Microsoft allows licensing per virtual machine (per VM) only if you have Software Assurance or subscription rights (as noted in previous articles).

Per-VM licensing means you count virtual cores for that VM (a minimum of 8) and assign core licenses to the VM. This is more common in cloud scenarios, so weโ€™ll focus on the on-prem host licensing approach for virtualization.

Standard Edition โ€“ Stacking for VMs:

With Windows Server Standard edition, you get allowances for two VMs (on a fully licensed host). If you want to run more than two VMs on the same physical server, you can โ€œstackโ€ additional Standard licenses on that host.

Practically, if a server has 16 cores, one set of 16-core licenses (Standard) allows 2 VMs; a second set of 16-core licenses allows two more VMs (total 4); a third set allows up to 6 VMs, and so on.

Each increment must cover all the physical cores again. This stacking can continue indefinitely โ€“ thereโ€™s no technical limit, but it becomes cost-inefficient beyond a point. Remember that each โ€œstackโ€ is essentially another license assigned to the same hardware, so the 90-day transfer rule applies to each assignment (though typically, if youโ€™re stacking, you intend to keep using them on that server).

Datacenter Edition โ€“ Unlimited VMs:

If you anticipate heavy virtualization, Datacenter edition simplifies licensing greatly: license all cores on the host once, and you can run unlimited Windows Server VMs on that host. โ€œUnlimitedโ€ means any number of Windows Server instances, as long as theyโ€™re on that same licensed hardware.

This covers any mix of Standard or Datacenter edition VMs (you can run older versions or lower editions as needed under downgrade rights). For example, you could run fifteen Windows Server 2022 VMs and five Windows Server 2016 VMs on a Datacenter-licensed host, and itโ€™s all covered.

Mixed Environments (Not All VMs are Windows):

If some VMs on a host run Linux or another OS, they donโ€™t count towards Windows licensing. You only need to license the Windows VMs/hosts. But importantly, if even one Windows VM runs on a host and youโ€™re using per-host licensing, you must fully license the hostโ€™s cores (unless you have per-VM licenses via SA).

This leads many organizations to either: a) isolate Windows VMs to specific hosts and fully license those, while running Linux on other hosts without Windows licenses, or b) license all hosts in a cluster with Windows Datacenter if Windows VMs can roam across them. The latter is simpler in environments like VMware clusters, where any VM might run on any host.

VM Mobility and Clusters:

A common scenario is a VMware vSphere cluster with, say, 5 hosts, running dozens of VMs that can migrate via vMotion. To comply, you must license each host for the maximum number of Windows VMs that could run on it.

In practice, if any Windows VM could run on any host, the safe (and usually most cost-effective) route is to license every host with Datacenter edition (unlimited VMs each) โ€“ this way, it doesnโ€™t matter where VMs move, youโ€™re covered.

If you try to use the Standard edition in a cluster, it gets tricky: you would need to ensure that at no point do more than the allowed VMs run on a host per Standard license on that host, and if VMs move, you might suddenly become under-licensed on a given host.

Microsoftโ€™s 90-day reassignment rule effectively means you canโ€™t continuously shuffle licenses to follow moving VMs. Thus, for highly dynamic or automated VM environments, Datacenter edition on all hosts is the practical solution for compliance and ease of management.

A newer benefit introduced (with Software Assurance) isย Flexible Virtualization,ย which, in some cases, might allow more dynamic license assignment to a centralized pool or to VMs. However,ย itโ€™s primarily aimed at service provider scenarios. For most customer-operated clusters, stick with the standard rules.

Licensing VMs on Third-Party Clouds:

If you run Windows Server VMs on Azure, AWS, or GCP, you have two licensing options: bring your own license (BYOL) or pay for an included license.

On Azure, Microsoft heavily encourages BYOL through the Azure Hybrid Benefit โ€“ you can use your volume licenses with SA or CSP subscriptions to cover Azure VM instances (and Azure also offers unique perks like one Datacenter license covering two instances up to 16 cores each, or Standard license covering one instance up to 16 cores, plus 180-day dual use for migration). We cover Azure specifics in the next article.

On AWS/GCP, if you have a BYO license, you must use dedicated hosts or instances, unless you qualify for the new Authorized Outsourcer scenario. Otherwise, you must use the marketplace images where Windows licensing is included in the hourly rate.

Those marketplace VMs essentially use SPLA on the backend (you pay by the hour for Windows). This ensures compliance without providing a license, but it can be pricier.

Each provider has calculators to compare the costs of bringing your license vs being included. Remember, BYOL on AWS/GCP requires careful adherence to Microsoftโ€™s rules (e.g., no BYOL on multi-tenant default infrastructure for Windows Server, as per the post-2019 rules, except via special arrangements).

Read Licensing Across Programs: EA, CSP, SPLA, Open Value, OEM.

Windows Server Containers and Licensing

Containers vs VMs:

Containers are a lightweight alternative to full VMs. Windows Server supports two types of containers: โ€œWindows Server Containersโ€ (which share the kernel of the host OS, similar to Docker containers on Linux) and โ€œHyper-V isolated Containersโ€ (which each run in a minimal VM for additional isolation).

The licensing rules treat these two container types differently:

  • Windows Server Containers (standard process-isolation containers): These are considered part of the host’s OS environment. Microsoft allows unlimited Windows Server containers on a host without additional licenses, as long as the host is properly licensed. In other words, if youโ€™ve licensed a Windows Server Standard or Datacenter on a machine, you can run as many Windows Server-based containers as you want on that machine, provided they all share the single OS kernel of the host (i.e., they are process-isolated containers, not each with its own OS). There is a caveat forย Standard Edition: unlimited containers are allowed only if they do not use Hyper-V isolation. In practice, โ€œunlimitedโ€ standard containers can run on Standard or Datacenter just fine, limited only by hardware resources.
  • Hyper-V Isolated Containers: Because each of these containers actually uses a separate mini-OS instance (a stripped-down Windows OS in a VM container), Microsoft treats them like VMs for licensing. Standard Edition only allows up to two Hyper-V isolated containers (like two VMs) on a licensed host. If you need more, youโ€™d have to either stack additional Standard licenses or use Datacenter edition (which allows unlimited Hyper-V containers, since it allows unlimited VMs). When you enable Hyper-V isolation for containers, youโ€™re spinning up a hidden VM for each, which counts against your VM rights.

So, if you plan to use containerization on Windows and you might use Hyper-V isolation (for example, some Kubernetes setups on Windows might use Hyper-V isolated pods for greater isolation), keep this in mind: Standard edition will impose a limit of 2 such isolated containers per license, whereas Datacenter wonโ€™t limit it. On the other hand, if you strictly use process-isolated containers (no separate OS per container), even the Standard edition can handle unlimited containers without extra licensing cost.

Example โ€“ Containers on Standard vs Datacenter:

Imagine you have a Windows Server 2019 Standard host and you run Docker on it with 10 container instances of a Windows-based application. If those are normal Windows Server containers (sharing the host OS), thatโ€™s fineโ€”Standard covers them since one license covers the single OS (host), and containers donโ€™t require separate OS instances.

Now, if each container were run with Hyper-V isolation (maybe for compatibility reasons), you would effectively have 10 micro-VMs. Standard would require stacking licenses to cover those (2 allowed per Standard license; 10 containers would need five license iterations on that one host). Datacenter would cover all 10 (and more) with one license on that host. Thus, Datacenter might be the better choice for container-heavy deployments, especially when using Hyper-V isolation.

Licensing Windows Nodes in Kubernetes Clusters:

In a Kubernetes environment with Windows nodes (e.g., using AKS on Azure Stack HCI or a self-managed K8s with Windows worker nodes), each Windows node (host) must be licensed like any other Windows Server.

If the nodes are VMs on a licensed host, their licensing covers them. If the nodes are physical, license each physical node. Essentially, treat each node as a Windows Server instance. The containers running on that node donโ€™t individually incur licensing beyond what we described (unless using Hyper-V isolation, which would mean each such pod is a VM).

Microsoftโ€™s Azure Kubernetes Service on Azure Stack (on-prem) can leverage Azure Hybrid Benefit to waive licensing fees for Windows nodes if you have eligible licenses. Thereโ€™s also a scenario where Azure Arc can track Windows container usage.

Third-Party Container Platforms: If you use Windows containers on, say, AWS or GCP, the licensing is typically tied to the Windows Server OS on the VM or host where you run them. So youโ€™d use your own Windows license in that environment (if allowed) or use the cloudโ€™s Windows-inclusive instances.

Read Windows Server Licensing And Hybrid Cloud and Azure Benefits.

Best Practices for Virtualized Environments

Optimize with Datacenter when Appropriate:

A general rule of thumb is that if a physical host will run more than ~4 Windows VMs, strongly consider the Datacenter edition. The exact break-even can vary with pricing, but often around the third or fourth VM on a host, the Datacenter becomes cheaper (especially if core counts are high).

The administrative simplicity of not worrying about counting VMs is also valuable. Many organizations license all hosts in a cluster with Datacenter even if current VM counts are low, to allow flexibility for growth and movement.

Track VM Locations:

Use tools to map where Windows VMs are running relative to your licensed hosts. For instance, in a hybrid VMware environment, you might have some hosts licensed with Windows and others not. Implement host affinity rules or document which VMs can run where.

If you accidentally move a Windows VM to an unlicensed host (a Linux-only hypervisor host), youโ€™d be unlicensed for that VMโ€™s runtime there. Alternatively, partition clusters such that any cluster running Windows VMs is fully licensed for Windows on all nodes.

Leverage Software Assurance for Mobility:

If you have SA on Windows Server (or use subscription licenses), remember you have some flexibility around moving licenses. Microsoftโ€™s License Mobility for other products (SQL, etc.) doesnโ€™t fully cover Windows Server except for Azure, but starting in 2022, the new outsourcing terms allow more mobility to authorized clouds.

For on-prem, SA allows you to run the same version on new hardware during hardware failover or replacement (there are provisions for disaster recovery: e.g., you can run a passive failover node without additional licenses under certain conditions if you have SA). Ensure your architects know these rights โ€“ for instance, a cold standby DR server may not need a separate license if itโ€™s truly passive and the primary is covered with SA.

Containers Strategy:

Decide if you will use Hyper-V isolation in your container strategy. If not, the Standard edition might suffice for many small container hosts (since youโ€™re effectively just running one OS on each).

If yes, and you plan many such isolated containers, lean toward the Datacenter edition for those hosts. Also, monitor Microsoft announcements: container licensing is a somewhat evolving, and Microsoft has been known to refine definitions (especially as Kubernetes usage grows).

Audit Readiness:

In a virtualized setup, prepare clear evidence of your licensing strategy. For example, keep a spreadsheet or diagram of clusters, indicating which hosts are licensed with Standard (and how many instances of Standard are stacked) vs Datacenter, and map VMs to those clusters. During an audit, youโ€™ll need to prove that at all times, the number of Windows instances on a host did not exceed what was licensed.

Having historical records (from tools like vCenter, SCVMM, or Azure Arc) of VM locations can be incredibly useful in justifying that compliance was maintained. Using the Datacenter edition simplifies this proof since you show host licenses, and all VMs are on licensed hosts.

Recommendations

  • Align License Edition with Virtualization Level: Use Standard Edition for hosts with minimal virtualization (e.g., branch office host running 1-2 VMs). Use Datacenter Edition for heavily virtualized hosts or any virtualization cluster where VMs move frequently. This will ensure cost-efficiency and compliance as VM counts scale.
  • Consider Containers in Planning: If you adopt Windows containers, include those in your licensing count. Remember thatย process-isolatedย containers come โ€œfor freeโ€ with the host license, butย Hyper-V isolatedย containers count as separate OS instances. Plan your edition choice accordingly if you intend to use many Hyper-V isolated containers (theย Datacenter might pay off quickly in that scenario).
  • Implement Controls for VM Mobility: In mixed-license environments, use virtualization management features (like DRS rules in VMware or host groups in Hyper-V) to prevent Windows workloads from drifting to unlicensed hardware. Alternatively, simplify by licensing all potential hosts that could ever run Windows with at least a base Windows license to cover emergencies (some organizations keep a spare Standard license on otherwise Linux hosts just in case a Windows VM lands there, though officially that wouldnโ€™t cover multiple VMs).
  • Use Hybrid Benefits Wisely: If you extend workloads to Azure, leverage Azure Hybrid Benefit for VMs (covered in the next article) to avoid double-paying for Windows. Similarly, for disaster recovery or test environments, consider Azure or other options to use existing licenses in the cloud for 180 days while still running on-prem (Microsoft allows certain dual-use during migration or DR with SA).
  • Monitor and Document: Treat your virtual infrastructure like a licensable asset. Utilize inventory tools that report how many Windows OS instances are running and where. Regularly compare that to your license entitlements. If you see a trend of increasing VMs, proactively acquire the necessary licenses or switch editions before an audit forces a true-up at possibly higher costs. Documentation of your licensing rationale (like why you chose X licenses for Y hosts) can help stakeholders understand the budget needs and avoid sprawl.
  • Stay Informed on Licensing Changes: Microsoftโ€™s rules for virtualization have evolved (for instance, the introduction of Azure Arcโ€™s new billing or changes to outsourcing rights in 2022). Keep your team updated via licensing briefs or experts. If container technology or VM technology changes (say, a new feature that affects isolation), check for an accompanying licensing update.
  • Consult Experts for Complex Scenarios: Virtual environments can become complex, especially with hybrid cloud, VDI, or hosting involved. Engaging an independent licensing consultant (like Redress Compliance) to perform a virtualization licensing assessment can be invaluable. They can identify compliance gaps (e.g., unintentional over-provisioning of VMs beyond license allowances) and suggest optimizations (like consolidating under Datacenter licenses or using particular Software Assurance benefits for DR). This guidance can save money and risk in the long run.

Do you want to know more about our Microsoft Advisory Services?

Please enable JavaScript in your browser to complete this form.
Name
Author
  • Fredrik Filipsson has 20 years of experience in Oracle license management, including nine years working at Oracle and 11 years as a consultant, assisting major global clients with complex Oracle licensing issues. Before his work in Oracle licensing, he gained valuable expertise in IBM, SAP, and Salesforce licensing through his time at IBM. In addition, Fredrik has played a leading role in AI initiatives and is a successful entrepreneur, co-founding Redress Compliance and several other companies.

    View all posts