60
An Introduction to Windows Azure Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Embed Size (px)

Citation preview

Page 1: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

An Introduction to Windows AzureHilton GiesenowPrincipal Consultant, 3fifteenMicrosoft MVP

Page 2: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Case Study

Page 3: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

What is “the cloud”

− “cloud computing” is using software or infrastructure services hosted over the Internet - Hilton Giesenow

Page 4: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

[x] as a Service

SaaS

PaaS IaaS

Page 5: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Windows Azure, On One Slide

− The “cloud” is− 1000s of geo-distributed servers & networking

− Windows Azure − An operating system for the cloud

− The “operating system” provides− Application hosting− Automated service management

− Upload your code and “service model”; press START

− Durable storage at massive scale

Page 6: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Why the Cloud

− VERY Quick Provisioning− New business− Growing business (up OR down)

− Easier Maintenance− Lower TCO

− “commodity” / “utility” computing− Schedules of usage− Spikes in usage

− Unpredicted− Predicted

Page 7: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

“Azure”

Page 8: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Windows Azure, In One Picture

MS Datacenters

Business Portal

Developer Portal

Com

pute

Clu

ster

……

Service Management Service

REST

REST

Sto

rage

Clu

ster

Page 9: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

− Relational database as a service− Highly available, automatically

maintained− Extension of the SQL Server Data

Platform

Database

Business AnalyticsReporting Data Sync

Page 10: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

SQL Azure Database Overview

− Relational database, provided as a service− Highly symmetrical development and

tooling experience (use TDS protocol and T-SQL)

− Highly scaled out, on commodity hardware

− Built on the SQL Server technology foundation

− Beyond “hosted database”− High availability, DB provisioning, and DB

management are provided by the service− Pay for what you use

Page 11: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

SQL Azure Network TopologyApplicatio

n

InternetAzure Cloud

LB

TDS (tcp)

TDS (tcp)

TDS (tcp)

Applications use standard SQL client libraries: ODBC, ADO.Net, PHP, …

Load balancer forwards ‘sticky’ sessions to TDS protocol tier

Security Boundary

SQL SQL SQL SQL SQLSQL

Gateway

Gateway

Gateway

Gateway

Gateway

Gateway

Gateway: TDS protocol gateway, enforces AUTHN/AUTHZ policy; proxy to CloudDB

Scalability and Availability: Fabric, Failover, Replication, and Load balancing

Page 12: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Demo

− From “on-prem” to the cloud− Creating an Azure DB− Migrating a DB to Azure

Page 13: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

SQL Azure

From “on-prem” to the cloudCreating an Azure DBMigrating a DB to Azure

<demo/>

Page 14: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Overview

− High Availability− Quick Provisioning− Low Cost− _Subset_ of SQL Server 2008− Shared – play nice!

− Throttling− 5 mins idle time− 5 mins long-running operation

Page 15: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

SQL Azure Service Provisioning

> Each account has zero or more servers> Azure wide, provisioned in a common portal

> Billing instrument

> Each server has one or more databases> Contains metadata about the databases

> Unit of authentication and security

> Unit of Geo-location

> The server is a logical grouping of your DBs

> Each database has standard SQL objects> Unit of consistency

> Contains users, tables, views, indices, etc…

Account

Server

Database

Page 16: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Case Study

Page 17: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Synchronization− Why you need sync:

− Incremental changes− Unreliable and/or slow network− Conflict detection and resolution− Topology flexibility

− How to get sync:− Build it yourself, but sync is not easy!− Use Microsoft Sync Framework

Page 18: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Example Sync Framework Customers

PricewaterhouseCoopers

Credit Suisse

SyncToy

PIM Data

Files

Relational

Relational

Favorites

Lists

SharePoint 2010

SharePoint Workspace 2010 (Groove)

Page 19: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Summary

On-Premises Applications

Sync

SyncSync

Offline-Capable Cached ModeApplications

Sync

Sync

Sync

Sync

Browser Clients

Business-to-

Business

SQL Azure Platform

Page 20: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

SyncFX Application Components

Sync Provider

Sync Application

Sync Provider

Sync Orchestrator

Store

Sync Runtime

Store

Sync Runtime

Changes Changes

Sync()

Configure Configure

Page 21: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Sync Framework

<demo/>

Page 22: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

>>FUTURE

• Separates data control from store

• Issues capabilities to encrypt/decrypt data

• Empowers customers and partners

Collaboration with sensitive data

Privacy

ControlAccountabilit

y

Trustworthy Collaboration Example

Sensitive Business

Data

PublishersData Owners

Sensit

ive

busines

s dat

a Sensitive

business data

Subscribers

Auditors

Audit logs

SystemAdministrators

