Srovnání Windows Azure a hostingu ?

V praxi jsme často s porovnáváním Windows Azure s hostingem. Nejčastěji jde o cenu, tím se zabývá kolega Kačmář v článcích Kolik nám ušetřila migrace MSTV do Azure a Porovnání Windows Azure s Rackspace. Coby člověka, který má rád exaktní přístup k věcem mne irituje, že se zpravidla srovnávají nesrovnatelné věci. Pojďme se tedy na celý problém podívat v trochu větší šíři (neříkám “skutečné šíři”, ta je ještě mnohem širší).

Vrstvy typické aplikace

Pokud si představíme typickou aplikaci, můžeme ji – bez nároku na příliš rigorózní přístup – rozdělit na čtyři základní vrstvy:

image

Pro každou z provozovaných aplikací se pak můžeme rozhodnout, kolik vrstev (počítáno odspodu) si pronajmeme a zbylé vrstvy pak vlastníme nebo vytvoříme sami. Donedávna bylo přirozenou volbou zvolit možnost „On-premise“, tedy vlastnit kompletní řešení a dodavatelům platit za konektivitu a elektřinu. S rozvojem internetu, virtualizace a dalších technologií je dnes paleta možností mnohem širší.

Můžete si pronajmout (zpravidla virtuální) hardware (IaaS, Infrastructure as a Service) – celosvětově největší hráči jsou např. Rackspace, Amazon, GoDaddy.

Můžete si pronajmout též aplikační platformu – operační systém, web server a databázi včetně správy (PaaS, Platform as a Service) – sem patří Windows Azure a SQL Azure.

A konečně můžete si pronajmout kompletní hotový software (SaaS, Software as a Service) – zde nabízíme BPOS, což je kombinace Exchange, SharePoint a online komunikace. Pojďme se teď na tyto volby podívat z různých úhlů pohledu.

Kontrola vs. Komfort

Jedno z velkých dilemat celé volby. Čím níže řez povedete, tím více budete mít věci pod kontrolou. V extrémním případě můžete budovat i vlastní elektrickou síť a konektivitu, což je zde s nadsázkou označeno jako „paranoia“ a je využíváno víceméně pouze v armádních systémech. Více kontroly ale zároveň znamená více odpovědnosti a více práce na vaší straně. Chcete více odpovědnosti a více práce? Samozřejmě záleží na konkrétní situaci.

Více kontroly v žádném případě neznamená vyšší kvalitu. Vlastně mezi těmito dvěma kategoriemi není přímý vztah. Pokud si určitou část koupíte, můžete očekávat standardní, smluvně definovanou kvalitu. Pokud ji chcete vytvářet nebo vlastnit sami, kvalita možná nebude v průměru horší, ale určitě kolísavější a těžko odhadnutelná. Je to jako s nábytkem – sériově vyráběná police nebude žádný zázrak, ale spolehlivě poslouží. Pokud si polici vyrobíte sami, může to být mistrovský kousek anebo pořádný zmetek.

Více komfortu je vykoupeno menší možností volby. Pokud něco děláte sami, můžete si to vytvořit, jak chcete. Pokud zvolíte cestu nákupu, budete se muset vtěsnat do možností produktu, který jste si koupili – výrobce ho kvůli vám nebude měnit (alespoň v krátkém časovém horizontu určitě ne). Na příkladu police – určitě neseženete v obchodě polici 104 cm širokou. Musíte se buď smířit s tím, že na každé straně bude 2 cm mezera anebo se pustit do výroby vlastní police. Stejně tak se vaše požadavky na dodané služby budou muset do určité míry přizpůsobit v IT světě. Čím výše na obrázku provedete řez, tím menší spektrum volby budete mít.

Vlastní práce vs. Platby dodavateli

Druhé důležité hledisko je nákladové. Čím níže povedete řez, tím více se budou náklady projevovat formou vaší investované práce. Čím řez povedete výše, tím více se budou projevovat formou plateb dodavatelům. Otázkou je, který z možných součtů bude na konci nejmenší. Podle ekonomických zákonitostí by to mělo být jednoznačné.

Dodavatelský způsob těží z úspor z rozsahu. Police, které koupíte v obchodě, jsou sériově vyráběny, protože je to tak nejlevnější. Výrobce pořídí základní vybavení a vyrábí rychle jednu polici za druhou. Náklady na vybavení totiž rozloží mezi všechny vyrobené police a díky nabitým zkušenostem může výrobu neustále zefektivňovat a zrychlovat. Pokud nemáte doma truhlářskou dílnu, počítejte s náklady na zakoupení všech potřebných nástrojů a přístrojů, na jejich odzkoušení a naučení se, na nepovedené pokusy, ... V IT světe není důvod, aby věci fungovaly jinak. Jedna tisícina nákladů na správu 1000 serverů musí být výrazně nižší než správa jednoho serveru. Jednoduše proto, že lze podobně jako v továrně přesně vyladit procesy, sdílet nástroje, vybavení, znalosti apod.

