Automating the App Lifecycle

92
Automating the App Lifecycle Sriram Krishnan Microsoft Corporation SVC25

description

SVC25. Automating the App Lifecycle. Sriram Krishnan Microsoft Corporation. a utomate \aw - t uh - meyt \ To replace or enhance human labor with machines. . October 2008. ?. Windows Azure Service Management API. announcing. API. Important portal functionality. What does this mean?. - PowerPoint PPT Presentation

Transcript of Automating the App Lifecycle

Page 1: Automating the App Lifecycle

Automating the App Lifecycle

Sriram KrishnanMicrosoft Corporation

SVC25

Page 2: Automating the App Lifecycle

automate \aw-tuh-meyt\ To replace or enhance human labor with machines

Page 3: Automating the App Lifecycle

<1>

Page 4: Automating the App Lifecycle

October 2008

Page 5: Automating the App Lifecycle
Page 6: Automating the App Lifecycle
Page 7: Automating the App Lifecycle

?

Page 8: Automating the App Lifecycle

Windows Azure Service Management API

announcing

Page 9: Automating the App Lifecycle

API

Page 10: Automating the App Lifecycle

Important portal functionality

Page 11: Automating the App Lifecycle

What does this mean?

Page 12: Automating the App Lifecycle
Page 13: Automating the App Lifecycle
Page 14: Automating the App Lifecycle
Page 15: Automating the App Lifecycle
Page 16: Automating the App Lifecycle
Page 17: Automating the App Lifecycle

Protocol

Page 18: Automating the App Lifecycle

Protocol

REST + XML

Page 19: Automating the App Lifecycle

Protocol

Everything over HTTPS

Page 20: Automating the App Lifecycle

POST https://management.core.windows.net/<subscription-id>/services/hostedservices/<service-name>/deploymentslots/<slot-name>

Page 21: Automating the App Lifecycle

POST https://management.core.windows.net/<subscription-id>/services/hostedservices/<service-name>/deploymentslots/<slot-name>

<?xml version="1.0" encoding="utf-8"?><Deployment xmlns=”http://schemas.microsoft.com/windowsazure”>

<Name>deployment-name</Name><PackageUrl>package-url-in-blob-storage</

PackageUrl><Configuration>base64-encoded-configuration-

file</Configuration><Label>base64-encoded-deployment-label</Label>

</Deployment>

Page 22: Automating the App Lifecycle

Protocol

Page 23: Automating the App Lifecycle

Auth

Protocol

Page 24: Automating the App Lifecycle

X509 certs

Page 25: Automating the App Lifecycle

Any valid cert

Multiple certs

Add/revoke anytime

Page 26: Automating the App Lifecycle

Auth

Protocol

Page 27: Automating the App Lifecycle

Operations

Auth

Protocol

Page 28: Automating the App Lifecycle

Operations supported

Page 29: Automating the App Lifecycle

C/R/U/D deployments

Role status

Change config (no. of VMs, settings, etc)

Upgrade

Storage keys

Much more…

Page 30: Automating the App Lifecycle

Operations

Auth

Protocol

Page 31: Automating the App Lifecycle

How can you use it?

Page 32: Automating the App Lifecycle

csmanage.exe

Page 34: Automating the App Lifecycle

Use REST+XML to roll your own

Page 35: Automating the App Lifecycle
Page 36: Automating the App Lifecycle

Service Management API

demo

Page 37: Automating the App Lifecycle

Pricing

Page 38: Automating the App Lifecycle

Free!

Page 39: Automating the App Lifecycle

What can you build with it?

Page 40: Automating the App Lifecycle

http://www.flickr.com/photos/ejpphoto/2314610838/

Page 41: Automating the App Lifecycle

http://www.flickr.com/photos/balakov/3082423010/

Page 42: Automating the App Lifecycle
Page 43: Automating the App Lifecycle

Integrate with tools/dashboards

Nightly build/continuous integration

Monitoring systems

Page 44: Automating the App Lifecycle
Page 45: Automating the App Lifecycle

</1>

Page 46: Automating the App Lifecycle

December 4th, 1996

Page 47: Automating the App Lifecycle
Page 48: Automating the App Lifecycle
Page 49: Automating the App Lifecycle
Page 50: Automating the App Lifecycle

Oh Oh!

Page 51: Automating the App Lifecycle
Page 52: Automating the App Lifecycle

Trickiest patch ever

Page 53: Automating the App Lifecycle
Page 54: Automating the App Lifecycle

<2>

Page 55: Automating the App Lifecycle

Upgrades can be hard

Page 56: Automating the App Lifecycle

3

Page 57: Automating the App Lifecycle

+

Page 58: Automating the App Lifecycle

2

Page 59: Automating the App Lifecycle

Stage Deployment Production Deployment

Page 60: Automating the App Lifecycle

Stage Deployment Production Deployment

Page 61: Automating the App Lifecycle

1

Page 62: Automating the App Lifecycle

'In-place' upgrade

announcing

Page 63: Automating the App Lifecycle

Production Deployment

Page 64: Automating the App Lifecycle

Production Deployment

(new bits)

Page 65: Automating the App Lifecycle

Upgrade Domain

Page 66: Automating the App Lifecycle

Production Deployment

Page 67: Automating the App Lifecycle

Web

Worker

Web

Worker

Web

Worker

Web

Worker

Web

Worker

Web

Worker

Page 68: Automating the App Lifecycle

Web

Worker

Web

Worker

Web

Worker

Web

Worker

Web

Worker

Web

Worker

upgradeDomainCount=“2”

Page 69: Automating the App Lifecycle

Automatic vs Manual

Page 70: Automating the App Lifecycle

Web

Worker

Web

Worker

Web

Worker

Web

Worker

Web

Worker

Web

Worker

upgradeDomainCount=“2”

Page 71: Automating the App Lifecycle

Web

Worker

Web

Worker

Web

Worker

Web

Worker

Web

Worker

Web

Worker

upgradeDomainCount=“3”

Page 72: Automating the App Lifecycle

Web

Worker

Web

Worker

Web

Worker

Web

Worker

Web

Worker

Web

Worker

upgradeDomainCount=“1”

Page 73: Automating the App Lifecycle

Role- specific upgrade

Page 74: Automating the App Lifecycle

Web

Worker

Web

Worker

Web

Worker

Web

Worker

Web

Worker

Web

Worker

Page 75: Automating the App Lifecycle

When to use in-place upgrade

Page 76: Automating the App Lifecycle

Changes affecting a single role

When you have ‘soft-state’

When you don’t want to maintain a staging environment

Page 77: Automating the App Lifecycle

In-place upgrade

demo

Page 78: Automating the App Lifecycle

</2>

Page 79: Automating the App Lifecycle
Page 80: Automating the App Lifecycle
Page 81: Automating the App Lifecycle
Page 82: Automating the App Lifecycle
Page 83: Automating the App Lifecycle

<3>

Page 84: Automating the App Lifecycle

Auto scaling

Page 85: Automating the App Lifecycle

App

Diag.API

Control

Page 86: Automating the App Lifecycle

Auto scaling

demo

Page 87: Automating the App Lifecycle
Page 88: Automating the App Lifecycle
Page 89: Automating the App Lifecycle

</3>

Page 91: Automating the App Lifecycle

© 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 92: Automating the App Lifecycle