Microsoft Azure z pohledu IT profesionálů

Autor: Ondřej Výšek (MVP)

Bezesporu je jedním z nejvíce diskutovaných témat cloud computing a s tím spojený pojem Microsoft Azure. Pojďme se podívat, co tyto pojmy znamenají pro IT profesionály – administrátory a další. Tedy na chvíli zapomeneme na vývojáře, kterých se především pojem Azure v aktuální podobě týká.

Téma cloud computingu je na stole již nějakou dobu a také se dá velké množství aplikací resp. Služeb provozovat v rámci cloud – online řešení. Pokud bychom se podívali na online řešení, tak například v podání Microsoftu to je již delší dobu produkt BPOS, který se v průběhu tohoto roku promění v Office 365. Další rozsáhlou službou je pak Microsoft Azure, jenž v roce 2011 dozná také několika změn a to především z podhledu toho, co vše se dá provozovat. Další změnou bude pak to, že Microsoft Azure nebude provozovaný pouze společností Microsoft, ale také dalšími poskytovateli online služeb jako jsou např. Dell, HP a další.

Pokud bychom hovořili o výhodách online řešení, pak je bezesporu velkou výhodou to, že organizace nemusí investovat do vlastních technologií a vlastních licencí, nemusí garantovat vlastními silami chod aplikace, je možné jasně plánovat náklady na provoz aplikace. Na druhou stranu je nutné říci, že je nezbytné zajistit podporu koncových uživatelů a dalších podpůrných technolgií, jako je například ověření uživatele atd. Pojďme se dále zabývat možnostmi Microsoft Azure, a jak mohou v dnešní době pomoci IT profesionálům.

Různé typy cloudového řešení

V podstatě existují 3 typy cloudových řešení a ti tak budou v tomto roce nabízeny pod hlavičkou Microsoft Azure. Vrstvy jednotlivých cloudových řešení jsou shrnuty na následujícím obrázku.

Obr. 1: Druhy cloudových řešení a možnosti správy

Cloud poskytující platformu (as a Service)

Tento typ cloudového řešení je to, co nyní dostanete v rámci řešení Microsoft Azure, tedy vše potřebné, pro provoz vašich firemních aplikací. Z pohledu IT administrátora se nemusíte nikterak starat o konfiguraci serverů, diskového prostoru a další. Z pohledu organizace je nutné se pouze zaobírat správou provozované aplikace.

Cloud poskytující infrastrukturu (as a Service)

Infrastrukturní cloud opět není nic neznámého. Již v dnešní době je možné hostovat u různých poskytovatelů celé servery, ale z pohledu online služeb má význam tento ty cloudového řešení zmínit. Microsoft Azure by měl být v průběhu několika následujících měsíců rozšířen o možnost provozovat celé operační systémy, které budete mít plně pod správou. V takové chvíli je pro organizace nedůležité na jakém hardware, diskovém úložišti,… je systém provozovaný a při definici požadovaného výkonu se omezíme například pouze na potřebný výpočetní výkon, velikost paměti a disků a to včetně nároků na IO.

Privátní cloud (on Premise)

Třetím typem cloudového řešení, o kterém se stále více a více hovoří je privátní cloud nebo také označovaný jako „on Premise“. Takové řešení je kompletně umístěno v rámci organizace, tak jak jste zvyklí v současné době, jediným a defakto zásadním rozdílem je fakt, že servery poskytující takové řešení jsou jednoduché stavební bloky. Díky použití těchto stavebních bloků je mnohem jednodušší a rychlejší vybudovat i složité řešení. Již v dnešní době máte možnost za využití stávajících nástrojů si takový „vlastní cloud“ vybudovat. Při použití privátního cloudu je výhodou kontrola nad zpracovávanými informacemi a jistá nezávislost na komunikačních linkách, které jsou pro online, nebo chcete-li hostované řešení nezbytné. Další bezesporu velkou výhodou je možnost následného přesunu privátních serverů do infrastrukturního a opačně. Pokud se podíváte na stávající IT prostředí, chvíli se zamyslíte, pak pravděpodobně dojdete k závěru, že jednotlivá prostředí, aplikace a služby jsou možná až přespříliš provázané a výpadek jedné služby může ovlivnit chod druhé,… až po omezení fungování koncového uživatele, na kterého se tak často (někdy i s oblibou) zapomíná – ale jsou to právě ti uživatelé, kvůli kterým máte práci a přináší peníze na IT v rámci organizace.

Microsoft Azure v současné době

Tak jak jsem zmínil výše, je možné v současné době pořídit Microsoft Azure pouze jako možnost první, tedy platformní. Z pohledu IT pro je to opravdu abstraktní vrstva, kde jsou provozované aplikace. Je možné zřídit webový prostor, databázi a datové/diskové úložiště. Z tohoto pohledu není možné vzít jakoukoliv aplikaci a jednoduše ji provozovat v rámci cloudového řešení, existuje celá řada specifik, co aplikace může a nesmí. Microsoft Azure, přesněji řečeno Windows Azure Platform je sada služeb hostovaných v Microsoft datových serverech. Tvoří ji:

  • Windows Azure Compute – hostované virtuální servery, na kterých běží buď webové aplikace (tzv. web role) anebo služby (tzv. worker role) na operačním systému vycházejícím z Windows Serveru 2008. Tato role bude rozšířena o možnost plné správy virtuálního prostředí.
  • Windows Azure Storage – nerelační úložiště s prakticky neomezenou propustností, kapacitou a škálovatelností. Lze je použít jako alternativu sdílených složek v cloudu, k uložení záloh dat apod.
  • SQL Azure – hostovaná relační databáze na serveru vycházejícím z SQL Server 2008
  • Azure AppFabric Service Bus – služba umožňující komunikaci z internetu (tedy i z Windows Azure) směrem ke službám ve vaší serverovně, vhodné zejména pro integraci mezi aplikacemi v cloudu a vaší vlastní serverovně.
  • Azure AppFabric Access Control – infrastruktura pro autentizaci a autorizaci na bázi rolí. Je vhodná zejména tehdy, pokud chcete svojí Azure aplikací přijímat přihlašovací údaje z více zdrojů.

