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:
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