Link to home
Start Free TrialLog in
Avatar of Pau Lo
Pau Lo

asked on

SQL volume liscensing

As I am new to microsoft liscensing in general, if you have an enterprise agreement with MS - they now offer a portal of all liscences purchased as part of this agreement. For MSSQL it only states for example SQL Server enterprise Core - effective quantity - 12. Liscence version 2014.

Yet we dont have a single installation of MSSQL 2014. Is the version information that relevant. As long as you have 12 copies of MSSQL only at various versions (i.e. 2005, 2008, 2012 etc), does it really matter if that portal shows 2014. Or should you have a set of liscences for the various versions? i.e. 3 installations of 2008 - 3 2008 liscences. I noticed the portal also stated the same for Exchange server, i.e. 2013 yet we were on 2010, so perhaps it just details the latest upgradable version, no neccesarily the ones installed in your infrastructure?

Also how does a "core" liscence work - especially on virtual servers on ESXi hosts. Do you treat each virtual server as a unique entity, or do you have to consider the hardware spec of the host.
SOLUTION
Avatar of Mohammed Khawaja
Mohammed Khawaja
Flag of Canada image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of Kimputer
Kimputer

You probably have Software Assurance? That's why the newest version is besides it. Without Software Assurance (maybe due to budgetary contraints), the version would be "stuck" at the version you bought it at that time. With SA (if you keep paying), it will always jump to the newest current version.

Here's Microsoft's Per Core Licensing Definition as PDF: file:///C:/Users/Kimputer/Downloads/PerCoreLicensing_Definitions_VLBrief.pdf

Here's a Microsoft official talking about it in "normal" language on Technet: http://blogs.technet.com/b/uktechnet/archive/2014/04/16/licensing-logic-licensing-sql-server-everything-you-need-to-know.aspx
See text below Figure two.
Avatar of Pau Lo

ASKER

An you give a beginners guide yo how to match this.... if you have 12 vms all running sql server... and 8 core liscences... how can you check you are compliant... what exactly do you check?
Avatar of Pau Lo

ASKER

*can
Translating from this quote on the link I gave earlier:

With the SQL Server 2014 Enterprise edition (note: not Standard edition), if you licence all the physical cores on the server, you can run an unlimited number of instances of SQL Server, physically or virtually as long as the number of OSEs with SQL doesn’t exceed the number of licensed cores

That translates to max 8 VMs on that machine since you have an 8 core licence
Avatar of Pau Lo

ASKER

These vms are scattered over many different hosts
We still have to figure out if you really have Software Assurance or not though. As with the added RUNNING Software Assurance, some hardware can run an unlimited number of VM's, as long as the Software Assurance continues.
Depending on your scattered hosts, the 12 VM's might still be covered.
If you DON'T have Software Assurance, you most certainly need to have 4 more core licenses.
Avatar of Pau Lo

ASKER

It does include software assurance..
Avatar of Pau Lo

ASKER

Will I need a list of all hosts, all VM's with SQL installed, a list of which VM's are on each host, and a number of cores per host to do this properly?
It's better to map it out now, list all SQL installations in all Server/Cores/VM.
Download Microsoft MAP.  It can scan your network and provide you an inventory of all SQL servers, versions, if installed in a virtualized environment or not.
Avatar of Pau Lo

ASKER

We have the mapt sql report just dont really understand how you can map that to 8 core liscences
20 needed if NO Software Assurance
4 needed if current Software Assurance is valid.
Avatar of Pau Lo

ASKER

Right so I checked the MAPT report.

There are 19 separate installations of MSSQL. Installed on 14 different servers. Of which 13 are virtual machines the other is a physical. 3 servers have more than 1 installation of SQL (3 instances on 2 servers, 2 on another). The number of total cores column isn’t always complete in the MAPT scan, the number of processors on the 14 unique servers total to 17, 3 servers have 2 processors most have 1. As before the enterprise agreement has 8 core licences. I can check vmware to see which of the VM’s are running on which host.

