35
Lessons Learned: Migrating Applications to the Windows Azure Platform Wade Wegner Senior Architect Microsoft Corporation SVC30

Lessons Learned: Migrating Applications to the Windows Azure Platform

  • Upload
    brand

  • View
    70

  • Download
    0

Embed Size (px)

DESCRIPTION

SVC30. Lessons Learned: Migrating Applications to the Windows Azure Platform. Wade Wegner Senior Architect Microsoft Corporation. Agenda. Lessons learned from real solutions Four different scenarios Internal line-of-business application Autonomous services E-commerce website - PowerPoint PPT Presentation

Citation preview

Page 1: Lessons Learned: Migrating Applications to the Windows Azure Platform

Lessons Learned: Migrating Applications to the Windows Azure PlatformWade WegnerSenior ArchitectMicrosoft Corporation

SVC30

Page 2: Lessons Learned: Migrating Applications to the Windows Azure Platform

Agenda> Lessons learned from real solutions> Four different scenarios

> Internal line-of-business application> Autonomous services> E-commerce website> Video transcoding service

> Q&A

Page 3: Lessons Learned: Migrating Applications to the Windows Azure Platform

Speakers> Joseph Paradi

> Accenture> Gurleen Randhawa

> CCH, a Wolters Kluwer business> David Haubenstricker

> Domino’s Pizza> Mark Richards

> OriginDigital

Page 4: Lessons Learned: Migrating Applications to the Windows Azure Platform

Real World Azure

Joseph ParadiInnovation Lead for Internal ITAccenture

accenture

Page 5: Lessons Learned: Migrating Applications to the Windows Azure Platform

Corporate Concerns> “The Pillars of Concern”

> Authentication> Authorization> Data Synchronization> Security of Data> Application Integration> Operations / Management

> Minimize the cost/effort to move to Azure

Page 6: Lessons Learned: Migrating Applications to the Windows Azure Platform

“Before” Infrastructure

User

Web App Database

ADWeb App 2

Page 7: Lessons Learned: Migrating Applications to the Windows Azure Platform

Web AppWindows

AzureDatabaseSQL Azure

“After” Infrastructure

User

DatabaseWeb App 2

ADADFS Server

Page 8: Lessons Learned: Migrating Applications to the Windows Azure Platform

What did we find?> Authentication – ADFS server against corporate AD in

our DC> Authorization – ADFS custom claim to make the

authorization decision> Data Sync – SSIS to push subset of rows and columns

to SQL Azure> Security/Audit – specific to each organization and

industry for data and operations> Application Integration – use of ADFS Passive Fed

allowed Web SSO model between apps in different locations

> Operations/Management – cannot use Windows Event Log and SCOM

> Cost – very little code change to existing application; quick time to deliver

Page 9: Lessons Learned: Migrating Applications to the Windows Azure Platform

Why is this cool?> You already have the skills you need

(Visual Studio, SSIS)> No infrastructure required! (assuming

you already have ADFS)> Don’t worry about the plumbing, just

build the application> Microsoft is providing the tooling and

guidance to reduce the barrier to leveraging Azure

Page 10: Lessons Learned: Migrating Applications to the Windows Azure Platform

SALES TAX ENGINE

Gurleen RandhawaDevelopment ManagerCCH, a Wolters Kluwer business

CCH

Page 11: Lessons Learned: Migrating Applications to the Windows Azure Platform

Application Overview> Sales Tax Office

> Real-time sales tax calculation> Multiple business entities, multiple ERP

modules or even different ERP systems> Sales Tax Office works behind the

scenes with minimal user interaction

Page 12: Lessons Learned: Migrating Applications to the Windows Azure Platform

Original Architecture

Web Client Web Server

Admin Client App Server

RDB

Page 13: Lessons Learned: Migrating Applications to the Windows Azure Platform

Cloud Architecture

Web Client Admin Client

Web Services

RDB

App Server

Page 14: Lessons Learned: Migrating Applications to the Windows Azure Platform

Challenges> Plex (3rd party libraries)> State management> Performance> Security> Database migration> Database partitioning

Page 15: Lessons Learned: Migrating Applications to the Windows Azure Platform

Lessons Learned> Be prepared to sacrifice hardware and software control

in exchange for lower maintenance costs.> Log, log and log. Verbose logging will make application

troubleshooting easier.> Design your systems for scaling out, not up. If dealing

w/ an existing system some code refactoring may be necessary.

> Use database partitioning techniques (the database also has to scale out due to the 10 GB limitation on the db size).

> Plan your data migration.> Store sensitive customer data on premises.> Use proper State management techniques - think

“Stateless”.

Page 16: Lessons Learned: Migrating Applications to the Windows Azure Platform

Pizza Delivery Platform

David HaubenstrickerEnterprise ArchitectDomino’s Pizza

Domino's Pizza

