Introduction To Windows Azure

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 29

Windows Azure Platform

Training Workshop

Lap Around Windows Azure


Name Title Organization Email

Agenda
What is Windows Azure Windows Azure Features
Compute Storage Developer SDK Automated Service Management

What is Windows Azure?


An operating system for the cloud
Reduce the complexity of internet scale applications Designed to be scalable & available A service running Microsoft datacenters

What is Windows Azure?


An Operating System for the cloud Hardware Abstraction across multiple servers Distributed Scalable, Available Storage Deployment, Monitoring and Maintenance Automated Service Management, Load Balancers, DNS Programming Environments Interoperability Designed for Utility Computing

Why Windows Azure?


OS Takes care of your service in the cloud
Deployment Availability Patching Hardware Configuration

You worry about writing the service

What is Windows Azure?


Features
Automated Service Management Compute Storage Developer Experience

What is Windows Azure?

Compute

Storage

Developer SDK
9

What is Windows Azure?


Compute .NET 3.5 SP1 Server 2008 64bit Full Trust* Web Role
IIS7 Web Sites (ASP.NET, FastCGI) Web Services (WCF)

Storage

Worker Role Stateless Servers Http(s), TCP


10

Developer Tools

What is Windows Azure?


Storage
Durable, scalable, available Blobs Drives Tables Queues REST interfaces
Can be used without compute

Compute

Developer Tools
11

What is Windows Azure?


Compute
All of the hardware Hardware Load Balancers Servers Networks DNS Monitoring Automated service management

Storage

Developer Tools
12

What is Windows Azure?


Developer SDK

Windows Azure SDK


Local Development Fabric emulates running Compute Storage multiple instances, load-balancing, service API Local Development Storage emulates blob, tables and queue storage Command line tools allows integration outside of Visual Studio

Microsoft Visual Studio 2008, 2010 add-in


Provide rich tooling and templates to easily build your application
13

Windows Azure API


All operations are accessed through RoleEnvironment RoleEnvironment Handles
Retrieving configuration information LocalResource locations (local disk) Accessing Role information like InstanceEndpoints necessary for inter-role communication Exposes events during instance lifecycle, allowing a chance to respond to topology or config change

14

Service Models
Describes your Service
<?xml version="1.0" encoding="utf-8"?> <ServiceDefinition name="CloudService1" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition"> <WebRole name="WebRole"> <ConfigurationSettings> <Setting name="AccountName"/> </ConfigurationSettings> <LocalStorage name="scratch" sizeInMB="50"/> <InputEndpoints> <!-- Must use port 80 for http and port 443 for https when running in the cloud --> <InputEndpoint name="HttpIn" protocol="http" port="80" /> </InputEndpoints> </WebRole> <WorkerRole name="WorkerRole"> <ConfigurationSettings> <Setting name="AccountName"/> <Setting name="TableStorageEndpoint"/> </ConfigurationSettings> </WorkerRole> </ServiceDefinition>

15

Service Architecture
Internet Internet

LB

Windows Azure
Queues

LB

(ASPX, ASMX, WCF) (ASPX, WCF, etc.)

WebSite Site WebSite WebASMX, WCF) (ASPX,


Blobs

Worker Worker Worker Service Service Service


Tables

Storage

16

My First Service

17

Storage
Blobs, Drives, Tables, Queues Designed for the cloud
3 replicas Guaranteed consistency

Accessible directly from the internet via REST API


.NET Client library supported

Does not require compute Storage account drives unique URL, e.g.:
https://<youraccount>.blob.core.windows.net
18

Blobs
Blobs stored in Containers 1 or more Containers per account
Scoping is at container level /Container/blobname $root is special name for root container

Blobs
Two types, Page and Block
Page is random R/W, Block has block semantics

Metadata, accessed independently


name/value pairs (8kb total)
19

Private or Public container access

Queues
Simple asynchronous dispatch queue
Create and delete queues

Message:
Retrieved at least once Max size 8kb Operations:
Enqueue Dequeue RemoveMessage

20

Tables
Entities and properties (rows & columns) Tables scoped by account Designed for billions+ Scale-out using partitions
Partition key & row key Operations performed on partitions Efficient queries No limit on number of partitions

Use ADO.NET Data Services


21

Service Lifecycle
Create service package
Binaries + Content + Service Metadata

Deploy via web portal or Service Management API Add & remove capacity via web portal or API Deployed across fault domains Upgrade with zero downtime

22

Automated Service Management


You tell us what, we take care of how What
Service metadata

How
Metadata describes service No OS footprint Service is copied to instances Instances were copied to physical hardware Physical hardware booted from VHD All patching is performed offline
23

Deploying Services

24

Service Monitoring
SDK component providing distributed monitoring & data collection for cloud apps Support Standard Diagnostics APIs
Trace, Debug normally

Manage multiple role instances centrally Scalable Choose what to collect & when to collect it
Event Logs, Trace/Debug, Performance Counters, IIS Logs, Crash Dumps, Arbitrary log files
25

Design Considerations
Scale and availability are the design points Storage isnt a relational database Stateless
Stateless front ends, store state in storage

Use queues to decouple components Instrument your application (Trace) Once you are on - stay on Think about patching & updates

26

Learning Windows Azure


www.windowsazure.com http://channel9.msdn.com/learn Download the SDK
You dont need cloud access to develop!

Look at the samples in the SDK Windows Azure Platform Training Kit
Multiple Windows Azure, SQL Azure, AppFabric labs

Follow the team bloggers

27

Summary
Windows Azure is the OS for the cloud Lets you build services without the operational worry Designed for Scalability & Availability Automated Service Management Compute Storage Developer SDK Utility computing - Pay-as-you-go pricing
28

29

2008 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.

30

You might also like