What else do we need to know now?
Avatar of Pau Lo

ASKER

As before there is software assurance .
Avatar of Pau Lo

ASKER

number of "logical processors" = 20. for the 14 unique systems
ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of Pau Lo

ASKER

I'll try and map the cores to the servers and see how many of those hosts are hosting VM's running SQL.
Avatar of Pau Lo

ASKER

To make the most of your investment does it then make sense to consolodate the number of hosts hosting VM SQL Servers? As the more your spread your SQL VM's across hosts the greater number of cores you need to cover? Is that valid? The difficulty with VM is that as they are joined to a cluster any of the hosts in the network could at any stage take over the hosting of a certain VM if a host failed or ws suffering performance issues (DRS).
What you need to do is analyze as to what makes sense.  How many users do you have that access SQL servers?  For sake of argument, if you have only 40 users then you could purchase SQL CALs and purchase Standard SQL server licenses.  If you have 4000 users buy core licenses as there will be no CALs required.  First thing to do is consolidate multiple SQL servers in to smaller number of SQL servers.
Avatar of Pau Lo

ASKER

fao kimputer, sorry for the delay... I have done some further digging. Basically we have 4 physical hosts running VM's (3 SQL VM's on 2 hosts, 4 SQL VM's on 1 host, and 2 VM's on the 4th host), with SQL installed. Each of the ESXi hosts has 12 cores.

There is also have 1 physical server - with this processor Intel(R) Xeon(R) CPU 3040 @ 1.86GHz (no idea how that computers into "cores" - can you assist?).

So with this in mind, with 8 core SQL liscences, how badly under liscenced are the IT team?

