Partner Practice Enablement - Overview This session will focus on integration strategies for...

50
Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft Azure Cloud Services. Learn how to securely consume services in a virtual machine from your applications. Audience: IT Professionals, Architects and Developers Module 1 – Introduction to Microsoft Azure Module 2 – Microsoft Azure Virtual Machines Module 3 – Microsoft Azure Networking Module 4 – Microsoft Azure Active Directory Module 5 - Cloud Services and Websites Module 6 - SQL Server and SharePoint Module 7 - Management and Monitoring

Transcript of Partner Practice Enablement - Overview This session will focus on integration strategies for...

Page 1: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Partner Practice Enablement - Overview

This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft Azure Cloud Services. Learn how to securely consume services in a virtual machine from your applications.

Audience: IT Professionals, Architects and Developers

Module 1 – Introduction to Microsoft Azure

Module 2 – Microsoft Azure Virtual Machines

Module 3 – Microsoft Azure Networking

Module 4 – Microsoft Azure Active Directory

Module 5 - Cloud Services and Websites

Module 6 - SQL Server and SharePoint

Module 7 - Management and Monitoring

Page 2: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Cloud Services, Websites and

Infrastructure Services

Page 3: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Agenda

Microsoft Azure ComputeVirtual Machines and Cloud ServicesVirtual Machines and WebsitesAzure Websites for IT Professionals

Page 4: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Microsoft Azure Compute

Page 5: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Virtualization

O/S

Hardware

Network

Data

Applications

Firewall

Focus on Application

Microsoft AzureTraditional Datacenter

Web Applications

Data

Websites

Applications

Firewall Rules

Data

Virtual Network

Cloud Services

Virtual Network

Data

Applications

Firewall Rules

O/S

Virtual Machines

Mobile Applications

Data

Mobile Services

Page 6: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Why Integrate?

Application DependenciesAllows development of new applications or migration of existing applications that have dependencies on resources that require virtual machines such as SQL Server, Mongo DB, Oracle etc...

Hybrid ConnectivityUsing Microsoft Azure Virtual Networks to connect to on-premises resources allows for line of business applications hosted in Microsoft Azure.

Page 7: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Cloud Services

Page 8: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Workloads for Cloud Services

Workloads that are designed to be stateless and can be easily scaled to multiple instances

N-Tier Applications are well suited because Cloud Service has superb support for cross role communication and discovery.

Your choice of language and frameworks as long as it runs on Windows.

Workloads that can be deployed in an automated fashion

Page 9: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Cloud Service

Microsoft Azure Service Model Example cloud service configuration with a single web role and a single worker role

VM1 VM2

VM5 VM6

VM9

VM3 VM4

VM7 VM8

VMn

VM1 VM2

VM5

VM3 VM4

VMn

Page 10: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

ROLE

VIP Swap

VM1 VM2

VM3 VM4

VM1 VM2

VM3 VM4

Page 11: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Cloud Service 2

Mixing Virtual Machines & Stateless RolesMultiple cloud services with stateless and virtual machines

Cloud Service 1

VM1 VM2

VM5 VM6

VMn

VM1 VM1

VM1 VM2

VM5 VM6

VMn

Page 12: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Virtual Machines and Cloud Services Side by Side

Direct Connectivity Using Virtual NetworkingFor advanced connectivity scenarios such as Active Directory or DCOM

Connect Cloud Apps via VIPsEasily compose services by connecting public endpoints

Page 13: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Connecting Cloud Services via VIPsStrengthsSimplicityTenant AutonomyEasy Local Dev/Test

SQL Data Access Traffic

Through Public

Endpoint

WeaknessesLatency due to extra hopsAccess is controlled port-by-port

WA Web Role

Cloud Service 1

Cloud Service 2

SQL Server

Load Balancer

80

2001-1433

Load Balancer

Secure Endpoints with ACL

Page 14: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

DEMOCloud Services VIP Connectivity

Page 15: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Connecting Cloud Services with VNETStrengthsLower LatencyProtect VMs from the open InternetAdvanced Connectivity Requirements

WeaknessesVirtual Network ComplexityMicrosoft Azure provided DNS does not span cloud servicesFor local development and test site to site or point to site is required.

Direct Access

via VNET

FrontEndSubnet

(10.0.0.0/16)

SQLSubnet (10.1.0.0/16)

Load Balancer

80

WA Web Role

Cloud Service1

Cloud Service 2

AD

SQL Mirror

AD Subnet

(10.2.0.0/16)

ContosoVNet (10.0.0.0/8)

Page 16: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

DEMOCloud Services Virtual Network Connectivity

Page 17: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Websites

Page 18: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Virtualization

O/S

Hardware

Network

Data

Applications

Firewall

Focus on Application

Microsoft AzureTraditional Datacenter

Web Applications

Data

Websites

Applications

