Týden v cloudu, díl XII.
Začal bych zcela nekriticky ohlášením, že jsem si zřídil Twitter účet (konečně ), přes který budu rychle informovat platformových novinkách. Adresa je @kaciho. Ale pojďme k praktickým novinkám. Tou asi nejdůležitější je vydání nového Azure training kitu (dubnový update). Ten v sobě nese celou řadu ohlášených
novinek:
- Příklady autentizace uživatelů ve Windowsw Phone 7 aplikacích přes ACS, OData služby a Windows Azure
- Příklady pro Windows Azure Traffic Manager
- Příklady pro SQL Azure Reporting Services
a upravených technologií:
- Propojení aplikací pomocí nové verze Windows Azure Connect
- Příklady využití novinek ve Windows Azure CDN
- Příklady na finální verzi AppFabric ACS 2.0
- Příklady na použití ACS pro federaci mezi více Business Identity poskytovateli, pro finální verzi ACS 2.0
- Nové verze příkladů s rozšířeními u služby Service Bus
- Příklady na Eventing na Servisní sběrnici a Service Remoting
- Nová verze dema Rafiki
Access Control Service (ACS), součást služeb AppFabric, nepatří prozatím mezi velmi používané. Jedním z důvodů může být její relativní složitost. Pro všechny, kteří se chtějí s touto technologií rychle seznámit, byla připravena série krátkých videí.
Všechny vývojáře v PHP určitě potěší vydání beta verze Windows Azure SDK for PHP v 3.0.0. Dočíst o novinkách, které přináší se také můžete na blogu autora projektu Maarten Balliauw.
Řešení třetích stran
Mezi zajímavé aplikace, které je možné využít s Windows Azure, specificky Azure Storage, jsou produkty firmy Gladinet. Pomocí nich lze například synchronizovat soubory na přes více počítačů, mirrorovat celé adresáře, připojit si cloud storage jako systémový disk s plnou podporou doménové autorizace nebo využít Azure storage jako místo pro ukládání záloh.
V poslední době začalo významné množství Content Management Systémů (CMS) podporovat provoz na Windows Azure. Pravděpodobně nevím o všech a tak budu rád, pokud tento seznam doplníte.
Sitecore – běží na Windows Azure, obsahuje škálování přes více instancí. Enterprise-class CMS, s velkými referencemi po celém světě. Cena se odvíjí od funkcionality. Sitecore poskytuje přímou podporu.
Umbraco – běží na Windows Azure a poslední update umožňuje škálování přes více instancí. Umbraco funguje pouze prostřednictvím partnerské sítě. Produkt je zdarma, platí se se za servis a podporu.
Kentico – běží na Windows Azure, v jedné instanci (aktuální verze 5.5 R2) out of the box. Podpora více instancí je plánována na další verzi (6.0), které bude podle informací firmy uvolněna na konci letních prázdnin. Jde o Enterprise-class CMS s velkými referencemi po celém světě. Je dostupná i Free verze. Zajímavostí je, že jde o českou firmu s vývojem v Brně.
Composite C1 – běží na Windows Azure, v jedné instanci out of the box. Podpora více instancí je plánována na květen. Produkt je zdarma, platí se se za servis a podporu (cena je podobná Umbraco)
Orchard – CMS vyvinuté přímo Microsoftem, ale oficiálně vlastněné třetí stranou. Běží na Windows Azure s podporou škálování přes více instancí. Produkt má několik zajímavých referencí, ale je stále ve verzi 1. Je zdarma.
Axinom AxCMS – běží na Windows Azure s podporou škálování přes více instancí. CMS má celou řadu významných referencí u velkých podniků, zejména v Německu. Produkt je poskytován zdarma.
Webbela CMS – běží na Windows Azure s podporou škálování přes více instancí. CMS je vyráběn a dodáván českou firmou Titio. CMS má pěkný seznam referencí a je firmou vždy dodáván včetně služeb přizpůsobení na míru.
Azure – pohled do reálného světa: Rozhovor s Ondřej Červinka & Filip Hurta, WujiGrid
MSDN: Jak dlouho jste zvažovali vstup do cloudu a technologie Windows Azure, co Vás přesvědčilo vytvořit řešení na této platformě?
Cloudové technologie jsme sledovali od chvíle, kdy se objevily na trhu, ať již to byl Amazon EC2, Google App Engine a nebo Windows Azure. Pro náš projekt jsme se nerozhodovali zda použít cloud nebo ne, ale jak ho co nejlépe využít. Architektura WujiGridu principiálně umožňuje provozovat aplikaci na různé infrastruktuře – na Windows Serveru s SQL či různých verzích cloudu, pochopitelně pokud se naimplementují příslušné adaptery a manager třídy. I když v kódu lze dodnes najít třídy, které ve jméně obsahují ‘Amazon‘, prakticky již dnes pro vývoj používáme pouze SQL Server s tím, že produkční platforma je Windows Azure.
Azure jsme zvolili na základě několika hledisek. Velkou roli hrálo pochopitelně naše členství v programu BizSpark a tím i volný přístup k vývojářským nástrojům a ostatním technologiím. Navíc všichni, kdo WujiGrid vyvíjíme, máme posledních několik let největší zkušenost s vývojem v C# na platformě .NET. Rozhodující pro nás ale byla flexibilita Azuru – typy processing rolí, úložiště dat, fronty, CDN, atd.
MSDN: Jak hodnotíte naplnění Vašich očekávání?
Windows Azure jsme si pochopitelně nejdříve detailně prošli a osahali, takže jsme poměrně dobře věděli, do čeho jdeme a co máme čekat. Tudíž očekávání jsou v souladu s realitou. Příjemně překvapeni jsme novými produkty z rodiny Azure – VM role, Windows Azure Connect - ty jsme v době uvedení Azure 1.0 určitě nečekali. Oceňujeme také rozšiřující se komunitu okolo Windows Azure a s tím spojené rozšiřování know-how na fórech, integraci s dalšími aplikačními platformami, apod.
MSDN: Narazili jste během implementace na komplikace, a jak jste je řešili?
Samozřejmě, vývoj na (minimálně pro nás) nové platformě vždycky znamená překonávat neočekávané problémy. Narazili jsme na problém s nemožností řídit session afinitu na load balancerech, které rozkládají zátěž mezi jednotlivými rolemi, což vzhledem k použití full duplex komunikace mezi klientem a serverem je pro naši aplikaci nutnost. Řešíme to tak, že píšeme vlastní mechanismus, jak adresovat jednotlivé instance rolí uvnitř datového centra za load balancery.
Další nepříjemnost nás potkala při deploymentu Silverlight aplikací a konfigurací URL adres webových služeb obecně – v Azure máte lokální, stagingové a produkční prostředí. Na stagingovém prostředí nevíte předem ani DNS jméno, na kterém aplikace poběží, což komplikuje konfiguraci zejména klientských částí. Zabývali jsme se i problémem integrace se serverovými produkty třetích stran, např. s Kaazing WebSocket Gateway. I když v tomto konkrétním případě jsme se přiklonili k implementaci vlastního řešení, velkou pomocí byla na podzim uvedená VM role.
MSDN: Co je pro Vás na technologii Windows Azure nejdůležitější a co Vám nevyhovuje?
Co nám úplně nevyhovuje je poměrně obtížný výpočet nákladů na běh aplikace. Přestože Microsoft přišel s kalkulačkou nákladů, do vstupů pro výpočet je potřeba zahrnout charakteristiky, které se dají jen obtížně odhadnout. Zvláště dokud není aplikace nasazená, jsou to takové hrátky s křišťálovou koulí. Vývojáři a sw architekti byli zvyklí navrhovat software podle kritérií jako rychlost, spolehlivost, škálovatelnost. Nyní jsou zde nová hlediska – polling fronty, přenos dat, dotaz do data storage stojí peníze. Bude to chvíli trvat, než si na to všichni zvykneme.
MSDN: Jaký další rozvoj v oblasti cloudu očekáváte ve vztahu k Vašim aplikacím?
Cloud vidíme do budoucna jako elementární infrastrukturu IT aplikací. Podle našeho názoru je to další krok ve stejném směru, jako byl internet ve smyslu konektivity. Dnes si už život bez vzájemného spojení a komunikace mezi uživateli dokážeme těžko představit. Současně přibývá počet zařízení, které uživatelé používají ke komunikaci, k práci, k dennímu životu. Z mnoha zařízení potřebují přistoupit ke stejným datům a aplikacím. Ty se přesouvají do cloudu. Tolik propagovaná ekonomická výhodnost „firemní serverovny v cloudu“ je jen jeden z faktorů. My vidíme velký potenciál v nových možnostech, které cloud přináší pro IT aplikace, nové scénáře, využití IT a telekomunikačních zařízení. Ty budou podle našeho názoru rozhodující pro rozšíření cloudu.
Současně s tím však vyvstává závažnost otázky bezpečnosti a zachování soukromí. Myslíme si, že provozovatelé cloudu budou vystaveni velkým tlakům z mnoha stran. Zachování důvěryhodnosti aplikací bude klíčový, ale současně velmi těžký úkol.
MSDN: Doporučil byste tuto technologii? Proč?
Vzhledem k tomu, že Windows Azure je jedním z technologických pilířů naší aplikace, nemůže naše odpověď znít jinak, než že bychom ji doporučili. Především pro vývojáře na platformě Windows se Azure díky integraci s Visual Studiem jeví jako jednoznačná volba. Velmi užitečná je i služba Windows Azure AppFabric ACS. Služby Azure i konkurenčních cloudů se ovšem stále vyvíjejí, takže se určitě vyplatí sledovat ty nejdůležitější hráče na trhu a vybírat pro konkrétní případy ty nejvhodnější.
MSDN: Děkujeme za rozhovor.
Ještě jako vždy link na předchozí díl.