Z hlediska IT správců jsou nejzajímavější první tři služby (Windows Azure Compute, Windows Azure Storage a SQL Azure), v další diskusi se tedy omezíme převážně na ně. Neméně důležitou rolí v rámci Azure je role AppFabric, která slouží pro autorizaci a autentizaci koncového uživatele. Pokud budete provozovat aplikaci a nebude chtít obtěžovat koncového uživatele dalším přihlašováním, je možné pomocí této komponenty provádět ověřování proti stávající infrastruktuře.

Pokud bychom se podívali na jednotlivé komponenty trochu blíže a zajistili jejich vzájemnou spolupráci, pak by to mohlo vypadat jako na následujícím obrázku:

Na tomto obrázku je využito několika komponent VM role, která hostuje operační systém, nad kterým je provozovaný IIS Server 7.5, poskytující web role a Worker Role. Dalšími rolemi jsou pak SQL Azure pro ukládání informací do databáze a Azure storage jako diskový subsystém.

Co je potřeba pro chod aplikací ve Windows Azure?

Pokud má aplikace běžet na SQL Azure, je třeba vzít v úvahu, že nejsou podporovány všechny funkce „klasického“ SQL Serveru 2008 (seznam nepodporovaných věcí je na https://msdn.microsoft.com/en-us/library/ff394115.aspx). Je proto třeba vyhodnotit, zda aplikace některé z těchto věcí nepoužívá, případně hledat alternativy, což samozřejmě znamená zásah do existující aplikace.

Pro běh ve Windows Azure Compute je aplikaci potřeba zabalit do speciálního balíčku, který kromě aplikace obsahuje ještě informace pro nasazení aplikace. Aplikaci je nezbytné upravit pro cloud, což je víceméně vývojářská záležitost. Je třeba vzít v úvahu, že aplikace nepoběží s administrativními právy, čímž je značně omezena ve svých činnostech. Dále by aplikace neměla cokoliv předpokládat o operačním systému, na kterém běží – přístup k registry, souborovému systému a dalším prostředkům počítače je třeba pečlivě vyhodnotit a zpravidla nahradit jinými mechanismy. V neposlední řadě je třeba zabývat se též externími závislostmi, které aplikace může mít (účty v Active Directory, sdílené složky apod.). I když to možná zní velmi restriktivně, úprava většiny aplikací je celkem snadno zvládnutelná. Nicméně ponechme změny a modifikace aplikací na vývojářích. Pro dobře fungující aplikaci – a teď nehovořím o cloudu, Azure atd. ale obecně, je nutné přesně znát model aplikace, způsob jejího fungování atd. Toto je důležité i pro provozu aplikací ve vlastních prostředích, aby bylo možné aplikace korektně nasadit, sledovat,…

Pokud bychom hovořili o migraci existující služby z privátního prostředí do infrastrukturní cloudové služby, pak by postup mohl vypadat následovně:

Jak se Azure kupuje a licencuje?

Pro provoz na Azure si musíte zřídit účet, ke kterému zadáte kreditní kartu (vzápětí lze přejít na platbu fakturou). Poté můžete odebírat jednotlivé služby, za které na konci měsíce zaplatíte podle spotřebovaného množství. Mluvit o licencích není přesné, cena zahrnuje jako hardwarové prostředky, tak i nainstalovaný software, přičemž tyto dvě složky jsou neoddělitelné. Základní ceny jsou následující:

  • existence virtuálního počítače (Azure Compute) – 0.12 USD/1 hodinu (v nejmenší velikosti s 1 jádrem, 1.75 GB RAM, 225 GB HDD)
  • uložená data (Azure Storage) – 0.15 USD/1 GB/1 měsíc
  • databáze SQL Azure – 9.99 USD/1 GB/1 měsíc
  • data přenesená z cloud serverovny ven – 0.15 USD/1 GB
  • data přenesená do cloud serverovny – 0.10 USD/1 GB

Podrobnější informace zde https://www.microsoft.com/windowsazure/offers/popup/popup.aspx?lang=en&locale=en-US&offer=MS-AZR-0003P.

Existují rovněž speciální balíčky a další nabídky, přehled najdete na https://www.microsoft.com/windowsazure/offers/default.aspx.

Na závěr

Cloudové řešení Microsoft Azure může již v současné době přinést velké výhody pro provoz aplikací v cloudu – hostovaném řešení. Odpadá tím tak starost o provisioning služeb, správu serverů jako takových, tak jak tomu je u klasické hostované služby, na druhou stranu nabízí jednoduché použití u aplikací, které jsou pro toto řešení připravené.

V dalších dílech se podíváme blíže, jak aplikaci nasadit, spravovat a další zajímavé informace.