Jedním z nejdražších produktů společnosti Microsoft, s nímž se v nějaké podobě setkáváme téměř u každého zákazníka, je SQL Server. Nabízí se v několika edicích a ve třech rozdílných licenčních režimech: Server a CAL, Per Core a jako služba SQL Azure. Ačkoli jsou licenční podmínky už po mnoho let v základních principech stále stejné, mnoho uživatelů i dodavatelů IT jim stále nevěnuje dostatečnou pozornost, a tak si koledují o značné problémy a postihy v případě auditů a kontrol. Jelikož těm, kteří chtějí mít software legálně, odpovídáme často na stále stejné dotazy, rozhodli jsme se vytvořit seriál, který bude vysvětlovat opakující se scénáře nasazení a jejich korektní licenční řešení. Začneme modelem, který využívá populární cestu k pořízení SQL Serveru spolu s aplikací třetí strany, jež do něj ukládá data – tzv. SQL Runtime.

Radek ŽaludRadek Žalud
LicenceLicence
25.09.2013 17:37:0025.09.2013 17:37:00

Radek Žalud

technický a licenční specialista

ALSO Czech Republic s.r.o.
+420 222 512 201
+420 603 442 434
daquas@daquas.cz
Anny Letenské 7, Praha 2

SQL Server a Hyper-V Failover cluster

Jedním z nejdražších produktů společnosti Microsoft, s nímž se v nějaké podobě setkáváme téměř u každého zákazníka, je SQL Server. Nabízí se v několika edicích a ve třech rozdílných licenčních režimech: Server a CAL, Per Core a jako služba SQL Azure. Ačkoli jsou licenční podmínky už po mnoho let v základních principech stále stejné, mnoho uživatelů i dodavatelů IT jim stále nevěnuje dostatečnou pozornost, a tak si koledují o značné problémy a postihy v případě auditů a kontrol. Jelikož těm, kteří chtějí mít software legálně, odpovídáme často na stále stejné dotazy, rozhodli jsme se vytvořit seriál, který bude vysvětlovat opakující se scénáře nasazení a jejich korektní licenční řešení. Začneme modelem, který využívá populární cestu k pořízení SQL Serveru spolu s aplikací třetí strany, jež do něj ukládá data – tzv. SQL Runtime.

Scénář řešení

Zákazník má vybudovaný tříuzlový Hyper-V Failover klastr. Každý uzel (nod) má dva fyzické procesory po čtyřech jádrech. Ve virtuálním prostředí je nainstalovaný server s Windows 2012 Serverem a SQL Serverem 2012 Standard. Virtuální server bude mít přidělen výkon poloviny fyzického procesoru (dvě fyzická jádra), tedy dva virtuální procesory (HTT vypnuto). Jak správně licencovat toto řešení prostřednictvím Runtime licence SQL Serveru 2012, aby ten mohl bez omezení migrovat na kterýkoliv uzel klastru?

Základní předpoklady

Přiřazení licencí

Před spuštěním instance jakéhokoli serverového produktu je licenci nejprve nutno přiřadit. Licence se přiřazuje vždy fyzickému serveru, a to i v případě, že je SQL Server 2012 provozován ve virtuálním prostředí. Změnu tohoto přiřazení licencí z jednoho fyzického serveru na jiný je možné provést nejdříve po 90 dnech od předchozího přiřazení licencí, nebo v případě, že skončí životnost licencovaného serveru z důvodu neopravitelné hardwarové závady.

Potřebný počet licencí

Před přiřazením licencí fyzickému serveru je nutno stanovit počet potřebných licencí SQL Serveru 2012 Standard. SQL Serveru v licenčním režimu Per Core je vždy nutné přidělit tolik licencí, kolik je virtuálních jader alokovaných operačnímu systému! Vždy jsou však potřeba minimálně čtyři licence na jádro na jeden virtuální server.

Licenční mobilita uvnitř serverových farem

Aby bylo možné migrovat virtuální server z jednoho serveru (uzlu klastru) na druhý, je třeba nejprve změnit přiřazení licencí z jednoho serveru na druhý. Tuto změnu přiřazení licencí je ovšem možné provést nejdříve po 90 dnech od předchozího přiřazení licencí, a proto i migraci virtuálního serveru s instalovaným SQL Serverem je možné provést až po této době.