Dodavatelský způsob má předvídatelnější náklady. Předem víte, kolik budete platit a co za to dostanete. Pokud budete v budoucnu potřebovat více, víte, za kolik si to budete moci přikoupit. Naproti tomu u varianty vlastní dodávky nikdy nedokážete odhadnout pracnost a náklady. Může to být příjemně málo nebo nečekaně mnoho, to lze předem těžko odhadnout. Opět na příkladu police – výroba může být nečekaně prodražena volbou špatného materiálu, nesprávným nanesením laku a spoustou dalších nečekaných věcí. U police zakoupené v obchodě víte, kolik jste zaplatili a co jste za to dostali.

Od polic zpátky k hostingu

Dost již teoretických úvah, pojďme zpátky ke konkrétním rozdílům. Pro srovnání jsme vytvořili následující tabulku. Úmyslně se nesnažíme náklady vyčíslit, protože jsou velmi závislé na konkrétní situaci. Účelem je spíše upozornit na jejich rozdílnou strukturu:

 

Vlastnost

On-Premise

IaaS (hosting)

PaaS (Azure)

Provozní charakteristiky

Obnova v případě HW selhání

Dlouhá a složitá

Dlouhá a složitá, zejména v případě dedikovaného HW

Automatická a rychlá

Kontrola nad konfigurací systému

Plná

Plná nebo téměř plná

Pouze vybrané aspekty

Monitorování a náprava problémů

Ne, nutno řešit

Ne, nutno řešit

Automaticky

Správa oprav a aktualizace

Ne, nutno řešit

Ne, nutno řešit nebo objednat jako doplňkovou službu

Automaticky

Nasazení nové verze

Složité, nutná odstávka

Složité, nutná odstávka

Automaticky za plného provozu

Testovací prostředí

Nutno vytvořit

Nebývá k dispozici, nutno doobjednat

Součást řešení

Úložiště pro velké objemy dat

Fixní velikost i cena

Fixní velikost i cena

Neomezená velikost, cena lineárně závislá na velikosti uložených dat

Bezpečná integrace s dalšími on-premise aplikacemi

Velmi snadná

Velmi obtížná

Snadná (Azure AppFabric)

Náklady

Počáteční investice – HW

Ano

Ne

Ne

Počáteční investice – SW

Ano

Ne (možnost pronájmu)

Ne

Měsíční náklady – HW a SW

Ne

Dohodnutá pevná částka

Lineárně závislé na spotřebovaných zdrojích

Měsíční náklady – konektivita

Pevná částka za kapacitu linky

Různé varianty (neomezený objem a omezená rychlost, paušál za dohodnutý objem, lineárně podle přeneseného objemu)

Lineárně závislé na objemu přenesených dat

Měsíční náklady - správa

Těžko předvídatelné

Těžko předvídatelné

Ne

Náklady na udržení aktuální verze SW

Možno platit udržovací poplatky

Ne

Ne

Náklady na správu licencí

Ano

Ne

Ne

Elasticita

Možnost snížení kapacity v případě nevyužitých zdrojů

Není reálná

Omezená

Snadné, velmi rychlé, náklady lineárně poklesnou

Možnost zvýšení kapacity v případě rostoucí poptávky

Složité, dlouhý proces, skokové náklady

Omezená

Snadné, velmi rychlé, náklady lineárně vzrostou

Možnost oddělení jednotlivých objednaných služeb (úložiště, výpočetní výkon, databáze apod.)

Ne

Ne

Ano

Závěrem

Tento příspěvek je na moje poměry dost dlouhý. Důvodem je skutečnost, že celá problematika je nadmíru komplexní. Dívat se na věci optikou “co stojí kolik” je nepřípustné zjednodušení. Věc je třeba posuzovat v celé její šíři, kterou jsem se snažil naznačit.

Osobně si myslím, že v jakékoliv dohledné budoucnosti bude vždy prostor pro všechna výše uvedená řešení. Průměrná poloha toho, kde na obrázku “říznu” se zcela jistě bude časem posouvat nahoru. Nechme se překvapit tím, jak rychle či pomalu tento evoluční proces poběží. Ale buďme si jisti, že běh již započal.

Michael