Capability Generation

Center

Page 23: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

− Flexible application hosting− Lights-out service management

− Provide code & service model, hit ENTER− Storage at massive scale

Compute StorageManagement

Page 24: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Case Study

Page 25: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Windows Azure

Creating a website & hosting it in Azure

<demo/>

Page 26: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

“Web Role”

Web Role

IIS Host

Your Code

Page 27: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Windows Azure

Background Service (“worker”)

<demo/>

Page 28: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

“Worker Role”

Worker RoleSystem Host

Your Code

Page 29: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Web vs Worker Role

Web Role

IIS Host

Your Code

Worker RoleSystem Host

Your Code

Page 30: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Storage

Storage

Queue Blob

Tables

Web Role

Worker Role

Drives

Page 31: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Fundamental Storage Concepts− Tables – Provide structured storage. A Table

is a set of entities, which contain a set of properties

− Queues – Provide reliable storage and delivery of messages for an application

− Blobs – Provide a simple interface for storing named files along with metadata for the file

− Drives – Provides durable NTFS volumes for Windows Azure applications to use (new)

31

Page 32: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Queues

Queues

“Thumbnail Jobs”

“Picture1”

Messages

“Picture3”

“Picture2”

Page 33: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Queue Summary

− Pattern− Read -> Process -> Delete

− Must Delete!− Otherwise it re-emerges− New: Dequeue Count

− No guarantee of “delivery” – final processing− Idempotency− No ordering

Page 34: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Azure Queues

Creating a website & hosting it in Azure

<demo/>

Page 35: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Blobs

Containers

Pictures

Photo1.png

Blobs

Photo3.png

Photo2.png

Page 36: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Blob Features and Functions− Store Large Objects (100s of GBs in size)

− Associate Metadata with Blob− Metadata is <name, value> pairs, Up to 8KB

per blob− Set/Get with or separate from blob data bits

− Standard REST Interface− PutBlob, GetBlob, DeleteBlob− CopyBlob, SnapshotBlob, LeaseBlob

− CDN (with Edge services)

Page 37: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Table Storage Concepts

EntitiesTablesAccounts

moviesonline

Users

Movies

Email =…Name = …

Email =…Name = …

Genre =…Title = …

Genre =…Title = …

37

Page 38: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Windows Azure Tables− Provides Structured Storage

− Massively Scalable Tables− Billions of entities (rows) and TBs of data− Can use thousands of servers as traffic

grows

− Highly Available & Durable− Data replicated several times

− Familiar and Easy to use API− ADO.NET Data Services – .NET 3.5 SP1

− .NET classes and LINQ− REST

38

Page 39: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Development Fabric and Storage

Local Machine

Windows Azure Simulation Environment

Development Fabric

Development Storage

Page 40: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Roles

Role

Code Configuration

Page 41: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Case Study

Page 42: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

− [NOT Window SERVER AppFabric]− “Velocity” & “Dublin”

− Secure connections between services− Across organizational boundaries

− Claims-based access control

ServiceBus

AccessControl

Page 43: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Service Remoting

• RPC-style, Request/Response or Duplex

Eventing

• One-way communication

• Unicast or Multicast

Tunneling

• Full-Duplex Tunneling of Raw Streams

• TCP, Pipes, Proxies, …

Service Bus – 3 Patterns

Page 44: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Access Control Services

− Claims-based access control− Key capabilities / features:

− Integrates with AD FS v2, but also…− Usable from any platform (for real)− Implements OAuth WRAP & SWT− Enables simple delegation

A web service can take advantage of these capabilities with ONE

code base

Page 45: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

How It Works

litware ACSService

Namespace

litware REST Web

Service

4. Return Access

Token

(output claims from

3)

5. Send Messagew/ Access Token

0. Secret exchange; periodically refreshed

Customer

1. Define access control rules for a

customer

6.Token Validate

d

3. Map input claims to output claims based on access control rules

2. Request Access

Token

(Claims)

Page 46: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Case Study

Page 47: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Usage

Com

pu

te

Time

Average

Inactivity

Period

“On and Off “

• On & off workloads (e.g. batch job)• Over provisioned capacity is wasted • Time to market can be cumbersome

Average Usage

Com

pu

te

Time

“Growing Fast“

• Successful services needs to grow/scale

• Keeping up w/ growth is big IT challenge

• Complex lead time for deployment

Com

pu

te

Time

Average Usage

• Services with micro seasonality trends

• Peaks due to periodic increased demand

• IT complexity and wasted capacity

“Predictable Bursting“

Is It For Me?C

om

pu

te

Time

“Unpredictable Bursting“

Average Usage

• Unexpected/unplanned peak in demand