Firewall Rules

Data

Virtual Network

Cloud Services

Virtual Network

Data

Applications

Firewall Rules

O/S

Virtual Machines

Mobile Applications

Data

Mobile Services

Page 19: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Microsoft Azure Web Sites powerful web sites in seconds

start simple• Start Free (up to 10 sites)• Scale up & out as needed• Automatic load balancing

and shared storage across instances

• No Friction

code smart• Classic ASP, ASP.NET, PHP,

Node.js, Java, Python, or any FastCGI Handler

• SQL DB, MySQL, or any NoSQL

• Develop on Windows, Linux, or OSX

go live• Rapid deployments and

iterations• Continuous Integration with

VSO, GitHub, CodePlex, etc.• Built-in Monitoring and

Performance Data• Quick and easy access to logs

Page 20: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Creating a Web Site

QUICK CREATECreates an empty web site

CUSTOM CREATECreates an empty Web Site

Optionally create a SQL Database or MySQL Database linked to the Web Site

Publish directly from source control

FROM GALLERYCreate a new site from an existing framework.

Blogs, CMS, E-Commerce, etc.

Using the Azure Management Portal

Page 21: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Publishing Web SitesFTPFTP Client (ie: FileZilla)Visual Studio

Web DeployVisual Studio

GitUsually Automated via Service Hooks

FTP://

WEBDEPLOY

Page 22: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Automating Web Site DeploymentPublishing with Command Line ToolsMSBuildFTP ScriptsPowerShellCross-Platform Command Line Interface (CLI)Web Deploy Command Line

Publishing from Source ControlGenerally to a staged deployment slot…

Page 23: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Deployment SlotsA separate web site linked to your primary web site.Each deployment slot has it’s own URL and runtime environment.

Page 24: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Staged PublishingPublish updates to your web site into the staging deployment slot.

Run and Test in the Staging slot.

Instantly Swap the Staging and Production Slots• “Go Live”• “Oops!”

Page 25: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Publishing From Source Control

Git or Mercurial repositories are supported.

Page 26: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Connecting Websites via VIPs

StrengthsAccess any backend that can be hosted on a virtual machine.

Access on-premises resources using virtual machine hosted in virtual network.

SQL Data Access Traffic

Through Public Endpoint

WeaknessesVirtual Machine management overhead

Access is controlled port-by-port

Requires Shared or Standard mode with a custom domain to get a persistent IP from websites to secure with an access control list.

Cloud Service

SQL Server

Load Balancer

80

2001-1433

Secure Endpoints with ACL

Load Balancer

Website

Page 27: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

LABWebsites with VIP Connectivity

Page 28: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Custom Domains and SSL for Azure Websites

Page 29: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Custom Domains<sitename>.azurewebsites.net

138.91.225.40

Northwind Web Site

Fabrikam Web Site

Contoso Web Site

Custom

RECORD TYPE

NAME VALUE

A contoso.com 138.91.225.40

CNAME www.contoso.com contosoweb.azurewebsites.net

CNAME support.contoso.com contosoweb.azurewebsites.net

CNAME awverify.contoso.com awverify.contosoweb.azurewebsites.net

Page 30: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Configuring Custom DomainsDNS RegistrarAdd A or CNAME Record(s).

Azure Management PortalIn domain names section of the configure page for the web site.

Click the manage domains button.• Add domain name(s)

Page 31: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

SSL with Azure Web SitesSSL Provided by Defaulthttps://contosoweb.azurewebsites.net.

SSL with Custom DomainRequires Standard Mode

SSL BindingsServer Name Indication (SNI) SSL• Modern Applications and OS’s capable of using SNI SSL• Multiple domains can share the same IP AddressIP Based SSL• Traditional SSL that supports older applications and OS’s• One domain per IP Address

Page 32: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Configuring SSL in Azure Web SitesObtain certificate(s) from a Certificate Authority.

Upload Certificate(s) to Azure. • .pfx with password

Configure SSL Bindings.

Page 33: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

IP Based SSL ConsiderationsDedicated IP Address (inbound)Assigned to the Web Site.

Can be retrieved in the quick glance section of the DASHBOARD page of the web site.

Not the same as the Load Balancer IP Address used when configuring the A Record for a custom domain.• A Record must be updated to use this Virtual IP

Address.

Page 34: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Scaling Websites

Page 35: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Scaling OptionsScale Up Small to Large Instance Sizes

Scale OutAdd Additional InstancesShared Plan: Up to 6 Shared InstancesBasic Plan: Up to 3 Dedicated InstancesStandard Plan: Up to 10 Dedicated Instances

SMALL1 CORE1.75 GB MEMORY1 GB STORAGE

MEDIUM2 CORES3.5 GB MEMORY10 GB STORAGE

LARGE4 CORES7 GB MEMORY50 GB STORAGE

