azure cloud dev camp - app platform

75
Azure App Platform Jesus Aguilar Sr Tech Evangelist @giventocode Blog:http://giventocode.com Microsoft Azure

Upload: giventocode

Post on 25-Jun-2015

831 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: Azure Cloud Dev Camp - App Platform

Azure App PlatformJesus AguilarSr Tech Evangelist

@giventocode

Blog:http://giventocode.com Microsoft Azure

Page 2: Azure Cloud Dev Camp - App Platform

Virtual

Machines

Page 3: Azure Cloud Dev Camp - App Platform

Azure Virtual Machines

Launch Windows Server and Linux in minutes

Scale from 1 to 1000s of VM Instances

Save money with per-minute billing

Open and extensible

Page 4: Azure Cloud Dev Camp - App Platform

Provisioning VM

>_

Page 5: Azure Cloud Dev Camp - App Platform

VM Gallery

5

A COLLECTION OF PREBUILT IMAGES FOR VARIOUS WORKLOADS

Microsoft Azure

Windows Server 2012 R2 Ubuntu Server 14.04 LTS CentOS 6.5SUSE Linux

Enterprise Server Oracle Linux 6.4.0.0.0

Windows 8.1 Enterprise

SQL Server 2014 Standard Oracle Database 11g R2 BizTalk Server 2013 SharePoint Server FarmMicrosoft Dynamics

GP 2013Zulu 8

SAP HANA

Developer Edition Puppet Enterprise 3.2.3 Barracuda Web ApplicationOracle WebLogic

Server 12.1.2Visual Studio Ultimate 2013

openSUSE 13.1

Page 6: Azure Cloud Dev Camp - App Platform

Virtual Machine Sizes

VM Size CPU Cores Memory # (1TB) Data Disks

Extra Small (A0) Shared 768 MB 1

Small (A1) 1 1.75 GB 2

Medium (A2) 2 3.5 GB 4

Large (A3) 4 7 GB 8

Extra Large (A4) 8 14 GB 16

A5 2 14 GB 4

A6 4 28 GB 8

A7 8 56 GB 16

A8 8 56 GB 16

A9 16 112 GB 16

Page 7: Azure Cloud Dev Camp - App Platform

Demo: Provisioning VMManaging VMs using Azure portal

Page 8: Azure Cloud Dev Camp - App Platform

VM Extensions

• Installable components to customize VM instances

• Enable various DevOps scenarios

• Can be added, updated, disabled or removed at any time

• Managed via portal, PowerShell and Management APIs

8Microsoft Azure

Page 9: Azure Cloud Dev Camp - App Platform

VM Extensions

9Microsoft Azure

List available VM extensions

Page 10: Azure Cloud Dev Camp - App Platform

Data Persistence

Data Disks

Azure Files

Page 11: Azure Cloud Dev Camp - App Platform

Disks and Images

Base OS image for new Virtual Machines

Sys-Prepped/Generalized/Read Only

Created by uploading or by capture

Writable Disks for Virtual Machines

Created during VM creation or during upload of existing VHDs.

Page 12: Azure Cloud Dev Camp - App Platform

Image Mobility

Page 13: Azure Cloud Dev Camp - App Platform

VM disk layout

Page 14: Azure Cloud Dev Camp - App Platform

Persistent Disks and Highly Durable

Page 15: Azure Cloud Dev Camp - App Platform

Azure Files•

Page 16: Azure Cloud Dev Camp - App Platform

• Share data across VMs and applications• Multiple writers, multiple readers using standard file system

semantics.

• Share settings throughout services• VMs can read settings and files from a common, shared

location. These can be updated externally via REST.

•Dev/Test/Debug• Very useful to have a shared location for installing applications,

setting up VMs, running tools, and keeping notes while developing, testing, and debugging cloud services.

Azure Files - Scenarios

Page 17: Azure Cloud Dev Camp - App Platform

Demo: VM and Azure Files

Page 18: Azure Cloud Dev Camp - App Platform

Azure WebsitesJesus AguilarSr Technical Evangelist

@giventocode

http://giventocode.com Microsoft Azure

Page 19: Azure Cloud Dev Camp - App Platform

Fastest way to build for the cloud

