Microsoft si na novém SQL Serveru 2008 dal skutečně záležet, nový databázový server přináší lepší výkon a nové možnosti. Stejně tak ale přináší velké množství licencí. Jaké to jsou?
Autoři: Darina Vodrážková (MCP), Jan Horný (MCP), DAQUAS, s r.o.
Děkujeme za příspěvky v komentářích. V příštím článku, který vyjde v TechNet Flash zpravodaji, se pokusíme zapracovat všechny komentáře, které se držely tématu. V TechNet Flash zpravodaji vycházejí články o licencování z dílny firmy DAQUAS, s r.o pravidelně.
Víme, že není úplně snadné vyznat se v licenčních podmínkách (zvlášť jestli nemáte ve zvyku číst si smlouvy, kterými začíná každá instalace). Pro snazší orientaci vám tedy přinášíme další z „osvětových“ článků, který si klade za cíl objasnit otázky okolo licencí SQL Serveru. A jelikož je toho víc, co bychom chtěli probrat, čekejte pokračování v příštím vydání zpravodaje TechNet Flash.
Vždycky je dobré ujasnit si požadavky na licence už ve chvíli, kdy navrhujete architekturu řešení, abyste pak třeba nebyli zaskočeni finančními důsledky příliš rozkošaťělého, s grácií dimenzovaného řešení. Protože finální verze SQL Serveru 2008 bude uvolněna již v srpnu, byla licenční pravidla zveřejněna již v červencovém vydání dokumentu PUR (Product Use Rights), který pokrývá celé následující čtvrtletí. Můžeme se s nimi tedy seznámit už teď a nečekat až na zdlouhavou cestu přes několik obrazovek k tlačítku „I agree“.
Takže: co je jinak, než jsme zvyklí z předchozí verze? Možná se to zdá neuvěřitelné, ale v podstatě nic. Pokud si vezmete licenční pravidla pro SQL Server 2005 a přidáte k nim dovětek, který byl vydán s SP2, je opravdu všechno při starém. Objevily se ale novinky v edicích. Čeká nás
Osm edic SQL Serveru 2008
- hlavní edice
Enterprise Edition
Standard Edition - specializované („netradiční“) či jinak podivné…
Workgroup Edition
Express Edition
Compact Edition
Web Edition
Standard Edition for Small Business
Developer Edition
Asi se snadno doberete zjištění, že jedinou změnou jsou dvě nové edice: Web Edition a Standard Edition for Small Business. Obě jsou ale poměrně speciální záležitostí, takže s nimi budeme rychle hotovi.
SQL Server 2008 Web Edition je dostupný pouze v rámci SPLA (Service Provider License Agreement, způsob získání licencí pro poskytovatele služeb na softwarové platformě společnosti Microsoft). Je tedy určen především pro hostery webových stránek a má omezení podobná jako Windows 2008 Web Server – tedy „software may be used only to support public and Internet accessible Web pages, Web sites, Web applications and Web services“.
SQL Server 2008 Standard Edition for Small Business je zase taková specialita, o které se mluví v souvislosti s novým SBS 2008 Premium Edition. Tato edice Small Business Serveru v sobě nese samostatný (dokonce na jiném stroji spustitelný) SQL Server 2008 Standard, který je ovšem součástí licence SBS, a proto má i poněkud specifické licenční „zacházení“.
Základní pravidla
Jako pro všechny servery platí i pro SQL Server několik základních obecných licenčních postulátů. Vzhledem k tomu, že jsme si o nich vyprávěli v předcházejících dílech nebo se o nich detailně zmiňují licenční dokumenty, připomeňme si je bez dalšího vysvětlování:
Multiplexing. Toto ustanovení (Product Use Rights, kapitola Universal License Terms) říká, že pokud uživatel či zařízení přistoupí k nějakému softwaru prostřednictvím jiného zařízení či softwaru, který sdružuje počet připojení, nesníží to nijak potřebu klientských licencí. Jistě si sami dokážete představit nespočet scénářů s SQL Serverem, na které bude mít toto pravidlo zásadní vliv!
Sdílení licencí. Dalším obecným pravidlem je, že licence, pořízené tradičními cestami, které patří jedné firmě, nesmí používat nikdo cizí. „No lease, no hosting…“. Všechny běžné způsoby pořízení licencí (OEM, krabice, multilicence) zapovídají poskytnout produkty k použití třetí straně (pokud se nejedná o „příbuzné“ společnosti nebo o společné podnikání), tedy například pronajmout je, sdílet nebo hostovat. Jediná legální cesta k těmto službám vede přes speciální smlouvu SPLA, Service Provider License Agreement. (Tato problematika spadá do kategorie „licenční vyšší dívčí“, proto se při setkání s ní raději obraťte na certifikované licenční odborníky, ať neuděláte zbytečnou chybu.)
Použití více produktů společně. Možná malinko zbytečně, ale pro jistotu přece jen připomínáme, že licencí SQL Serveru to nekončí, neboť pod každým SQL nezbytně nutně běží také Windows Server. A každý uživatel SQL Serveru je tedy také jeho uživatelem. A Windows Server má rovněž svá pravidla a požadavky na legální provoz…
Licence pro server
SQL Server (i v nově příchozí verzi 2008) je velkou výjimkou, protože že existuje ve dvou různých licenčních modelech: server license + CAL a processor license. Máme proto více svobody při řešení licenčních požadavků, ale také o něco více čtení o pravidlech ;-)
Licenční podmínky umožňují vytvořit libovolné množství instancí serverového softwaru, které mohu mít uloženy na libovolném úložišti ve firmě – nesmím je poskytnout třetím stranám. Pokud chci takovouto instanci spustit (vytvořit tzv. běžící instanci) mohu tak učinit pouze na serveru, kterému přiřadím zakoupenou licenci. Serverem se myslí „železo“, tedy vlastní fyzický server, partition nebo server typu blade. Tuto instanci obvykle mohu v čase spouštět pouze jednu, a to buď ve fyzickém, nebo virtuálním prostředí daného serveru. Licenci sice mohu přesunout (přidělit jinému serveru), ale ne dříve než za 90 dní.
Při virtualizaci je potřeba nezapomínat, že licence se přiděluje serveru, ve smyslu fyzického zařízení! Ne virtuálnímu stroji. Nestěhuje se tedy spolu s virtuálním prostředím, váže se ke stroji, odkud ji odpoutá pouze trvalý hardwarový výpadek nebo změna přidělení po 3 měsících.
Další věc, na kterou je třeba myslet, je to že serverová licence je jedna licence bez ohledu na to z kolika různých komponent se skládá. Není proto možné ji použít tak, že část funkcionality serveru poběží na jednom stroji a jiná na stroji druhém. Často si třeba přejeme mít na jednom serveru databáze a na jiném reporting services. To samozřejmě lze, ale pouze se dvěma licencemi pro SQL Server. Nicméně existuje seznam komponent, které je možné libovolně instalovat uživatelům/zařízením pokrytým přístupovou licencí CAL. Patří mezi ně třeba Business Intelligence Development Studio nebo Management Studio. Úplný seznam najdete v PUR nebo MSLT. Podívejte se do něj, protože pro SQL Server 2008 je výrazně zúžen oproti možnostem povoleným u SQL Serveru 2005.
Režim server + CAL
Potřebujete jednu licenci serverovou pro každý počítač, na kterém SQL Server poběží – bez ohledu na to, kolik má procesorů či jader. Klientské licence (CAL) jsou požadovány pro každého uživatele nebo zařízení, které využívá služeb serveru ať už přímo nebo nepřímo. Tato CAL je vždy přiřazována konkrétnímu uživateli (člověku) a konkrétnímu zařízení a opravňuje vás přistupovat k verzi zakoupené i všem verzím předchozím nikoli však verzím novějším – CAL je tedy specifická pro určitou verzi. V případě klientských licencí je navíc potřeba být opatrný u CAL pro SQL Workgroup, která vás opravňuje přistupovat výhradně k této edici. Naproti tomu SQL CAL („normální“) o něco dražší vám umožňuje přístup ke kterékoliv edici SQL Serveru (Workgroup, Standard i Enterprise). CAL není požadována ve dvou případech: pro instance dalších serverů SQL a až pro dva administrátory, kteří instanci serveru spravují.
Pro SQL Server v licenčním modelu Server + CAL navíc existují tyto výjimky:
SQL Server 2008 Workgroup a Standard Edition:
Na každém serveru opatřeném licencí je možné ve stejném čase nechat běžet neomezené množství pojmenovaných instancí SQL Serveru, a to buď v jednom fyzickém anebo v jednom virtuálním prostředí (ne v obou současně). Jsou zde ale technické limity, např. u Standard Edition je to 16 instancí.
SQL Server 2008 Enterprise Edition:
Na každém serveru s přidělenou licencí je možné nechat běžet neomezené množství instancí serverového softwaru v jednom fyzickém a v libovolném množství virtuálních prostředí. Zde je technický limit 50 pojmenovaných instancí.
SQL Server 2008 Workgroup, Standard and Enterprise Editions – Fail-over Rights:
Z rozprav o licencích jistě už důvěrně znáte pojem OSE, Operating System Environment. Tak tedy: pro kterékoliv OSE, v němž běží instance SQL Serveru, je možné nechat v jiném OSE běžet až stejný počet pasivních záložních instancí pro dočasnou podporu při výpadku. Tyto záložní instance mohou běžet i na jiném serveru, tedy na jiném „železe“. O těchto právech se nejčastěji hovoří jako o právu na „pasivní cluster“ bez licence, a je to velká výjimka pro SQL Server. U jiného serveru společnosti Microsoft na ni jen tak nenarazíte.
Režim Per Processor License
U procesorové licence ve fyzickém prostředí je potřeba tolik licencí, na kolika procesorech poběží OSE, ve kterém SQL Server provozujete. Ke spuštění SQL Serveru ve virtuálním prostředí je třeba tolika procesorových licencí, na kolika virtuálních procesorech běží dané virtuální OSE, přičemž i takový virtuální procesor, který využívá jen část fyzického (představte si například dva virtuální CPU po jednom jádře vytvořené z jedno fyzického vícejádrového CPU), se počítá jako celý jeden procesor. Z toho plyne, že je jedno, kolik procesorů bude SQL Server skutečně využívat! Rozhodující je počet procesorů použitý operačním systémem.
Na každém serveru, který má přiřazen odpovídající počet procesorových licencí, může běžet neomezené množství instancí SQL Serveru ve fyzickém i virtuálním prostředí. Jak zjistíte potřebný licencí? Je to součet všech fyzických i virtuálních procesorů využitých těmi OSE, v nichž se SQL Server provozuje.
K procesorové licenci nejsou požadovány žádné přístupové licence – tedy CAL. Procesorová licence je také jedinou variantou tam, kde potřebujete pokrýt přístupy anonymních uživatelů (třeba pro web). Tam, kde jsou uživatelé (nebo zařízení) známi, můžete mezi režimy licenčního pokrytí zvolit ten, který je pro vás výhodnější.
I v licenčním režimu „per procesor“ existují pro SQL Server 2008 výjimky:
SQL Server 2008 Enterprise Edition:
Když přiřadíte serveru takový počet procesorových licencí, kolik má fyzických procesorů, máte právo nechat běžet současně libovolné množství instancí jak ve fyzickém tak v libovolném množství virtuálních OSE tohoto serveru. V tomto případě u edice Enterprise nemusíte pořizovat licence pro virtuální procesory!
SQL Server 2008 Workgroup, Standard a Enterprise Edition:
Pro kterékoliv OSE, ve kterém běží instance SQL Serveru, můžete provozovat až stejný počet pasivních záložních instancí v jiném (odděleném) OSE pro dočasný běh při výpadku. Záložní pasivní instance může běžet i na jiném serveru. Počet procesorů „záložního“ OSE ovšem nesmí překročit počet procesorů OSE, ve kterém běží aktivní instance.
A co napsat závěrem?
Licenční podmínky jsou opravdu shodné se pravidly pro SQL Server 2005 SP2. Přibyly nám pouze dvě zvláštní edice a seznam „Additional Software“ se významně zúžil.
V příštím vydání zpravodaje TechNet Flash se můžete těšit na lahůdkové čtení v podobě pohledu na licence SQL Serveru očima vývojáře SQL aplikací. Protáhneme vás platformami, licencemi pro vývoj a testování, licencemi distribuovanými s aplikací, licencemi nutnými pro fungování jiných serverů z produkce společnosti Microsoft, licencemi, které jsou úplně zadarmo. Zkusíme vysvětlit, jak se to má s SQL Serverem v pozadí webových aplikací.. Po dnešním putování licencemi odshora až dolů, provedeme vás jimi příště pro změnu skrz naskrz a napříč.
Články ze série Microsoft TechNet nevytváří redakce Živě.cz, ale partneři programu Microsoft TechNet. Jsou publikovány v rámci mediálního partnerství Živě.cz a společnosti Microsoft.