For more information on websites optionshttp://azure.microsoft.com/en-us/pricing/details/websites/

Page 36: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Websites Scalability

Free Shared Basic Standard

Web Sites 10 100 Unlimited Unlimited

Storage 1 GB 1 GB 10 GB 50 GB

Compute Instance Shared Shared Dedicated Dedicated

Scale Out 1 6 3 10

AutoScale No No No Yes

Size CPU Cores Memory

Small 1 1.75 GB

Medium 2 3.5 GB

Large 4 7 GB

Page 37: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Backup and Restore Websites

Page 38: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Backup and Restore FeatureProvides back and restore services for your web site and linked resources (databases).

RequirementsStandard ModeAn Azure Storage Account (same subscription the web site is deployed in)• Backups are stored in Blob storage.

Page 39: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Website BackupHow Backups are InitiatedManual or Automated

Content Included in the BackupWebsite configurationWebsite files (content)Linked Resources (SQL Database, MySQL)

How Backups are StoredAzure Storage Account (blob)• Container name: “websitebackups” A backup consists of a .ZIP file (the backup) and a .XML file (the manifest for the .ZIP).

Page 40: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Website RestoreWebsite Restore TargetsCurrent Website• Existing Website is overwritten

New Website• Creates a new Website in the same region as the original.• Website name is “restored-originalWebsiteName”

Database Restore TargetsNoneRestore to a different database serverRestore to the original database

Page 41: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Site Control Management (“Kudu”)

Page 42: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

What is “Kudu”?A Separate Companion/Administrative Web Site to your Web SiteYour Web Site: http://contoso.azurewebsites.netKudu Web Site: https://contoso.scm.azurewebsites.net

AuthenticationOnly the owner of a Web Site can Access the Kudu SiteUse Credentials Associated with your Microsoft Azure Subscription

Every Web Site gets a Kudu Site by DefaultIncluding Staging and Production slots

Security Context

contoso

Cloud Drive

• APP SETTINGS

• CONNECTION STRINGS

• ENVIRONMENT VARIABLES

• SERVER VARIABLES

• SYSTEM INFORMATION

kudu

Page 43: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

More About KuduDeveloped as an Open Source Projecthttps://github.com/projectkudu/kuduContribute to it or host your own

Kudu is a “Site Extension”An Extension to your Web SiteIt has access to the file system and runtime environment of your Web Site

Page 44: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Web Site Extension Gallery

Page 45: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Summary

Microsoft Azure ComputeVirtual Machines and Cloud ServicesVirtual Machines and WebsitesAzure Websites for IT Professionals

Page 46: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Suggested Learning ExercisesAssignment Estimated

TimeHands-on Labs and TutorialsConnecting a PaaS application to an IaaS Applicationhttps://github.com/WindowsAzure-TrainingKit/HOL-ConnectingApplications

Connecting a PaaS application to an IaaS Application with a Virtual Networkhttps://github.com/WindowsAzure-TrainingKit/HOL-ConnectingApplicationsVNet

Deploying a .NET Website with a MongoDB Backend on a Virtual Machinehttp://www.windowsazure.com/en-us/documentation/articles/web-sites-dotnet-store-data-mongodb-vm/

• 45 minutes

• 45 minutes

• 45 minutes

VideoIaaS + PaaS = <3http://channel9.msdn.com/Events/TechEd/NorthAmerica/2013/WAD-B325

Microsoft Azure Websiteshttp://channel9.msdn.com/Events/windowsazure/Learn-2012TechEd-EU/WebSites

• 1 hour

• 1 hour

Page 47: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Session Resources

Microsoft Azure Virtual Network Overview

http://msdn.microsoft.com/en-us/library/windowsazure/jj156007.aspx

Instructor Led Training – Microsoft Azure for IT Professionals and Developers

http://www.opsgility.com/courses/itpro-five-day

http://www.opsgility.com/courses/dev-four-day

Network ACL Capability in Microsoft Azure PowerShell

http://michaelwasham.com/windows-azure-powershell-reference-guide/network-access-control-list-capability-in-windows-azure-powershell/

Page 48: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Microsoft Azure ResourcesMicrosoft Partner Learning Path

https://mspartnerlp.mspartner.microsoft.com/LearningPath

Microsoft Azure Friday

http://www.windowsazure.com/en-us/documentation/videos/windows-azure-friday/

Microsoft Virtual Academy

http://www.microsoftvirtualacademy.com

Channel 9 Microsoft Azure

http://channel9.msdn.com/WindowsAzure

Questions

http://stackoverflow.com/questions/tagged/azure

http://social.msdn.microsoft.com/Forums/windowsazure

Page 49: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Coming Up Next . . .SQL Server and SharePoint

Page 50: Partner Practice Enablement - Overview This session will focus on integration strategies for applications deployed using Microsoft Azure Websites and Microsoft.

Thank You