Page 20: Azure Cloud Dev Camp - App Platform

.NET

Python

Develop apps with…

Node.js

Java

PHP

Page 21: Azure Cloud Dev Camp - App Platform

GitHubVisual Studio

Online

Git BitBucketCodePlex DropBox FTP

Choose your own Adventure!

Page 22: Azure Cloud Dev Camp - App Platform

DemoAzure Website Creation

Page 23: Azure Cloud Dev Camp - App Platform

23

Deployments

Page 24: Azure Cloud Dev Camp - App Platform

Site Slots

Page 25: Azure Cloud Dev Camp - App Platform

Staging

Page 26: Azure Cloud Dev Camp - App Platform

Staging

Page 27: Azure Cloud Dev Camp - App Platform

Staging

Page 28: Azure Cloud Dev Camp - App Platform

Staging

Page 29: Azure Cloud Dev Camp - App Platform

Your identity goes with you

3rd party clouds/hosting

Azure AD

You

Page 30: Azure Cloud Dev Camp - App Platform

DemoVisual Studio Support with AD

Page 31: Azure Cloud Dev Camp - App Platform

Scale

Page 32: Azure Cloud Dev Camp - App Platform

Manual Scaling

1 6Instance Count Instances

Page 33: Azure Cloud Dev Camp - App Platform

AutoScale

Page 34: Azure Cloud Dev Camp - App Platform

AutoScale

Page 35: Azure Cloud Dev Camp - App Platform

AutoScale

Page 36: Azure Cloud Dev Camp - App Platform

Auto-Scaling (Metric)

2 6

60 80

Instance Count

CPU Percentage | Memory Percentage | Disk Queue Length | HTTP Queue Length | Data In | Data Out

Percent

Instances

[Metric]

Page 37: Azure Cloud Dev Camp - App Platform

DemoManual Scale

Auto Scale

Page 38: Azure Cloud Dev Camp - App Platform

Auto-Scale Considerations

•Only Scales the Web Tier

•Scale Up/Down is not instantaneous

Page 39: Azure Cloud Dev Camp - App Platform

Web Jobs

Page 40: Azure Cloud Dev Camp - App Platform

WebJobs

Page 41: Azure Cloud Dev Camp - App Platform

WebJobs

Page 42: Azure Cloud Dev Camp - App Platform

Traffic Manager

Page 43: Azure Cloud Dev Camp - App Platform

Azure

Websites

footprint

14 regions worldwide in 2014

Page 44: Azure Cloud Dev Camp - App Platform

Intelligent customer routing with Traffic Manager

www.yourapp.com

Page 45: Azure Cloud Dev Camp - App Platform

Intelligent customer routing with Traffic Manager

www.yourapp.com

Page 46: Azure Cloud Dev Camp - App Platform

Backup

Page 47: Azure Cloud Dev Camp - App Platform

Backups

Websites Settings ManifestDatabase (Optional)Websites Files

Page 48: Azure Cloud Dev Camp - App Platform

Hybrid Connections

Page 49: Azure Cloud Dev Camp - App Platform

Web Sites

Mobile Services

Corporate Network

Microsoft SQL Server

Hybrid Connection

Other published

resourcesHybrid

Connection

Manager

Hybrid Connections

Page 50: Azure Cloud Dev Camp - App Platform

Redis Cache

Page 51: Azure Cloud Dev Camp - App Platform

Redis Cache Service

• Full Functionality Redis Cache Cluster

• Master/Slave Configuration

• Up to 26GB

• SSL Supported

Page 52: Azure Cloud Dev Camp - App Platform

DemoRedis Cache

Page 53: Azure Cloud Dev Camp - App Platform

Application Insights

Page 54: Azure Cloud Dev Camp - App Platform

Application Insights

Page 55: Azure Cloud Dev Camp - App Platform

Azure Mobile Services

Don’t Solve the Same Problem Twice!

Page 56: Azure Cloud Dev Camp - App Platform

=

Mobile Services

Page 57: Azure Cloud Dev Camp - App Platform

Node.js Express

.NET Web API

SQL Table Storage

Blob Storage

WNS & MPNS

APNS GCM

Mongo DB

Notification Hubs

Source Control

Facebook Twitter Microsoft Google Azure Active Directory