Jiná je ale situace zákazníků, kteří mají licence k SQL Serveru pořízeny s aktivním předplatným Software Assurance! Ti mohou využít práva License Mobility v rámci serverových farem, které jim umožňuje měnit přiřazení licencí mezi jednotlivými servery v rámci serverové farmy libovolně často. Proto mohou tito zákazníci migrovat virtuální server s SQL Serverem mezi jednotlivými uzly klastru také libovolně často.

Licence SQL Server Runtime

Nezávislí výrobci a dodavatelé vlastních aplikací (ISV, Independent Software Vendor) mohou do těchto aplikací zahrnout potřebné technologie společnosti Microsoft a dodávat je zákazníkům jako jedno ucelené řešení. Když zákazník technologii společnosti Microsoft využívá výhradně s tímto uceleným řešením, může k pořízení SQL Serveru využít cenově výhodnější licenci SQL Server Runtime. Ta má však svá zcela specifická licenční omezení.

Správné licenční řešení

Pro určení potřebného počtu licencí SQL Serveru 2012 je rozhodující to, že SQL Server bude instalován ve virtuálním prostředí. Operačnímu systému ve virtuálním prostředí budou přiřazena dvě fyzická jádra, bude tedy využívat dva virtuální procesory. I přes to, že budou využita pouze dvě jádra, vyžaduje licenční politika SQL Serveru 2012 pro řádné pokrytí instance na virtuálním serveru přiřadit minimálně čtyři licence na jádro pro jeden virtuální server. V našem příkladu bude tedy potřeba přiřadit čtyři licence na jádro fyzickému serveru, na kterém bude provozován virtuální server s SQL Serverem 2012.

K tomu, aby mohla instance SQL Serveru 2012 volně migrovat mezi všemi třemi uzly klastru, bude zákazník potřebovat využít práva License Mobility, které je podmíněno pokrytím všech čtyř licencí SQL Serveru 2012 aktivní Software Assurance. Jedním z možných řešení je tedy pořízení čtyř licencí na jádro SQL Serveru 2012 včetně Software Assurance prostřednictvím některé z multilicenčních smluv. Software Assurance je potřeba obnovovat, aby právo License Molibity platilo stále.

Jak by to bylo v případě licence SQL Server 2012 Runtime, ke které není možné pořídit pokrytí Software Assurance a která žádnými právy License Mobility nedisponuje? Aby zákazník vyřešil problém s omezením přeřazení licence z jednoho serveru na druhý nejdříve po devadesáti dnech, musel by licencemi SQL Serveru pokrýt všechny uzly klastru, všechny fyzické servery, na kterých může dojít ke spuštění SQL Serveru 2012, tedy na které může instance SQL Serveru 2012 migrovat. Pro správné řešení by tedy bylo potřeba dvanáct licencí na jádro SQL Server 2012 Runtime, čtyři na každý ze tří uzlů klastru. Pokud by byl v budoucnu do klastru připojen další uzel, na který by mohl migrovat virtuální server s SQL Serverem 2012, bylo by nutné i pro tento uzel pořídit nové licence SQL Serveru 2012 Runtime. Vždy je potřeba zvážit celkové náklady a především perspektivy a plány do budoucna, aby bylo možné posoudit, která cesta je ekonomičtější.

Otázky a odpovědi

Musím koupit licence pro všechny virtuální procesory operačního systému, když SQL Server bude využívat jen polovinu z nich?

Ano. U SQL Serveru 2012 v licenčním modelu podle využitých jader je ve virtuálním prostředí nutné přiřadit licenci všem virtuálním jádrům, která využívá instance operačního systému, v němž je instalován SQL Server.

Stejně tak ve fyzickém prostředí je nutné pokrýt všechna fyzická jádra využitá instancí operačního systému bez ohledu na to, kolik jader skutečně využívá samotný SQL Server 2012. Toto pravidlo obdobně platilo již dříve pro licence Per Processor.

Pokud virtuální server používá jen dva virtuální procesory, budou mi stačit jen dvě licence SQL Serveru na jádro?

