Tam, kde dochází k poměrně časté migraci virtuálních strojů mezi jednotlivými nody, vyvstává nutně otázka, jak takovou infrastrukturu řádně pokrýt licencemi a také jak tyto licenční scénáře udržet pod kontrolou bez vysokých nároků na lidské zdroje. Ano, čím více se šetří na licencích, tím obtížnější a dražší pak bývá jejich správa, tím vyšší riziko nedodržení licenčních podmínek. Ve virtualizovaných prostředích to platí dvojnásob. Proč? Pojďme se na to společně podívat.
Dnes už si pravděpodobně jen málokterá organizace dokáže představit provoz svého IT bez využití virtualizačních technologií. Potřebují virtuální stroje bez výpadku přesouvat mezi různými fyzickými servery (nody), serverovnami nebo i datovými centry v různých lokalitách. A nemusí se vždy jednat o přesun vynucený nenadálým pádem nebo z důvodu pravidelné plánované údržby, virtuální servery se mohou přesouvat i pro dosažení úspor nákladů na elektrickou energii. To se v méně frekventovaných časech (třeba mimo běžnou pracovní dobu) část virtuálních serverů v řešení jednoduše vypne, zbytek se zkonsoliduje nad minimálním počtem nodů a momentálně nevyužívané nody se mohou na několik hodin zcela odstavit, než se zátěž zase zvýší.
Aby se dalo využít všech těchto výhod virtualizace, je potřeba se postarat o dostatečné licenční pokrytí pro všechny předpokládané scénáře – a k tomu je nutná znalost nejen základních licenčních podmínek, ale také jistá představivost, abychom tušili, jak je budeme dodržovat a především jak jejich dodržení budeme případně také prokazovat auditům a kontrolám.
Základní licenční násobilka
Začněme od úplných základů. Abychom si mohli licenčně korektně spustit nějaký software, musíme postupovat podle celkem jasných a pevně daných pravidel:
- Nejprve spočítáme licence potřebné pro své řešení
- Následně tyto licence pořídíme
- Potřebný počet licencí přiřadíme konkrétnímu zařízení (fyzickému serveru, nikoli virtuálnímu!)
- A teprve ve čtvrtém kroku produkt spustíme a začneme používat
My se v článku zaměříme na platformu produktů společnosti Microsoft. Takže první produkt, kterému se rozhodně ve virtualizovaných prostředích nevyhneme, je serverový operační systém Windows Server.
Windows Server a licence – určení počtu
Pokud budeme postupovat podle výše uvedených kroků, pak nás při počítání potřebných licencí bude zajímat plánovaný počet spuštěných instancí Windows Serveru, od verze 2012 pak i počet fyzických procesorů, nad kterými budou jednotlivé instance spuštěny.
Po pořízení daného počtu licencí přichází ten nejdůležitější (leč neznalými zhusta vynechávaný) krok, a to je přiřazení pořízených licencí určitému zařízení. V případě Windows Serveru může být takovým zařízením výhradně fyzický server, tedy například právě jeden nod ve virtualizovaném prostředí. Teprve po přiřazení potřebného počtu licencí je možné spustit na tomto fyzickém serveru instanci s operačním systémem Windows Server a je pak jedno, zda taková instance běží ve fyzickém prostředí, nebo v prostředí virtuálním.
V jednoduchosti: jestliže máme dvouprocesorový server, říkejme mu SERVER A, a přiřadíme mu jednu licenci Windows Serveru 2012 R2 Standard, získáme právo na takovém serveru provozovat dva virtuální servery s operačním systémem Windows Server. Pokud potřebujeme provozovat na takovém serveru tři virtuální servery s Windows Serverem, musíme stejnému fyzickému serveru přiřadit další licenci Windows Serveru 2012 R2 Standard, a tím rovnou získáme právo provozovat až čtyři virtuální servery s operačním systémem Windows Server. Je důležité si uvědomit, že licence nám dává právo na daném fyzickém serveru operační systém Windows Server spustit a provozovat, pokrýváme tedy jen běžící virtuální stroje s daným produktem, neběžících instancí si můžeme vytvořit libovolné množství.
Licenci ale vždy přiřazujeme danému fyzickému serveru, nikdy ne jednotlivým virtuálním serverům. Tato licence je pak s daným fyzickým serverem po určitou dobu svázána, protože licenční podmínky obecně neumožňují změnit přiřazení licence, kdykoliv nás napadne, ale až po určité době od předchozího přiřazení. U produktů pořízených prostřednictvím běžných multilicenčních smluv je toto omezení stanoveno na 90 dní. U OEM verzí není změna přiřazení povolena vůbec.
Windows Server a licence pro virtualizovaná prostředí
Na příkladu výše jsme přiřadili dvě licence Windows Serveru 2012 R2 serveru SERVER A. Teď máme tedy právo na něm najednou spouštět čtyři virtuální stroje s Windows Serverem. Co ale v případě, že potřebujeme všechny tyto virtuální stroje na čas přesunout na jiný dvouprocesorový server, SERVER B, abychom na SERVERU A mohli provést pravidelnou údržbu?
Je úplně jedno, jakou technologií k přesunu daných virtuálních strojů dojde. Z licenčního pohledu je to stejné, jako bychom na SERVERU A všechny čtyři virtuální servery vypnuli a spustili je nově na SERVERU B. Jak už víme, abychom je tam mohli spustit, musí být SERVERU B přiřazeny minimálně dvě licence Windows Server 2012 R2. Problém je v tom, že naše dvě licence už jsou přiřazeny SERVERU A, a pokud neuplynulo ještě 90 dní od předchozího přiřazení tomuto serveru, tak tyto dvě licence využít nemůžeme – budeme potřebovat další dvě licence. Jestliže se tedy v přesunech nemůžeme nebo nechceme omezovat 90denním pravidlem, budeme na provoz dohromady potřebovat minimálně čtyři licence Windows Server 2012 R2: dvě pro SERVER A a dvě pro SERVER B.
Velmi podobné by to bylo, pokud bychom na těchto serverech provozovali vždy po dvou virtuálních serverech. Tedy na SERVERU A dva virtuální servery a na SERVERU B také dva virtuální servery. Ano, po dobu běžného provozu bychom na obou serverech měli nadbytečný počet licencí (na dva virtuály stačí jen jedna licence), ale v případě, že bychom na kterémkoli z těchto dvou serverů potřebovali provést údržbu, při níž budeme dané dva virtuální servery přesouvat na druhý server, budou na něm po určitou dobu běžet čtyři virtuální servery, pro jejichž provoz jsou nutné minimálně dvě licence Windows Serveru 2012 R2 Standard. Čistě teoreticky, pokud bychom dodrželi pravidlo 90 dní od předchozího přiřazení, údržbu daných serverů neprováděli příliš často, pravidelně ji mezi oběma servery střídali, dalo by se vystačit i se třemi licencemi Windows Serveru 2012 R2 Standard, ale takové řešení zvyšuje právě nároky na množství lidské práce, která je nutná k jeho správě z pohledu licencí, a neúměrně snižuje robustnost řešení.
Windows Server Datacenter Edition – licence bez starostí
V řešeních s vysokou hustotou virtualizace je ideální využít k pokrytí jednotlivých nodů licence Windows Server v edici Datacenter, protože tato licence umožňuje na daném nodu spustit neomezené množství virtuálních serverů a není potom potřeba řešit, jestli jsme danému fyzickému serveru přidělili dostatečný počet licencí pro všechny myslitelné scénáře, které mohou nastat. Když celý virtualizační cluster vybavíme licencemi Windows Server Datacenter Edition, nemusíme ani složitě evidovat data přiřazení jednotlivých licencí. Starosti nám pak nepřidělají ani licence pořízené jako OEM, protože jejich přiřazení nebudeme potřebovat měnit – budou se stěhovat pouze virtuály, a to měrou neomezenou.
Kdy volit Standard a kdy Datacenter?
Licenční podmínky pro Windows Server jsou tedy jasné. Přiřazenými licencemi musíme řádně pokrýt každý fyzický server, na kterém chceme spustit virtuální server s operačním systémem Windows Server, a to ať už jej spouštíme výhradně jen na tomto fyzickém serveru, nebo jeho běh přesouváme mezi více fyzickými servery. Na míře virtualizace, náročnosti licenční správy, ekonomických aspektech a v neposlední řadě pak na našem uvážení závisí, zda k pokrytí takového fyzického serveru použijeme jednu či více licencí edice Windows Serveru Standard, nebo pro něj obstaráme licenci Windows Server Datacenter. Tato pravidla platí stejně, pokud jsou fyzické servery umístěny vedle sebe v jedné serverovně, i pokud je druhý fyzický server v jiné lokalitě, například na vzdálené pobočce.
Ostatní serverové produkty a licenční mobilita
Jak je to ale u licenčního řešení produktů, jako jsou například aplikační servery, jejichž cena několikanásobně převyšuje cenu licence Windows Serveru? Ty také potřebujeme provozovat ve virtualizovaných prostředích a s virtuálním serverem s tímto produktem čas od času „pohnout“. To musíme stejnou serverovou licencí vybavit všechny fyzické servery, na kterých kdy bude tento virtuální server spuštěn?
Chtělo by se říci ano, potřebujeme. I pro aplikační servery totiž platí stejné pravidlo, že licence se přiřazuje fyzickému serveru a s ním je následně spjata minimálně dalších 90 dní. Pokud pak potřebujeme produkt spustit na jiném fyzickém serveru dříve, musíme mu přiřadit další licenci. To vypadá pěkně draze. Představte si takový SQL Server Enterprise migrující z důvodu úspory elektrické energie třeba po 10 nodech farmy, nebo i jen po dvou datacentrech, kvůli vysoké dostupnosti…
Naštěstí ale ke každému pravidlu existuje výjimka. Ta, kterou hledáme, se jmenuje Právo LM (License Mobility). Když ji produkt má, zruší mu omezení na změnu přiřazení licence až po 90 dnech. Změnit přiřazení licencí je pak možné libovolně často. Ovšem je nutné upozornit, že tuto výjimku lze uplatnit jen u vybraných produktů, typicky aplikačních serverů. SQL Server, SharePoint Server, Project Server, Exchange Server a pak ještě i u licence External Connector. Nikdy se ale nedá uplatnit na výše zmiňovaný Windows Server.
License Mobility vyžaduje Software Assurance
Základním předpokladem pro uplatnění této výjimky je dnes už u všech produktů aktivní předplatné Software Assurance. U starších verzí produktů se dalo toto právo uplatnit jen u vyšších (Enterprise) edic, nebo k jeho uplatnění bylo potřeba zvolit jiný způsob počítání potřebných licencí. Pokud máte pořízeny starší verze produktů, musíte si pravidla LM ověřit vždy v příslušném vydání dokumentu Product Use Rights. Jestliže máte koupeny aktuální verze, ale uplatňujete právo na downgrade, budete se řídit licenčními podmínkami (a tedy Product Use Rights) z doby nákupu. POZOR: o pořízení Software Assurance pro aplikační servery se rozhodujete vždy v okamžiku pořízení základní licence. Dodatečně ji nelze dokoupit! U aktuálních verzí podmínky Product Terms určují, zda je potřeba mít pro využití práva LM aktivní pokrytí SA jen na server, nebo i na CAL.
Pokud už tedy máte základní licenci včetně aktivního předplatného Software Assurance a chystáte se tuto výjimku uplatnit, pak budete moci měnit přiřazení licencí libovolně často v rámci celé jedné serverové farmy a ta může být složena až ze dvou datových center, která mohou obsahovat libovolný počet serverů, přičemž jedno datové centrum nesmí být v časovém pásmu vzdáleném více než čtyři hodiny od místního času v časovém pásmu druhého datového centra, nebo musí být obě datová centra na území EU či EFTA.
Bez Software Assurance vás čeká ovšem docela tvrdý oříšek v podobě dokumentace korektního dodržování licenční pravidel. Budete muset omezit putování virtuálních serverů po nodech a budete je muset umět dokumentovat. Abyste nešetřili na nesprávném místě, je určitě vhodné promyslet a rozebrat předem připravované scénáře nasazení s ohledem na licenční pravidla. Jinak se může dobře vymyšlená architektura stát noční můrou, ať už se ji rozhodnete korektně licenčně pokrýt a zaplatit, nebo riskovat nelegální používání.