Introduction To Windows Azure
Introduction To Windows Azure
Introduction To Windows Azure
Training Workshop
Agenda
What is Windows Azure Windows Azure Features
Compute Storage Developer SDK Automated Service Management
Compute
Storage
Developer SDK
9
Compute .NET 3.5 SP1 Server 2008 64bit Full Trust* Web Role
IIS7 Web Sites (ASP.NET, FastCGI) Web Services (WCF)
Storage
Developer Tools
Compute
Developer Tools
11
Storage
Developer Tools
12
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
Storage
16
My First Service
17
Storage
Blobs, Drives, Tables, Queues Designed for the cloud
3 replicas Guaranteed consistency
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
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
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
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
Look at the samples in the SDK Windows Azure Platform Training Kit
Multiple Windows Azure, SQL Azure, AppFabric labs
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