Page 17: Lessons Learned: Migrating Applications to the Windows Azure Platform

The Problem

Page 18: Lessons Learned: Migrating Applications to the Windows Azure Platform

Current Architecture

Web SOA StoresStoresStores

RDB

VPNWeb SOA

Java / Tomcat Solaris

Oracle

VB6/C#Win2000/20

03

Cisco

Page 19: Lessons Learned: Migrating Applications to the Windows Azure Platform

Web SOA StoresStoresStores

RDB

VPNWeb SOAWeb SOA StoresStoresStores

RDB

VPNWeb SOA

Co-Deployed Architecture

Page 20: Lessons Learned: Migrating Applications to the Windows Azure Platform

Web SOAWeb SOA StoresStoresStores

RDB

VPNWeb SOAWeb SOA

Azure Runs Java

Web SOA StoresStoresStores

RDB

VPNWeb SOA

Web SOAWeb SOA

Migrate (Relatively)

Easily

Page 21: Lessons Learned: Migrating Applications to the Windows Azure Platform

Web SOA StoresStoresStores

RDB

VPNWeb SOA

Connection Issues

Web SOA StoresStoresStores

RDB

VPNWeb SOA

Svc Bus

No Hardware Allowed

Svc Bus

Page 22: Lessons Learned: Migrating Applications to the Windows Azure Platform

Web SOA StoresStoresStores

RDB

Web SOA

Data Issues

Web SOA StoresStoresStores

RDB

VPNWeb SOA

Svc Bus

Hot SpotSharding?

Key-Value

Storage

AzureStorageAzure

Storage

Key-Value

Storage

Page 23: Lessons Learned: Migrating Applications to the Windows Azure Platform

Key-Value

Storage

AzureStorage

Web SOA StoresStoresStoresWeb SOA

Pain in the Cloud

Web SOA StoresStoresStoresVPNWeb SOA

Svc Bus

Connectivity

DifferencesStorage

DifferencesLogging

Differences

Page 24: Lessons Learned: Migrating Applications to the Windows Azure Platform

Solution: Abstraction Layer

Application

Abstraction Layer

Azure Technology

Domino’sTechnology

Domino’sTechnology

Domino’sTechnology

Page 25: Lessons Learned: Migrating Applications to the Windows Azure Platform

Take aways> Java runs in Azure> Service Bus provides VPN like

connectivity> Azure storage technologies are easily

abstracted

Page 26: Lessons Learned: Migrating Applications to the Windows Azure Platform

Mark RichardsVP, Business DevelopmentOrigin Digital

Origin Digital

Page 27: Lessons Learned: Migrating Applications to the Windows Azure Platform

Overview> Application Overview

> Build a video and audio transcoding solution based on the Windows Azure cloud computing platform

> Key Business Goals> Decrease transcoding costs> Provide greater scalability> Greater Geographic distribution

> Platform Adoption Driver> The key factor driving Azure adoption is to be

able to cost effectively respond to changing customer demands and volumes

Page 28: Lessons Learned: Migrating Applications to the Windows Azure Platform

Odaptor Overview

XYZ CorporationFile Upload

UGC, Corporate content, etc…

Odaptor File UploadHTTP Post,

iFrame, Silverlight,

FlashOdaptor

CMS

Video/Audio

Transcoding

CDNAkamai,

Limelight, Azure etc..

Postback with Asset Information

Source Media File

Transcoded Files

Page 29: Lessons Learned: Migrating Applications to the Windows Azure Platform

Solution ArchitectureManager Worker Role

Blob

Queue

Web RoleFile Uploads

Transcoding Worker Role

CDN’s

Page 30: Lessons Learned: Migrating Applications to the Windows Azure Platform

Challenges> Finding and implementing a

inexpensive and reliable software based encoding, and implementing it in the cloud

> Determining an algorithm for auto scaling

> Working with pre-release SDKs, as they tend to change

> Deployment and release process

Page 31: Lessons Learned: Migrating Applications to the Windows Azure Platform

Benefits> Significant cost savings versus existing

transcoding hardware and software> Ability to quickly and cheaply respond to

varying demand levels> Ability to easily provide geographically

relevant solutions to our customers

Page 32: Lessons Learned: Migrating Applications to the Windows Azure Platform

YOUR FEEDBACK IS IMPORTANT TO US! Please fill out session evaluation

forms online atMicrosoftPDC.com

Page 33: Lessons Learned: Migrating Applications to the Windows Azure Platform

Learn More On Channel 9> Expand your PDC experience through

Channel 9

> Explore videos, hands-on labs, sample code and demos through the new Channel 9 training courses

channel9.msdn.com/learnBuilt by Developers for Developers….

Page 34: Lessons Learned: Migrating Applications to the Windows Azure Platform

© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Page 35: Lessons Learned: Migrating Applications to the Windows Azure Platform