Licensing SQL Server 2019 Std Ed in Kubernetes

Олег Трутнев 20 Reputation points
2024-01-29T15:08:18.8933333+00:00

Hello, Our company wants to run SQL Server 2019 Std in Openshift (read Kubernetes). One important topic is licensing in such setup. And here licensing guide did not provide any help. Imagine that we have 4 instances on SQL Server running in 4 pods on the same worker node. Node has 16 cores. Each SQL Server deployment has CPU limit set to 4 (meaning 4 full CPU cores in processor time). BUT, Kubernetes exposes all CPUs to every pod, limiting only the total CPU time consumed. So practically speaking, each SQL Server instance thinks it has 16 CPU cores and can actually utilize a little bit of every CPU core. Even with CPU manager policy applied and pinning pods to specific CPUs, SQL Server still reports 16 cores. If I refer to licensing guide and apply it directly, then we should buy 4x16 licenses (which sounds really crazy). The reason for this is that all over the licensing guide we can see that cores count is an absolute measure and no matter what fraction of core we are actually able to utilize. We could've license the whole host with 16 licenses but this is not applicable to Standard Edition. Please tell me that I am wrong (with some reasonable proofs), otherwise it does not make any real sense to run SQL Server Std Edition in k8s.

SQL Server
SQL Server
A family of Microsoft relational database management and analysis systems for e-commerce, line-of-business, and data warehousing solutions.
14,492 questions
0 comments No comments
{count} votes

Accepted answer
  1. Bruce (SqlWork.com) 72,996 Reputation points
    2024-01-29T16:38:28.6166667+00:00

    you should really contact MS licensing rather than use a public supported forum. But you are essentially correct. you can:

    restrict the Kubernetes pod cpu count via assigning cpus:

    https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#static-policy

    switch to 2019 enterprise which has different licensing.

    1 person found this answer helpful.

0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.