Migrate an Existing Application to Microsoft Azure

27
Migrate an Existing Application to Microsoft Azure Chris Dufour, ASP .NET MVP Software Architect, Changepoint Follow me @chrduf http://www.linkedin.com/in/cdufour

description

First we will talk about what Microsoft Azure is and why you would want to use Microsoft’s cloud services. Then we will take an existing on premise line of business (LOB) application with a SQL Server backend and walk through the process of moving the site to Microsoft Azure.

Transcript of Migrate an Existing Application to Microsoft Azure

Page 1: Migrate an Existing Application to Microsoft Azure

Migrate an Existing Application to Microsoft AzureChris Dufour, ASP .NET MVPSoftware Architect, Changepoint

Follow me @chrduf

http://www.linkedin.com/in/cdufour

Page 2: Migrate an Existing Application to Microsoft Azure

Agenda• Our scenario• Microsoft Azure Overview• Microsoft Azure SQL Database• Microsoft Azure Web Sites• Microsoft Azure Service Bus

Page 3: Migrate an Existing Application to Microsoft Azure

Our Scenario

Page 4: Migrate an Existing Application to Microsoft Azure

Our Scenario: Expense Reporting• Typical line-of-business

application• Create & submit reports• View past reports• Approve reports (if

manager)

Corporate Network

Expenses DB(SQL)

Expenses services(WCF on Windows Server)

UI(WPF)

Activ

e D

irecto

ry

Page 5: Migrate an Existing Application to Microsoft Azure

demoExisting Application

Page 6: Migrate an Existing Application to Microsoft Azure

Microsoft Azure Overview

Page 7: Migrate an Existing Application to Microsoft Azure

data

servicestableHDInsight

blob storage

SQL database

app

services

media

hpcintegratio

n analytics

caching identityservice

bus

web sitesmobile

services

cloud services

infrastructure

servicescdn

virtual machines

virtual network vpn

traffic manager

Page 8: Migrate an Existing Application to Microsoft Azure

Microsoft Azure SQL Database

Page 9: Migrate an Existing Application to Microsoft Azure

Microsoft Azure data management options

RELATIONALNON-RELATIONAL

A NoSQL key/value store that provides simple access to semi-structured data at a lower cost for applications that do not need robust querying capabilities

A cloud storage service offering the simplest way to store large amounts of unstructured text or binary data, such as video, audio and images, and for creating virtual hard drives in the cloud.

A full-featured instance of SQL Server running in a Microsoft Azure Virtual Machine for quickly and easily running or testing SQL Server applications in the cloud

A feature-rich, fully managed relational database service that offers a highly productive experience with business-ready capabilities built on SQL Server technology

A Big Data implementation 100% compatible with Hadoop.

Best for existing and new applications needing full SQL Server feature set

Best for new cloud applications needing relational capabilities and high availability

Best for inexpensive, scalable storage of semi-structured data

Best for Big Data Analytics across semi-structured and unstructured data

Best for inexpensive, scalable storage of data

Page 10: Migrate an Existing Application to Microsoft Azure

Options for relational data services in the cloud

Simplified Administration

Full Control & Flexibility

INFRASTRUCTURE AS A SERVICE (IaaS)

Highly Customized Environment

Eliminate Hardware Costs

Decrease Time to Market

SQL Server in a Microsoft Azure Virtual Machine DB

Page 11: Migrate an Existing Application to Microsoft Azure

Microsoft Azure SQL Database

Fully managed (no patching of DB or OS)

Built in HA for Database 99.9% SLA

Simplified Azure Management Portal

Common Architecture with SQL Server

Insights with SQL Reporting

Scale Out

Scale via Azure Management Portal

Rapid Application Development

Easy Database Portability

Familiar Development Tools

Choice of Platform

Page 12: Migrate an Existing Application to Microsoft Azure

Move on-prem SQL to Azure SQL• Create the database in Microsoft Azure SQL

DB• Use SQL Server Management Studio to

migrate the DB contents• This automates the process of exporting the data to

a local bacpac and importing it to the cloud DB• Verify the Windows Azure SQL DB• Update connection strings to point to the new

DB

Page 13: Migrate an Existing Application to Microsoft Azure

demoDeploy Database toMicrosoft Azure SQL Database

Page 14: Migrate an Existing Application to Microsoft Azure