I was also interested when you said you dont have to liscence every core on the server in your previous comments. If say you have 12 cores, but only liscence 2 of those, does that mean SQL Server can only use 2 of those cores? If so do you need to configure something in SQL to say you can only use 2 of the 12 cores for processing power? Basically with 5 physical systems, and 8 core liscences, they need to split the 8 between 5 systems from what I understand.
(3 SQL VM's on 2 hosts, 4 SQL VM's on 1 host, and 2 VM's on the 4th host),
That already amounts to 12 (assuming the line, 3 SQL VM's on 2 hosts means 6 total).

Xeon 3040 is dual core.

I thought you said earlier you had 12 effective licenses?

But with 8 licenses, you either need 4 more, or you have to move around to be fully licensed. You have to move 6 to the Xeon machine (this one takes 2 licenses, but can host unlimited SQL, because you have Software Assurance and licensed ALL cores on that machine). That leaves 6 licenses for wherever you want on the 4 hosts you mentioned earlier.
Avatar of Pau Lo

ASKER

No sorry... 8 core licences when i checked. I thought that totals 14 if the physical takes up 2 more.
You didn't mention you installed anything on the Xeon. You need 14 indeed if you have 2 or more SQL server on the Xeon.
Avatar of Pau Lo

ASKER

Sorry the physical is also running sql server and its essentially just one server not hosting vms.
Then it's 13 total.
Avatar of Pau Lo

ASKER

Still not getting this.... if sql is installed on one or more vm or physical over 5 physical hosts which have a total of 50 cores. Why is it 14 core liscences required and not 50. Excuse my ignorance in this area.
You don't need to license all the cores. You only license ALL the cores if you want to take advantage of your running valid software assurance, to have the advantage to use unlimited SQL installations.
If you don't, just count any SQL installation as 1 core license.
12 core machine = 1 SQL installation = 1 core license
12 core machine = 11 SQL installation = 11 core license
12 core machine = 1100000  SQL installation = 1100000 core license (no Software Assurance)
12 core machine = 1100000  SQL installation = 12 core license (with Software Assurance)
2 core machine = 1 SQL installation = 1 core license
2 core machine = 2 SQL installation = 2 core license
2 core machine = 1100000  SQL installation = 1100000 core license (no Software Assurance)
2 core machine = 1100000  SQL installation = 2 core license (with Software Assurance)
Avatar of Pau Lo

ASKER

Ok so in that case some of the vms i mentioned have more than 1 installation of mssql whereas others just have 1:1. So if a vm has 3 installations of sql i presume that means 3 licences not just 1 for the entire vm
Avatar of Pau Lo

ASKER

Should have read your comment more clearly, ignore the last question
Avatar of Pau Lo

ASKER

>>If you don't, just count any SQL installation as 1 core license.

Totally respect your comments, but is there anything from MS to backup the above comment. I checked the links provided and couldnt see anything to match the above statement. Althought it was a bit wordy to say the least (the MS article).
Ow wow, it's more complicated actually, I missed a few lines while reading all the documents. So bear with me. Your inventory was not complete. Because I DO have to count the cores. And what's worse, there's a minimum of 4 core licenses (even if your VM has 1 core assigned). The ratio you mentioned doesn't matter in the core licenses though.

12 core machine = 1 SQL installation in one VM assigned 1 core = 4 core license (because it's a minimum)
12 core machine = 1 SQL installation in one VM assigned 8 core = 8 core license (because it's a minimum)
12 core machine = 11 SQL installation in 11 VM's each assigned 1 core = 44 core license (because of the 4 mininum cores)
12 core machine = 1100000  SQL installation = 12 core license (with Software Assurance)
2 core machine = 1 SQL installation  in one VM assigned 1 core = 4 core license
2 core machine = 2 SQL installation on 2 VM's each with 1 core  = 8 core license
2 core machine = 1100000  SQL installation = 4 core license (with Software Assurance)

Are you still with me? You have to adjust your answer:

(3 SQL VM's on 2 hosts (VM1 assigned x cores, VM2 assigned x cores) , 4 SQL VM's on 1 host (VM1 assigned x cores, etc), and 2 VM's on the 4th host), etc
Give the core assigneent for each VM
At a minimum though, you are already looking at 48 core licenses (plus 4 for the Xeon). If a VM is assigned more than 4 cores, it will add up.
Avatar of Pau Lo

ASKER

Sorry been away will reply asap.
Avatar of Pau Lo

ASKER

Just for clarity sake, can you elaborate on:

>At a minimum though, you are already looking at 48 core licenses
I calculated your minimum, as MS puts a 4 core license minimum. Since you never provided core assignment, it can only get worse. 1 core assignment = 4 core license,  2 core assignment = 4 core license, but 6 core assignment = 6 core license.
Avatar of Pau Lo

ASKER

So in a nutshell, add up the number of cores on all machines running SQL Server - and that is your "best case" number?
Add ALL number of cores assigned to these VMs/SQL installs. Always count 4, even if 1 core is assigned. Count MORE than 4 if more than 4 cores are assigned, so assign 8 licenses if 8 cores are assigned.
Avatar of Pau Lo

ASKER

So 2 installations of SQL on the same VM = 8 cores required?
It's about the VM, so 2 installations is still 1 VM. If the VM is assigned 1 through 4 cores, it's 4 core licenses, if more cores, more core licenses are needed.
Avatar of Pau Lo

ASKER

So to recap our infrastructure is:

4 physical hosts running VM's (3 SQL VM's on 2 hosts, 4 SQL VM's on 1 host, and 2 VM's on the 4th host), with SQL installed. Each of the ESXi hosts has 12 cores. There is also have 1 physical server - with this processor Intel(R) Xeon(R) CPU 3040 @ 1.86GHz.

That is 3x4 + 3x4 + 4x4 + 2x4 + 1x4 = 52 (minimum?). Is that correct?
For a MINIMUM count, you are correct. But why you need the minimum and not the EXACT amount licenses? As always with MINIMUM, you could be wrong!

Every VM is assigned a number of cores, that's the info I'm missing. Please use this format:

12 cores host has:
1 VM (with SQL installation, doesn't matter how many) with xx cores
1 VM (with SQL installation) with xx cores
1 VM (with SQL installation) with xx cores


2 core host has:
1 VM (with SQL installation) with xx cores

etc etc