Jedním z dražších produktů společnosti Microsoft, s nímž se 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 stejné, mnoho uživatelů i dodavatelů IT jim nevěnuje dostatečnou pozornost, a tak si koledují o značné problémy a postihy v případě auditů a kontrol. Těm, kteří chtějí mít software legálně, odpovídáme často na stále stejné dotazy, proto jsme se rozhodli vytvořit seriál, který bude vysvětlovat opakující se scénáře nasazení a jejich korektní licenční řešení. Stěžejním tématem prvního dílu byl Hyper-V Failover cluster, tentokrát se zaměříme na SQL Server Runtime integrovaný společně s dalšími řešeními.

Radek ŽaludRadek Žalud
LicenceLicence
29.11.2013 12:02:0029.11.2013 12:02: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 Runtime společně s dalšími řešeními

Jedním z dražších produktů společnosti Microsoft, s nímž se 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 stejné, mnoho uživatelů i dodavatelů IT jim nevěnuje dostatečnou pozornost, a tak si koledují o značné problémy a postihy v případě auditů a kontrol. Těm, kteří chtějí mít software legálně, odpovídáme často na stále stejné dotazy, proto jsme se rozhodli vytvořit seriál, který bude vysvětlovat opakující se scénáře nasazení a jejich korektní licenční řešení. Stěžejním tématem prvního dílu byl Hyper-V Failover cluster, tentokrát se zaměříme na SQL Server Runtime integrovaný společně s dalšími řešeními.

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í.

Scénář nasazení

Zákazník provozuje ERP systém dodaný jako ucelené řešení společně s SQL Serverem 2012 Standard Runtime v licenčním režimu Server + CAL. Nyní by chtěl vybudovat elektronický obchod, který by s interním ERP systémem integroval tak, aby se veškeré obchodní transakce, provedené v elektronickém obchodě, automaticky promítaly do účetnictví vedeného v ERP systému a zároveň aby se z ERP systému do elektronického obchodu automaticky promítaly veškeré informace o dostupnosti a cenách nabízeného zboží.

Základní předpoklady

Multiplexování

Multiplexování je proces, při němž hardwarovými nebo softwarovými prostředky dochází ke sdružování spojení nebo přesměrovávání informací, čímž se redukuje počet uživatelů či zařízení, která přímo přistupují k SQL Serveru. Typickými multiplexory jsou například aplikační servery. V licenčním režimu Server + CAL však multiplexování nesnižuje počet licencí CAL potřebných pro koncová zařízení nebo uživatele, protože všechna zařízení i všichni uživatelé, kteří přistupují k SQL Serveru nepřímo prostřednictvím aplikačních serverů nebo jiných multiplexorů, potřebují přístupovou licenci CAL.

Omezení licence SQL Server Runtime

SQL Server Runtime má dodatečná licenční omezení; tím základním je to, že zákazník nesmí Runtime licenci využívat žádným způsobem k podpoře běhu jiných řešení než toho, se kterým licenci pořídil, tzv. uceleným řešením. Žádná aplikace, která není přímou nebo modulární součástí uceleného řešení, nesmí na SQL Server Runtime zapisovat, ukládat nebo modifikovat data, popřípadě vytvářet databáze a tabulky. Stejně tak nesmí být nad SQL Serverem Runtime vyvíjena žádná nová aplikace.

Licencování v režimu Server + CAL

V licenčním režimu Server + CAL musí zákazník pořídit serverovou licenci pro každý server, na kterém běží instance SQL Serveru, a klientskou přístupovou licenci (CAL) každému zařízení nebo uživateli, který přímo či nepřímo (viz pravidlo multiplexování) přistupuje k SQL Serveru nebo jeho součástem. Uživatelem se v tomto případě myslí fyzická osoba, zařízením se myslí koncové zařízení typu desktopu, přenosného počítače, tabletu, chytrého telefonu atp.

Windows Server 2012 a webové úlohy

Na Windows Serveru 2012 lze provozovat internetová webová řešení, tedy veřejně přístupné webové stránky nebo aplikace, jejichž obsah, vystavované informace a nabízené aplikace nejsou omezeny jen na zaměstnance společnosti vystavující daný obsah a informace. Typickým internetovým webovým řešením je například elektronický obchod. Naopak ERP a CRM systémy typicky mezi taková řešení nepatří, protože informace (alespoň jejich část) v těchto systémech jsou omezeny pouze na zaměstnance společnosti.

Pro přístup k webové úloze na Windows Serveru 2012 nejsou vyžadovány klientské přístupové licence CAL.

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

Správné licenční řešení se skládá ze dvou částí. Nejprve je nutné vyřešit správné licencování samotného elektronického obchodu, a to jak SQL Serveru, tak i Windows Serveru, na kterém SQL Server běží. Následně je ale nutné zvážit, zda tato změna neovlivňuje i způsob licencování ERP systému, protože způsob užívání ERP systému se integrací dalšího řešení z licenčního hlediska zásadně změnil.

Licencování elektronického obchodu

