azure cloud dev camp - app platform
TRANSCRIPT
Azure App PlatformJesus AguilarSr Tech Evangelist
@giventocode
Blog:http://giventocode.com Microsoft Azure
Virtual
Machines
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
Provisioning VM
>_
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
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
Demo: Provisioning VMManaging VMs using Azure portal
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
VM Extensions
9Microsoft Azure
List available VM extensions
Data Persistence
Data Disks
Azure Files
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.
Image Mobility
VM disk layout
Persistent Disks and Highly Durable
Azure Files•
•
•
• 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
Demo: VM and Azure Files
Azure WebsitesJesus AguilarSr Technical Evangelist
@giventocode
http://giventocode.com Microsoft Azure
Fastest way to build for the cloud
.NET
Python
Develop apps with…
Node.js
Java
PHP
GitHubVisual Studio
Online
Git BitBucketCodePlex DropBox FTP
Choose your own Adventure!
DemoAzure Website Creation
23
Deployments
Site Slots
Staging
Staging
Staging
Staging
Your identity goes with you
3rd party clouds/hosting
Azure AD
You
DemoVisual Studio Support with AD
Scale
Manual Scaling
1 6Instance Count Instances
AutoScale
AutoScale
AutoScale
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]
DemoManual Scale
Auto Scale
Auto-Scale Considerations
•Only Scales the Web Tier
•Scale Up/Down is not instantaneous
Web Jobs
WebJobs
WebJobs
Traffic Manager
Azure
Websites
footprint
14 regions worldwide in 2014
Intelligent customer routing with Traffic Manager
www.yourapp.com
Intelligent customer routing with Traffic Manager
www.yourapp.com
Backup
Backups
Websites Settings ManifestDatabase (Optional)Websites Files
Hybrid Connections
Web Sites
Mobile Services
Corporate Network
Microsoft SQL Server
Hybrid Connection
Other published
resourcesHybrid
Connection
Manager
Hybrid Connections
Redis Cache
Redis Cache Service
• Full Functionality Redis Cache Cluster
• Master/Slave Configuration
• Up to 26GB
• SSL Supported
DemoRedis Cache
Application Insights
Application Insights
Azure Mobile Services
Don’t Solve the Same Problem Twice!
=
Mobile Services
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
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
Some Basic Concepts
59
DTO = Data Transfer Object
Model = Entities, Data Model
Mapper = Object Mapping
New data model (“greenfield”)
TableController
DomainManagerDTO
DTO
Mobile ServiceDevice
SQL Database
BYOD
MongoDB
Table Storage
Existing data model (“brownfield”)
TableController
DomainManagerDTO
DTO
Mobile ServiceDevice
Model
AutoMapper
SQL Azure/BYOD
Existing
Tables
System
Properties
Table
Offline support
TableController
(with optimistic
concurrency)
Mobile ServiceDevice
SQL Database
BYOD
MongoDB
Table Storage
SQLite
Explicit Push/Pull
Conflict resolution
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/
DemoAzure Mobile Services with .NET backend
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)
Debug Console (Kudu)
https://[website-name].scm.azurewebsites.net
Environment Debug Console Diagnostics & Logs Web Hooks REST API
Web Site
Microsoft Azure Web Site
Public Site Extensions Private Site Extensions
Web Site Kudu Web Jobs
Monaco MSDeploy Build/Upload Your Own
Gallery
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
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
Site Extensions
WebSockets
5Concurrent
Connections
Tier Free
35Shared
350Basic / Standard Premium
Unlimited
Persistent Connection
Web Hosting Plan
Azure Subscription
$Pricing Tier Geographic Region
+ +