Licensing software is often a more complicated process than I think it should be. Licensing database software seems to be even more difficult to understand, especially when you start to talk about the various high availability (HA) scenarios, virtualized servers, separate machines to process SSIS packages and who knows what other configurations, not to mention the licensing changes with each new version of SQL Server.
I was following a licensing debate about how you license passive servers in an HA situation. I have always understood from the SQL Server licensing documents that if you have a passive server, it does not require a license for the SQL Server software. However it’s not that simple, or at least, it doesn’t appear that way to me.
Suppose you have an primary instance that mirrors its database to another server. The mirror instance doesn’t need a license for that database, but what about if you also log ship your primary database to a third server? Does the third server need a license if it’s also “passive”? I assume that if you had second database on the mirror instance being used for another application, you’d need a license for that instance, but what if you only have a “DBA database” that gathers performance monitoring information for that mirror database? Is that “passive”?
Suppose I have a 6 node cluster, and I have 4 active nodes and two passive ones, do I still have 2 other “passive” licenses for log shipped servers? Or can I log ship to 4 separate servers? That doesn’t even bring this clause into play: “The passive server can take the duties of the active server for 30 days. Afterwards, it must be licensed accordingly” (from 2005 licensing). It almost feels like I am studying some type of Microsoft Internal Licensing Framework in preparation for some type of certification.
To me, the simple way to handle this is to say that passive servers, those not doing any work for the business that owns them, don’t require a license. The exception would be for internal monitoring or maintenance on the passive server (backup restores, DBCC checks, DBA sysadmin monitoring). I doubt we’ll get something that simple, but that’s what I think would be fair.
(originally published at http://www.sqlservercentral.com/articles/Editorial/72338/)