Elektronický obchod je typickým internetovým webovým řešením. Může tedy na Windows Serveru 2012 běžet jako webová úloha a pro jeho licencování není potřeba pořizovat přistupujícím uživatelům klientské přístupové licence CAL. Pro správné licencování elektronického obchodu nám bude stačit serverová licence Windows Serveru 2012. (U starších verzí zde dobře posloužila specifická edice Windows Web Server.)

Vzhledem k tomu, že nejsme schopni spočítat celkový počet do e-shopu přistupujících uživatelů nebo zařízení, je jediným vhodným licenčním modelem pro SQL Server 2012 režim podle počtu využitých jader, který nezohledňuje počet přístupů. Webová edice SQL Serveru, určená právě pro podporu internetových webových řešení, je dostupná pouze pro poskytovatele hostovaných služeb (v licenčním modelu SPLA), běžný koncový zákazník si i pro provoz elektronického obchodu musí pořídit edici SQL Server 2012 Standard (nevystačí-li s Express Edition).

Licenční pokrytí ERP systému

Pro správné licenční řešení je nutné vzít v úvahu, že SQL Server ERP systému bude integrován s SQL Serverem elektronického obchodu a mezi těmito systémy bude docházet k multiplexování. Všichni návštěvníci elektronického obchodu se tak zároveň stanou nepřímými uživateli SQL Serveru určeného pro ERP systém. Z toho vyplývá, že po integraci ERP systému s elektronickým obchodem nebudeme schopni spočítat celkový počet uživatelů databáze ERP systému a jediným vhodným licenčním modelem pro tento SQL Server je režim podle počtu využitých jader. Licenční režim Server + CAL už nebude možné nadále využít. Bohužel přechod z jednoho licenčního modelu do druhého není možný jinak než tím, že zákazník pořídí nové licence.

Pokud zákazník pokrývá ERP systém prostřednictvím licence SQL Server 2012 Runtime, je třeba vzít v úvahu také všechna licenční omezení Runtime. Tedy že SQL Server smí sloužit výhradně pro podporu běhu uceleného řešení. Pouze aplikace, které jsou součástí tohoto uceleného řešení, smějí do databáze na tomto SQL Serveru data zapisovat, ukládat a modifikovat je. Pokud řešení elektronického obchodu není součástí uceleného řešení, nesmí tato aplikace zapisovat a ukládat data do SQL Serveru Runtime ERP systému, ani v něm nesmí data modifikovat. Pokud řešení elektronického obchodu nepatří mezi součásti uceleného řešení (modul), je potřeba zajistit pro ERP systém licence SQL Serveru 2012 bez omezení cenově výhodnější licence Runtime.

V pokrytí Windows Serveru 2012, na kterém je instalovaný SQL Server ERP systému, také došlo integrací s elektronickým obchodem ke změnám. Jejich pokrytí však není tak náročné jako u SQL Serveru. Ke správnému řešení totiž i nadále zužitkujeme serverovou licenci Windows Serveru 2012 a přístupové licence CAL pro zaměstnance společnosti. Nově ale bude k Windows Serveru 2012 prostřednictvím multiplexování přistupovat nedefinovatelný počet externích uživatelů z elektronického obchodu. Přístup těchto uživatelů je však možné pokrýt prostřednictvím licence externího připojovacího modulu (External Connector), kterou lze k  Windows Serveru 2012 kdykoli dokoupit.

Otázky a odpovědi

Mohu SQL Server, který vystavuje svůj obsah do sítě Internet, licenčně pokrýt v režimu Server + CAL?

Ne. V licenčním režimu Server + CAL je nezbytné přiřadit licenci každému uživateli nebo zařízení, kteří k SQL Serveru přistupují přímo nebo nepřímo. Tedy i všem anonymním uživatelům (nebo jejich zařízením), kteří k SQL Serveru přistupují ze sítě Internet. Vzhledem k tomu, že není reálně možné určit přesný počet těchto uživatelů, je v tomto případě jediným správným licenčním modelem licencování podle počtu využitých jader, které nezohledňuje celkový počet přistupujících uživatelů.

Je pro způsob pokrytí rozhodující to, zda se uživatelé k elektronickému obchodu přihlašují?

Ne. Skutečnost, že se uživatelé elektronického obchodu ověřují, není z licenčního hlediska rozhodující. Ani licenční podmínky SQL Serveru 2012, ani licenční podmínky Windows Serveru 2012 ji nijak nezohledňují. Tato skutečnost neovlivňuje ani to, zda se u elektronického obchodu na Windows Serveru 2012 jedná o webovou úlohu nebo ne.

Musím pořídit 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 režimu pokrytí podle využitých jader je ve virtuálním prostředí nutné přidělit licence pro všechna virtuální jádra přiřazená instanci operačního systému, ve kterém je instalován SQL Server. Stejně tak ve fyzickém prostředí je nutné pokrýt licencí 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.

Pokud virtuální server používá jen dva virtuální procesory, budou mi stačit 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, či vlákna.

příštím (posledním) dílu seriálu se budeme věnovat licencování SQL Serveru v režimu vysoké dostupnosti.