Windows Store

iOS

Android

Xamarin

Phonegap

Sencha

Windows Phone

iOS

Android

HTML 5/JS

SDKs

REST A

PI

Hybrid Connections

Page 58: Azure Cloud Dev Camp - App Platform

Action HTTP Verb URL Suffix

Create POST /TodoItem

Read GET /TodoItem?$filter=id%3D42

Update PATCH /TodoItem/id

Delete DELETE /TodoItem/id

Data Operations and their REST Equivalents

Base REST API Endpoint URL

https://Mobileservice.azure-mobile.net/tables/*

Odata protocol

LINQ support for

the C# SDK

A Basic table

Page 59: Azure Cloud Dev Camp - App Platform

Some Basic Concepts

59

DTO = Data Transfer Object

Model = Entities, Data Model

Mapper = Object Mapping

Page 60: Azure Cloud Dev Camp - App Platform

New data model (“greenfield”)

TableController

DomainManagerDTO

DTO

Mobile ServiceDevice

SQL Database

BYOD

MongoDB

Table Storage

Page 61: Azure Cloud Dev Camp - App Platform

Existing data model (“brownfield”)

TableController

DomainManagerDTO

DTO

Mobile ServiceDevice

Model

AutoMapper

SQL Azure/BYOD

Existing

Tables

System

Properties

Table

Page 62: Azure Cloud Dev Camp - App Platform

Offline support

TableController

(with optimistic

concurrency)

Mobile ServiceDevice

SQL Database

BYOD

MongoDB

Table Storage

SQLite

Explicit Push/Pull

Conflict resolution

Page 63: Azure Cloud Dev Camp - App Platform

BizTalk Services Hybrid Connections

Microsoft Azure Your Enterprise

Connection string points to My-Database:1433

Hybrid Connection

Manager

My-Database

1433

http://azure.microsoft.com/en-us/documentation/articles/mobile-services-dotnet-backend-hybrid-connections-get-started/

Page 64: Azure Cloud Dev Camp - App Platform

DemoAzure Mobile Services with .NET backend

Page 65: Azure Cloud Dev Camp - App Platform

Web Sites Service Architecture

Microsoft Azure

Load Balancer

Runtime Database

Application Database

API Endpoint

Frontend (IIS ARR)

Publish Endpoint Blob Storage

File Server

Metering

Deployment

Server(s)

Page 66: Azure Cloud Dev Camp - App Platform

Debug Console (Kudu)

https://[website-name].scm.azurewebsites.net

Environment Debug Console Diagnostics & Logs Web Hooks REST API

Page 67: Azure Cloud Dev Camp - App Platform

Web Site

Microsoft Azure Web Site

Public Site Extensions Private Site Extensions

Web Site Kudu Web Jobs

Monaco MSDeploy Build/Upload Your Own

Gallery

Page 68: Azure Cloud Dev Camp - App Platform

Customizing the Deployment

>: azure site deploymentscript –hhelp:help: Generate custom deployment scripthelp: Usage: site deploymentscript [options]help:help: Options:help: --aspWAP <projectFilePath> help: --aspWebSitehelp: --nodehelp: --phphelp: --pythonhelp: --basic

Microsoft Azure Cross Platform Command-Line Tools

Page 69: Azure Cloud Dev Camp - App Platform
Page 70: Azure Cloud Dev Camp - App Platform
Page 71: Azure Cloud Dev Camp - App Platform
Page 72: Azure Cloud Dev Camp - App Platform

Fortune 500 using Azure

>57% >250kActive websites

Greater than

1,000,000SQL Databases in Azure

>20TRILLIONstorageobjects >300 MILLION

AD users

>13 BILLIONauthentication/wk>2

MILLIONrequests/sec >1

MILLIONDevelopers

registered with

Visual Studio

Online

Page 73: Azure Cloud Dev Camp - App Platform

Site Extensions

Page 74: Azure Cloud Dev Camp - App Platform

WebSockets

5Concurrent

Connections

Tier Free

35Shared

350Basic / Standard Premium

Unlimited

Persistent Connection

Page 75: Azure Cloud Dev Camp - App Platform

Web Hosting Plan

Azure Subscription

$Pricing Tier Geographic Region

+ +