StagingProduction swap Developer Production Developer.

39

Transcript of StagingProduction swap Developer Production Developer.

Page 1: StagingProduction swap Developer Production Developer.
Page 2: StagingProduction swap Developer Production Developer.

Deep Dive for Microsoft Azure Websites

Ahmed ElSayed (@ahmelsayed)SDE – Azure Websites

DEV-B329

Page 3: StagingProduction swap Developer Production Developer.

I- Development and Deployment

II- Debugging and Investigations

III- Management and Administration

This Session

Page 4: StagingProduction swap Developer Production Developer.

Deploying from Visual StudioDeploying from Source Control

Continuous deployment (Visual Studio Online, Github, Bitbucket etc…)

I- Development and Deployment

Page 5: StagingProduction swap Developer Production Developer.

Staged Publishing

I- Development and Deployment

Staging

Production

swap

Developer

Production

Developer

traffic

traffic

Page 6: StagingProduction swap Developer Production Developer.

Demo

continuous deployment with staged publishing

Page 7: StagingProduction swap Developer Production Developer.

Deploying from Visual StudioDeploying from Source Control

Continuous deployment (Github, Bitbucket, etc…)Custom deployment scriptsAnything from small deployment tweaks to complex workflowsE.g.: can be used to run tests (sample here)

I- Development and Deployment

Page 8: StagingProduction swap Developer Production Developer.

Demo

Custom deployment scripts

Page 9: StagingProduction swap Developer Production Developer.

WebJobs with Visual Studio

I- Development and Deployment

Page 10: StagingProduction swap Developer Production Developer.

Demo

Creating and deploying a WebJob using Visual Studio

Page 11: StagingProduction swap Developer Production Developer.

VS Online “Monaco”

I- Development and Deployment

GitHub swap

Developer 1

Developer 2

Staging

Production

VS Online “Monaco”

Developer 3

Page 12: StagingProduction swap Developer Production Developer.

Demo

Monaco

Page 13: StagingProduction swap Developer Production Developer.

Testing in Production

I- Development and Deployment

Staging

Production

swap

Developer

100% production.com

Page 14: StagingProduction swap Developer Production Developer.

Testing in Production

I- Development and Deployment

Staging

Production

swap

Developer

80% production.com

20% production.com

Page 15: StagingProduction swap Developer Production Developer.

Demo

Testing in Production

Page 16: StagingProduction swap Developer Production Developer.

Visual Studio Tools

II- Debugging and Investigations

Page 17: StagingProduction swap Developer Production Developer.

Demo

Remote debugging, log streaming, and accessing files from Visual Studio

Page 18: StagingProduction swap Developer Production Developer.

Demo

Remote debugging Java Applications using Eclipsehttps://github.com/Azure/azure-websites-java-remote-debugging

Page 19: StagingProduction swap Developer Production Developer.

Demo

Remote debugging NodeJs Applications using Node Inspector

Page 20: StagingProduction swap Developer Production Developer.

Kuduhttps://<mySite>.scm.azurewebsites.net/AuthenticatedRuns in the same security context as the main siteCan access the site files and environment variables

Great for admin and debugging tools

II- Debugging and Investigations

Page 21: StagingProduction swap Developer Production Developer.

Demo

Kudu Console, Process Explorer, and APIs

Page 22: StagingProduction swap Developer Production Developer.

More on KuduOpen Source: https://github.com/projectkudu/kuduWe accept contributions!

Git, Mercurial, logging, WebJobs, admin tools, etc…Post deployment hooks

Notification fires after deployment completionPayload contains details about the deployment

It’s a “Site Extension”. More on this later

II- Debugging and Investigations

Page 23: StagingProduction swap Developer Production Developer.

Support sitehttps://<mySite>.scm.azurewebsites.net/SupportLive view of number of requestsAbility to analyze and get memory dumps per request

II- Debugging and Investigations

Page 24: StagingProduction swap Developer Production Developer.

Demo

Support site

Page 25: StagingProduction swap Developer Production Developer.

III- Management and Administration

Azure Portal(s)

IIS Manager

PowerShell

xplat CLI

Visual Studio

Azure API

Azure Web Site

Page 26: StagingProduction swap Developer Production Developer.

Azure Resource Manager (ARM) TemplatesTemplates that describe a collection of Azure resourcesIdempotent template, so you can apply multiple times for the same result.

III- Management and Administration

Page 27: StagingProduction swap Developer Production Developer.

Simplified ARM template"resources": [ { "type": "Microsoft.Web/serverfarms" ... }, { "type": "Microsoft.Web/sites" ... } ]

Page 28: StagingProduction swap Developer Production Developer.

Demo

Azure PowerShell and ARM Templates

Page 29: StagingProduction swap Developer Production Developer.

Demo

IIS Manager

Page 30: StagingProduction swap Developer Production Developer.

Role Based Authentication Control (RBAC)OwnerContributorReader

III- Management and Administration

Page 31: StagingProduction swap Developer Production Developer.

Demo

RBAC

Page 32: StagingProduction swap Developer Production Developer.

Site ExtensionsOnly the site Owners or Contributors can access them.Runs in the same security context as the site.Have access to the files and environment

Kudu is a Site ExtensionVS Online “Monaco” is a Site Extension

You can write and share your own!http://azure.microsoft.com/blog/2014/09/09/writing-a-site-extension-for-azure-websites/

III- Management and Administration

Page 33: StagingProduction swap Developer Production Developer.

Site Extensions

Azure Web Site

User Site

Pre-installedSite Extensions

“Kudu”

“Monaco”

WebJobs

WebDeploy

“Bring your own”Site Extensions

Upload to site

Install from

gallery

foo.azurewebsites.net

foo.scm.azurewebsites.net

Page 34: StagingProduction swap Developer Production Developer.

Ahmed ElSayedEmail: [email protected]: @ahmelsayed

More questions?

Page 35: StagingProduction swap Developer Production Developer.

http://www.visualstudio.com

http://blogs.msdn.com/b/developer-tools/

http://msdn.microsoft.com/vstudio

DEV Track Resources

visualstudio

@visualstudio

visualstudio

Page 36: StagingProduction swap Developer Production Developer.

Resources

Learning

Microsoft Certification & Training Resources

www.microsoft.com/learning

Developer Network

http://developer.microsoft.com

TechNet

Resources for IT Professionals

http://microsoft.com/technet

Sessions on Demand

http://channel9.msdn.com/Events/TechEd

Page 37: StagingProduction swap Developer Production Developer.

Please Complete An Evaluation FormYour input is important!TechEd Schedule Builder CommNet station or PC

TechEd Mobile appPhone or Tablet

QR code

Page 38: StagingProduction swap Developer Production Developer.

Evaluate this session

Page 39: StagingProduction swap Developer Production Developer.

© 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, 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.