• Sudden spike impacts performance • Can’t over provision for extreme

cases

Page 48: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

TicketDirect Architecture

SQL Azure

Castellan

Castellan Venue

DB

Castellan Venue DB’s

Venue 1Partition(

s)

Castellan Venue

DB

Castellan Venue DB’s

Venue 2 Partition(

s)

Castellan Venue

DB

Castellan Venue DB’s

Venue N Partition(

s)

One application DB, many venue DB’s – each partitioned in to many parts (40+)

...

Windows Azure Roles

http:// TicketDirect .* Dynamic Worker(tasks

uploaded as blobs)

Partitioner Worker

Windows Azure StorageQueues for communication between clients and roles

-- - --- - -

-- - --- - -

Tables to record server & partition information

Blobs to store web and worker role resources

Client Applications

Castellan.old (VB6)

Castellan.Azure• Box Office sales• Ticket Printing • System Administration • Venue/Event Management• Partitioning

Service Bus

WCF

On PremisesSQL Server

Castellan Venue

Distributed Cache Worker

Page 49: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Some Other Possible Examples− Simple website

− With HUGE scaling− Worker Role, Queues, Blobs for large-

scale processing− Tables for huge data

− Service Bus for exposing services to partners

− SQL Azure for H/A, Geo-Location

Page 50: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Windows Azure Platform Consumption Prices

Elastic, scalable, secure, & highly available automated service platform

Pay as you go and grow for only what you use when you use it

Compute

$0.12/hour

+ Variable Instance Sizes

Per service hour

Highly available, scalable, and self managed distributed database

service

Web EditionPer database/month

$9.99/month(up to 1 GB DB/month)

Business Edition

$99.99/month(up to 10 GB DB/month)

Per database/month

Storage Per GB stored &

transactions$0.15 GB/month

$0.01/10K transactions

Windows Azure platform AppFabric Service Bus & Access ControlScalable, automated, highly available services for secure connectivity

Access Control

$0.015/10k Message Operations

Per Message Operation $0.015/10k Message

Operations

Per Message Operation

Service Bus

Page 51: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Windows Azure Instance Sizes

Unit of Compute Defined

Small

$0.12

Per service hour

Medium

$0.24

Per service hour

Large

$0.48

Per service hour

X Large

$0.96

Per service hour

Variable instance sizes to handle complex workloads of any size

 

Small

1 x 1.6Ghz (moderate IO)

Medium

2 x 1.6Ghz (high IO)

Large

4 x 1.6Ghz (high IO)

X-Large

8 x 1.6Ghz(high IO)

Equivalent compute capacity of a 1.6Ghz processor (on 64bit platform)

1.75 GB memory 3.5 GB memory 7.0 GB memory 14 GB memory

250 GB storage(instance storage)

500 GB storage(instance storage)

1000 GB storage(instance storage)

2000 GB (instance storage)

Page 52: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

North America Region

S. Central - US Sub-region

N. Central – US Sub-region

Europe Region

W. Europe Sub-region

S.E. AsiaSub-region

Asia Pacific Region

E. AsiaSub-region

$0.10 GB Ingress

$0.15 GB Egress

$0.10 GB Ingress

$0.15 GB Egress

$0.30 GB Ingress

$0.45 GB Egress

N. Europe Sub-region

Windows Azure Platform Data Transfer Priced per GB transferred/month (prices shown in USD)

No Charge For Off Peak Ingress Promotion (ends 6/30/10)

On-board to Windows Azure platform at no charge Off peak times defined as: 10pm-6am Mon-Fri & from 10pm-Fri to 6am-

Mon for weekends in each designated regional time zones below

North America PST = UTC-8

Europe WET = UTC

Asia PacificSST = UTC+8

Page 53: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Quiz Time

− What does the word “Azure” mean?

Page 54: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Resources

− Resources for Developersmsdn.com

− Microsoft Certification & Training Resourcesmicrosoft.com/learning

− Azure Portal - www.azure.com− Azure MSDN portal - http://

msdn.microsoft.com/azure− “How Do I” Videos For Azure -

http://msdn.microsoft.com/en-us/azure/dd439432.aspx

Page 56: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Complete your evaluation and enter to win!

Win a Wireless Entertainment Desktop 8000!

Page 57: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Win an Xbox 360 with DVT!

Be a winner with DVTEnter your details at the

DVT stand and you could

WIN an XBOX 360 ARCADE!

Page 58: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

* Terms & conditions apply

Submit an Entry Form at the BB&D Stand and Win*!A Dell Netbook valued at R4,000

Page 59: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

Questions and Answers

<questions/>

Page 60: Hilton Giesenow Principal Consultant, 3fifteen Microsoft MVP

© 2010 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.