1. Migrace na Windows Azure
Dominik Pintér, Kentico software, dominikp@kentico.com
2. Agenda
• Představení Kentico CMS & Kentico software
• Úvod do cloud computing
• Úvod do Windows Azure
• Rozdíly mezi On-premise a Windows Azure
• Migrace
• Vývoj pro Windows Azure
• Kentico CMS ve Windows Azure
3. Představení Kentico CMS & Kentico software
• Content management system
• Platforma ASP.NET, jazyk C#, MS SQL
• Aktuálně 30+ modulů, 600 000 řádků
• Řešení pro:
– osobní stránky, blogy
– firemní prezentace
– zpravodajské weby
– E-commerce
– Sociální weby
– Intranet portály
• 5000+ webů, 1200 partnerských firem v 84 zemích
• Sídlo v Brně, pobočky v USA a GB
• 69 zaměstnanců, 4 psi, part-time kočka
6. Cloud computing
Výhody:
• Úspora prostředků - peníze, čas
• Flexibilita – iluze nevyčerpatelných zdrojů, přípojování nových strojů
v řádech minut
• Pay as you go platební modely
• Méně risku při startu projektu
• Automatická záloha
Nevýhody:
• Nutnost úpravy aplikace, příp. Nutnost použití určitých technologií
• Data jsou uložena mimo servery společnosti
• Nelze použít vždy
7. Úvod do Windows Azure
Windows Azure App SQL Azure
Fabric Windows Azure
Cache (CTP), Service Database, SQL Data marker
bus, services (CTP)
Access control service
Windows Azure
Networking
Compute Storages Connect (CTP)
& CDN
8. Úvod do Windows Azure
Compute
Web Worker VM role
role role (CTP) Storages
Queues Tables Blobs
Networking
Connect (CTP)
& CDN
Fabric controller
9. On-premise vs. Windows Azure
• Chybí stálý NTFS
• Není možnost zápisu do aplikačního adresáře
• Aplikace musí být bezestavová
• MS SQL vs. SQL Azure
• Windows autentizace
10. Migrace – základní přehled
ASP NET
Web role
Win service
Worker role
Azure
storage
SQL Azure
11. Migrace – souborový systém
• Souborový systém instance
– NTFS
– Není stálý
– Použití: temp, cache
• Azure drive
– Blob storage jako NTFS
– Pouze jedna instance pro read/write
– Použití: berlička
• Přímé použití Blob storage API
– Pracný
– Bez omezení
– Použití: náhrada souborového systému ve Windows Azure
12. Migrace - bezestavovost
Instance 1
• Multi VM prostředí
• Load balancer
• Round robin algoritmus
Load balancer Instance 2
Výzvy
1. Synchronizace statických objektů Instance 3
2. Ukládání session state dat
Řešení
1. Mechanismus pro sychnronizaci dat
2. Azure session state provider
13. MS SQL vs. AZURE SQL
Několik hlavních rozdílů:
• SQL Azure je relační databáze bez dalších vlastností (agent,
reporting, ...)
• Reporting services jsou v CTP
• Chybí Full text podpora – Kentico CMS používá Lucene.NET
• Každá tabulka potřebuje jeden clustered index,
• Chybí podpora pro CLR
Z pohledu ASP.NET aplikace (Kentico CMS):
• Bez problémů, otázka změny connection stringu
• SQL migration wizard, http://sqlazuremw.codeplex.com/
14. Migrace – Windows autentizace
• Na Windows Azure obtížný úkol
• Řešení:
– Active directory federation services
– Změna principu autentizace
– Azure connect
15. Vývoj pro Windows Azure – příprava stroje
• Azure účet
• Do 30. září nabídka trial verze zadarmo
• http://www.microsoft.com/windowsazure/free-trial/
• Připravený stroj
• Visual studio 2010, MS SQL server, Azure SDK
• http://bit.ly/g16uPG, sekce Requirements
• SQL migration wizard - http://sqlazuremw.codeplex.com/
• Storage explorer - http://azurestorageexplorer.codeplex.com/,
http://www.cloudberrylab.com/download.aspx?prod=cbazure
• Kentico CMS (v případě, že si ho chcete vyzkoušet):
• Sample Kentico CMS 5.5 R2 package - http://bit.ly/g1aehN
• Azure deployment guide - http://bit.ly/dK6nFX
16. Vývoj pro Windows Azure – nový typ projektu
• Aplikace běžící pod ASP.NET web rolí musí být typu Web
application
• Nový typ projektu, nové konfigurační soubory
17. Kentico CMS ve Windows Azure
Kentico CMS 5.5 R2:
• Aktuálně vydaná verze
• Dokáže bežet na Windows Azure
• Limitace: Pouze 1 instance
Kentico CMS 6.0:
• Vydání Q3
• Plná podpora Windows Azure
• Žádné limitace