Documente Academic
Documente Profesional
Documente Cultură
Sean R. Cunningham
President
June 30, 2010
Table of Contents
Windows Azure: Migration Analysis, Strategy, and Planning........................................................................... 1
Custom Application (IIS Web/Microsoft SQL Server Pattern) Migration........................................................2
Motivations for Migration to Windows Azure.....................................................................................................3
Cost Structure................................................................................................................................................4
Support............................................................................................................................................................4
Scalability.........................................................................................................................................................4
Migration Execution Scenario................................................................................................................................5
Support............................................................................................................................................................5
Scalability.........................................................................................................................................................6
Cost Structure................................................................................................................................................6
Business Considerations...............................................................................................................................7
Local State.......................................................................................................................................................7
In-Process Caching..................................................................................................................................... 11
Conclusion...............................................................................................................................................................15
Analysis
Identify
current state
Envision
desired
future state
Strategy
Align
Business
needs
with cloud
capabilities
Planning
Identify
applications
D
etermine
Common
Application
patterns
and reporting.
Process automation and workflow.
Web Server
SQL Server
Website
Front End
Business/ Data layer
Shadow Applications
Payroll processing.
E-commerce.
Funding and support for these custom business
applications varies greatly. Some are supported by
strong service level agreements (SLAs) in enterprise
data centers; however, many reside in departmental
labs external to the corporate data center and
frequently have varying levels of support. For some,
the support structure may not be well defined
leaving certain business groups vulnerable.
Applications with this architectural pattern tend to be
strong candidates for migration to Windows Azure
because they are typically straightforward in design
and can often be easily migrated to Windows Azure
when cloud computing benefits offer improved
support options, resource optimization, or other
potential improvements.
Support
critical to success.
Cost Structure
Scalability
application costs.
Web Server
SQL Server
Website
Web Role
SQL Azure
Website
Front End
Business/ Data layer
Front End
Business/ Data layer
Support
Website
layersort of migration.
success Business/
with Data
this
Cost Structure
Scalability
Storage options.
Local State
In-Process Session State
In-Process Caching
pattern
are
typically
excellent
candidates
for
Business Considerations
Business considerations unrelated to the architectural
http://msdn.microsoft.com/en-us/library/ff394115
(v=MSDN.10).aspx.
B
etter It is better to store data and code
in separate directories.
S
ingle Instance Windows Azure Drive
provides persistent storage but only for
one instance.
B
est It is best to store data in an external,
durable storage location, such as a Storage
Area Network (SAN) or Network-AttachedStorage (NAS) environment.
B
est For single or multi-instance
applications, Microsoft SQL Azure and
Windows Azure Storage (Blobs and Tables)
provide durable storage.
downloads/details.aspx?FamilyID=21910585-8693-
Please note that if the application in question does not use local state storage for anything, this step is
unnecessary. It is simply mentioned because using local state storage for materials unrelated to an applications
database is a common (even if not recommended) practice.
On-Premises
Example of application
architecture modification to
move upload files from local
state storage on premises to Blob
Storage in Windows Azure.
Upload
Windows Azure
Blob
World.jpg
Upload
SQL Azure
Table
produce unexpected behavior; therefore, an outof-process session state should be used. Likewise, in
been implemented.
Possible design for multiple Windows Azure Web Role application using an out-of-process session manager.
10
In order to make this change you will need to acquire and deploy the sample provided at http://code.msdn.
microsoft.com/windowsazuresamples. Once this is part of your deploy package you can make the following
configuration changes in the web.config file related to the ASP.NET website.
In-Process Caching
As part of our current application migration scenario,
11
Server
1
Subsequent
calls 5 secs
User
Request
Load
Balancer
Server
2
Distributed
Cache
Server
3
Subsequent
calls 5 secs
12
connection strings.
13
http://msdn.microsoft.com/en-us/library/ff423674.aspx
14
Conclusion
As organizations think about migrating applications
effective solutions.
Acknowledgments: Logic20/20, Inc. recognizes the following individuals for their significant contributions to this paper:
Lisa Beliveau, Writing; Sacha Stjepanovic and Amit Kaushal, Content Research and Visual Concepts; Adron Hall and Brennan Fee, Technical Concepts and
Guidance; Jodi Sherwood, Graphic Design; Elaine Porterfield, Editing; Anders Westby, Management of Project Concept and Design.
The document entitled Windows Azure Application Profile Guidance, Custom IIS Web/Microsoft SQL Server Application Migration Scenario is third party owned and
authored material and is provided to you as a courtesy. Microsoft Corporation provides this document to you, on behalf of the third party, for informational purposes
only. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS THIRD PARTY-PROVIDED DOCUMENT.
Logic20/20, Inc. acknowledges the support of Microsoft Corporation, which made possible some of the research presented in this white paper. The views and opinions
expressed in this article are those of Logic20/20, Inc., and do not necessarily reflect the position of any other party including, but not limited to, Microsoft Corporation.
This white paper is for informational purposes only. The information contained in this document is deemed reliable, but is not guaranteed. Some examples
depicted herein are provided for illustration only and are fictitious. No real association or connection is intended or should be inferred. Logic20/20, Inc.
MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS DOCUMENT.
Without limiting any rights under copyright, no part of this document may be reproduced, stored in, or introduced into a retrieval system, or transmitted in
any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express prior written permission
of Logic20/20, Inc.
Logic20/20 and the Logic20/20 logo are trademark(s) of Logic20/20, Inc. All other trademarks are trademarks of their respective owners.
2010 Logic20/20, Inc. All rights reserved.