Microsoft Azure Web Sites

Page 15: Migrate an Existing Application to Microsoft Azure

Microsoft Azure Websites

Scalable Automated Flexible

High-density and secure web hosting

Open publishing methods and protocols

Integrated and open solution

Lowers customer onboarding costs and streamlines upselling

Upsell from shared to reserved

Support for ASP.NET, PHP, Node.js, and Java

Metering and throttling of resources

Fully integrated into Web App Gallery

Page 16: Migrate an Existing Application to Microsoft Azure

Publishing in Microsoft Azure Web Sites

Upstream hardware

load-balancers

Front-end application

request router

Persistent storage

Temporary per-

app file storage

Web application databases

Web application

file directories

Web Sites

Web Site

End user

HTTP/S Request

Publisher services carry out various file operations against a web application's directory structure.

Publishers

FTP Service Web Deploy Service

Page 17: Migrate an Existing Application to Microsoft Azure

Development tools and protocols support

Developer tools and protocols

ProtocolsDevelopment Tools

Visual Studio,WebMatrix

Source control integrationVisual Studio Team Foundation Server 2010+

FTP, Git, WebDeploy, HTTP

Upstream hardware

load-balancers

Front-end application

request router

Persistent storage

Temporary per-

app file storage

Web application databases

Web application

file directories

Web Sites

Web Site

End user

HTTP/S Request

Page 18: Migrate an Existing Application to Microsoft Azure

Move on-prem WCF to Azure Web Site• Create the Web Site in Microsoft Azure• Import the publish settings into Visual Studio• This will help us create a publish profile so we can

automate deployments• Publish the application• It will deploy only changed files

• Update the Expenses WPF client to use the new hosted service

• Verify the application

Page 19: Migrate an Existing Application to Microsoft Azure

demoDeploy Public WCF Service to Microsoft Azure Web Sites

Page 20: Migrate an Existing Application to Microsoft Azure

Microsoft Azure Service Bus

Page 21: Migrate an Existing Application to Microsoft Azure

Microsoft Azure Service BusEASILY CONNECT APPLICATIONS

• Queues for messaging occasionally connected devices like mobile phones

• Topics & Subscriptions for publishing notifications to multiple subscribers

CONNECT APPLICATIONS FROM ANYWHERE

• Connect applications across:• Public cloud• Public & private cloud• Private to private cloud

through public cloud

• Relay to securely call private cloud applications hosted behind firewalls and NATs

• Clients can run on PCs, mobile devices or browser

• Use various languages (.NET, WCF, REST, Java, Node.js, PHP)

ENTERPRISE GRADE CLOUD SERVICE

• 99.9% monthly SLA• Delivery assurance,

reliable messaging, scale and load balancing

• Claims based security and identity federation with Active Directory and web identities

• No need for IT to change network config or install gateway devices

Page 22: Migrate an Existing Application to Microsoft Azure

What is Service Bus Relay• Enables hybrid

applications that run in both an Azure datacenter and your own on-premises enterprise environment

Page 23: Migrate an Existing Application to Microsoft Azure

Call internal service via Service Bus relay• Create a service bus relay• Add a service bus relay endpoint to the

internal service• Update the WCF service to use the Service

Bus relay endpoint for the internal service• Verify the Service Bus relay integration

Page 24: Migrate an Existing Application to Microsoft Azure

demoExpose Private WCF Service

ThroughMicrosoft Azure Service Bus

Page 25: Migrate an Existing Application to Microsoft Azure

Summary• Our scenario• Microsoft Azure Overview• Microsoft Azure SQL Database• Microsoft Azure Web Sites• Microsoft Azure Service Bus

Page 26: Migrate an Existing Application to Microsoft Azure

Resources• Microsoft Azure Free Trial

azure.microsoft.com/en-us/pricing/free-trial

• Microsoft Virtual Academy:www.microsoftvirtualacademy.com

• Microsoft Azure SQL Database:azure.microsoft.com/en-us/documentation/services/sql-database

• Microsoft Azure Web Sites:azure.microsoft.com/en-us/documentation/services/web-sites

• Microsoft Azure Service Bus:azure.microsoft.com/en-us/documentation/services/service-bus

Page 27: Migrate an Existing Application to Microsoft Azure

Thank You