differences between on premise and windows azure

13
Differences between On- premise and Windows Azure Dominik Pintér ([email protected]), Kentico software

Upload: michal-neuwirth

Post on 09-Dec-2014

2.645 views

Category:

Documents


1 download

DESCRIPTION

What are the main differences between On-premise and Windows Azure? What does it mean for the Kentico CMS running in the Cloud?

TRANSCRIPT

Page 1: Differences Between On Premise And Windows Azure

Differences between On-premise and Windows AzureDominik Pintér ([email protected]), Kentico software

Page 2: Differences Between On Premise And Windows Azure

Agenda

• What Kentico CMS needs to run on Azure• Windows Azure doesn‘t have durable NTFS file system• No write access to the application directory• Application must be stateless• SQL Azure – little bit different database• Windows authentication• Differences in development• Azure SDKs

Page 3: Differences Between On Premise And Windows Azure

What Kentico CMS needs to run on Azure

Kentico CMS 5.5 R2:• Windows Azure compute services (ASP.NET web role)• Optionally Windows Azure storage (blob storage)• SQL Azure

SQL AzureASP NET Web role

Azurestorage

Page 4: Differences Between On Premise And Windows Azure

Durable NTFS file system is missing

Storage Can be used as file system?

Queue This storage is definitely useful BUT not for file system

Table Can be used only as a storage for metadata because of size limitations

Instance local storage NTFS filesystem but not durable, not scalable, data only on one instance

Blob Great replacement, durable, scalable, simulation of tree via virtual directories

Blob storage is manipulated by special API, two options:• Use Azure drive – mount blob storage as NTFS file system, limited for Read/Write to one instance (Kentico CMS 5.5 R2)• Use blob API directly – code changes needed, no limitations (Kentico CMS 6.0)

Page 5: Differences Between On Premise And Windows Azure

No write access to application directory

Current situation:• You shouldn‘t write anything to application directory• Some operations are allowed, most of them aren‘t• Data between instances aren‘t synchronized• Instance data aren‘t durable

Problems from Kentico CMS point of view:• Modules: Web analytics, Smart search (solved using Azure

drive)• Database install• Import/Export

Page 6: Differences Between On Premise And Windows Azure

Application must be stateless

Challenges1. Synchronization of memory objects2. Storing of session state data

Solution3. Web farms module (6.0)4. Use Azure session state provider

Load balancer

Instance 1

Instance 2

Instance 3

• Multi VMs environment• Load balancer • Round robin algorithm

Page 7: Differences Between On Premise And Windows Azure

Application must be stateless

On-premise session state providers

Azure session state providers

Session state provider Where stores data? Can be used?

In proc Process memory Only 1 instance

State server Instance Only 1 instance

SQL Server SQL database No

Session state provider Where stores data? Disadvantage

Sample provider from MS Blob storage/table Not predictable price

SQL Azure SQL Azure Needs additional handling

Azure Appfabric cache Azure Appfabric cache CTP

Page 8: Differences Between On Premise And Windows Azure

SQL Azure – little bit different database

Few general differences:• Main difference – SQL is relation database without additional

features (Reporting services, integration services, ...).• Reporting services are now in CTP• Missing fulltext support• Every table needs to have at least one clustered index

From Kentico CMS point of view:• No problem, question of changing connection string• SQL migration wizard, http://sqlazuremw.codeplex.com/

Page 9: Differences Between On Premise And Windows Azure

Windows authentication

• Integrated Windows authentication doesn‘t work with ASP.NET web role

• WebDAV integration needs this type of authentication• Possible solution – Windows Azure Connect

Page 10: Differences Between On Premise And Windows Azure

Differences in development

• Application which run under ASP.NET web role must be Web application project

• Kentico CMS 5.5 R2 – web site project• New type of project, new configuration files

Page 11: Differences Between On Premise And Windows Azure

Azure SDKs

• Multiple versions• Kentico CMS supports SDK 1.1 upper (latest is SDK 1.4)• Breaking version – SDK 1.3, full IIS support, remote desktop, ...• SDK 1.2 and lower – setting for internal role port is missing –

minor issues with Kentico CMS• SDK 1.3 and upper – Visual studio 2010 needed, issue with

running Kentico CMS under full IIS in Visual studio – bug in SDK

Page 12: Differences Between On Premise And Windows Azure

Q&A

?

Page 13: Differences Between On Premise And Windows Azure

Thank you!E-mail: [email protected]: DominikPinterBlog: http://devnet.kentico.com/Blogs/Dominik-Pinter.aspx