Ne. Jednomu virtuálnímu serveru je vždy nutné přiřadit nejméně čtyři licence na jádro.

Ovlivňuje nějak počet potřebných licencí ve virtuálním serveru využití hyperthreadingu?

Ne. Ve virtuálním serveru je nutné licencovat kaž­dé virtuální jádro bez ohledu na to, z jakého fyzického zdroje pochází, zda z jádra nebo vlákna. Pouze pokud by virtuální zdroj pocházel z vícera fyzických zdrojů, například jeden virtuální procesor z dvou fyzických jader, je nutné počítat licence podle počtu fyzických zdrojů.

Může virtuální server s instalovaným SQL Serverem migrovat mezi uzly klastru bez licencí SQL Serveru krytých SA?

Ano. Virtuální server s instalovaným SQL Serverem může migrovat na všechny uzly klastru, které mají přiřazeny potřebné počty licencí SQL Serveru. Změnit přiřazení licencí z jednoho uzlu klastru na druhý lze ovšem nejdříve po devadesáti dnech od předchozího přiřazení. Aktivní pokrytí Software Assurance přináší právo License Mobility, které licence SQL Serveru tohoto devadesátidenního omezení zbaví, změnu přiřazení je pak možno provést libovolně často, tak často, jak budou virtuální servery migrovat.

Může virtuální server s instalovaným SQL Serverem migrovat mezi uzly klastru, pokud je licencován prostřednictvím licencí SQL Server Runtime?

Ne. Licence SQL Server Runtime nedisponují právem License Mobility, a to ani s aktivním předplatným Embedded Maintenance. Jediným možným řešením je přiřadit dostatečný počet licencí SQL Serveru Runtime všem uzlům klastru, na které by mohl SQL Server Runtime migrovat. Toto řešení je vhodné pečlivě propočítat, s ohledem na budoucí potřeby a vývoj – zda je lépe pořídit více levnějších, leč omezených licencí Runtime, nebo raději dražší, ale flexibilnější v použití licence se Software Assurance.

Můžu migrovat SQL Server 2012 i na sdílené servery třetí strany (do Cloudu)?

Ano. Zákazníci, kteří mají licence k SQL Serveru pořízeny s aktivním předplatným Software Assu­rance, mohou využít i práva License Mobility poskytovaného programem Software Assurance, které zákazníkovi umožní přenést jednou za 90 dní licence i do prostředí veřejného cloudu, tedy na sdílené servery třetích stran.

Můžu migrovat SQL Server 2012 Runtime i na sdílené servery třetí strany?

Ne. Licence SQL Server Runtime nedisponují tímto právem License Mobility, a to ani s aktivním předplatným Embedded Maintenance. SQL Server Runtime je možné přenést na servery třetích stran, pouze pokud tyto fyzické servery nejsou sdíleny více zákazníky a jsou tedy celé dedikovány jednomu zákazníkovi. Připomínáme, že podle licenčních pravidel je potřeba licence přiřazovat vždy fyzickým serverům.

Změní se licenční podmínky při využití virtualizačních technologií třetích stran (VMware, Citrix)?

Ne. Licenční podmínky pro produkty společnosti Microsoft jsou při využití různých virtualizačních technologií vždy stejné a konzistentní.

Je možné namísto licence SQL Server 2012 Standard Runtime instalovat a užívat verzi SQL Server 2008 R2 Runtime?

Ne. Licence z programu ISV Royalty nedisponují právem downgrade na starší verzi produktu. ISV partner však může jako součást svého řešení dodávat předchozí verzi SQL Serveru ještě dva roky poté, co oficiálně vyjde verze nová. Pokud zákazník požaduje z nějakého důvodu downgrade na starší verzi SQL Serveru, musí licence pořídit v některém z multilicenčních programů a následně uplatnit právo na downgrade. Je však dobré si uvědomit, že licenční pravidla, kterými se použití starší verze bude řídit, odpovídají verzi zakoupené, tedy aktuální.

V dalším vydání Softwarového QUASu se budeme věnovat SQL Serveru dodávanému s aplikací třetí strany jako tzv. Runtime a jeho vazbám na další aplikace a moduly stejného či jiných dodavatelů.