50
Change the Rules What‘s New in Windows Azure Luka Debeljak CEE DPE Technical Lead http://blogs.msdn.com/ lukad

Change the Rules What‘s New in Windows Azure Luka Debeljak CEE DPE Technical Lead

Embed Size (px)

Citation preview

Change the Rules

What‘s New in Windows Azure

Luka DebeljakCEE DPE Technical Lead

http://blogs.msdn.com/lukad

Change the Rules

Agenda

• Microsoft & Cloud Computing

Change the Rules

2009

Software as a service

Platform as a service

Infrastructure as a service

Service platform

Cloud platform

Cloud computingGrid computing

Private cloud

Public cloud

Hybrid computing

Global cloud

Scale-out cloud

Online servicesUtility computing

On demand

Internal cloud

Hosted cloud

Cloud services

2003

Web services

2006Software as a service

Virtualized Hosting

SOA

Evolution of Computing:The Next Big Thing

Change the Rules

All developers can quickly deliver highly-available, secure and highly-scalable applicationsRich end-user experience anywhere from any device

Cloud ComputingThe platform for the new generation of business

App Model

Mainframe of the future: 1000x as powerful at a fraction of the costMaximum efficiency on industry-standard hardwareYour datacenter or ours

HardwareModel

Manage services not just serversResilient to hardware and software failure24x7 availability with “9 to 5” management

OperationsModel

Change the Rules

Different Flavors of the Cloud

ENTERPRISE

DEDICATED CLOUD

PUBLIC CLOUDSecure Cloud

Federation

INTERNAL IT

PRIVATE CLOUD

Change the Rules

Private(On-Premise)

Infrastructure

(as a Service)

Platform(as a

Service)

Types of Clouds

Storage

Server HW

Networking

Servers

Databases

Virtualization

Runtimes

Applications

Security & Integration

Storage

Server HW

Networking

Servers

Databases

Virtualization

Runtimes

Applications

Security & Integration

Storage

Server HW

Networking

Servers

Databases

Virtualization

Runtimes

Applications

Security & Integration

You m

anage M

anaged b

y v

endor

Managed b

y v

endor

You m

anage

You m

anage

Change the Rules

Microsoft’s Cloud Continuum: Choice

Dynamic Data Center ToolkitFor Hosters| Dynamic Data Center Toolkit

For Enterprises|

Software as

a Service(SaaS)

Platform as

a Service(PaaS)

Infrastructure as a

Service(IaaS)

Private

Public

Change the Rules

Agenda

• Microsoft & Cloud Computing• Windows Azure Platform & Features–Windows Azure–Windows AppFabric– SQL Azure– „Dallas“

Change the Rules

Cloud Platform Capabilities

StorageDynamic Tabular Data

BlobsMessage Queues

Distributed File System

Content Distribution

Data Transact-SQL

Data Synchronizati

on

Relational Database

ADO.NET, ODBC, PHP

Connectivity

RegistryOn-Premise

BridgingService Bus

SecurityClaims-Based

Identity

Federated Identities

Secure Token

Service

Declarative Policies

Application Services

ApplicationMarketplac

e

Information Marketplac

e

Personal Data

Repository

Frameworks

Workflow Hosting

Distributed Cache

Services Hosting

Compute C / C++Win32 VHD

Change the Rules

Windows Azure Platform

Compute

Storage

Data SQL Azure Data Sync

Connectivity

Project “Sydney”

Security “Geneva”

Application Services

Frameworks

“Dublin” “Velocity”

Service Bus

Access Control

Table Storage

Blob Storage

Queue DriveContent Delivery Network

Change the Rules

Windows Azure Compute

Compute

Development, service hosting, & management environment.NET, Java PHP, Python, Ruby, native code (C/C++, Win32, etc.)ASP.NET providers, FastCGI, memcached, MySQL, TomcatFull-trust – supports standard languages and APIsSecure certificate storeManagement API’s, and logging and diagnostics systems

Multiple roles – Web, Worker, Virtual Machine (VHD)Multiple VM sizes

1.6 GHz CPU x64, 1.75GB RAM, 100Mbps network, 250GB volatile storageSmall (1X), Medium (2X), Large (4X), X-Large (8X)

In-place rolling upgrades, organized by upgrade domainsWalk each upgrade domain one at a time

Change the Rules

WEB ROLE WORKER ROLE

Interacts with end-useror web services

Handles incomingHTTP/HTTPS requests

Develop with Microsoft andnon-Microsoft tools:

ASP.NET, WCF, other .NET toolsJava, PHP, etc.

Does not acceptincoming requests

Initiates their own requestsfor data or tasks from

the queue

Similar to a "batch job"or Windows service

Windows Azure Roles

Change the Rules

‒ Interacts with a “Fabric Agent” on each machine

‒ Monitors every VM, application and instance

‒ Performs load balancing, check pointing and recovery

Fabric Controller

Change the Rules

Windows Azure Diagnostics

Compute

− Configurable trace, performance counter, Windows event log, IIS log & file buffering− Local data buffering quota management− Query & modify from the cloud and from the desktop per role

instance− Transfer to storage scheduled & on-demand− Filter by data type, verbosity & time range

Change the Rules

Windows Azure Storage

− Rich data abstractions – tables, blobs, queues, drives, CDN− Capacity (100TB), throughput (100MB/sec)− Transactions (1K req/sec)

− High accessibility− Supports geo-location− Language & platform agnostic REST APIs− URL: http://<account>.<store>.core.windows.net− Client libraries for .NET, Java, PHP, etc.

− High durability – data is replicated 3 times within a cluster, and (Feb 2010) across datacenters

− High scalability – data is automatically partitioned and load balanced across servers

StorageStorage

Change the Rules

Windows Azure Table Storage

Table Storage

− Designed for structured data, not relational data

− Data definition is part of the application− A Table is a set of Entities (records)− An Entity is a set of Properties (fields)

− No fixed schema− Each property is stored as a <name, typed value>

pair− Two entities within the same table can have different

properties− No schema is enforced

Change the Rules

Windows Azure Blob Storage

Blob Storage

− Storage for large, named files plus their metadata

− Block Blob − Targeted at streaming workloads− Each blob consists of a sequence of blocks− Each block is identified by a Block ID− Size limit 200GB per blob

− Page Blob− Targeted at random read/write workloads− Each blob consists of an array of pages− Each page is identified by its offset from the start of

the blob− Size limit 1TB per blob

Change the Rules

Windows Azure Queue

Queue

− Performance efficient, highly available and provide reliable message delivery

− Asynchronous work dispatch− Inter-role communication − Polling based model; best-effort FIFO data structure

− Queue operations− Create Queue− Delete Queue− List Queues− Get/Set Queue Metadata

- Message operations• Add Message

• Get Message(s)

• Peek Message(s)

• Delete Message

Change the Rules

Windows Azure Drive

Drive

− Provides a durable NTFS volume for Windows Azure applications to use− Use existing NTFS APIs to access a durable drive− Durability and survival of data on application failover − Enables migrating existing NTFS applications to the

cloud− Drives can be up to 1TB; a VM can dynamically

mount up to 8 drives

− A Windows Azure Drive is a Page Blob− Example, mount Page Blob as X:\− http://<account>.blob.core.windows.net/

<container>/<blob>− All writes to drive are made durable to the Page Blob− Drive made durable through standard Page Blob

replication

StorageCredentialsAccountAndKey credentials = new StorageCredentialsAccountAndKey("myaccount", storageAccountKey);

//initialize the drive with blob credentialsCloudDrive drive1 = new CloudDrive(new Uri(“http://account.blob.core.windows.net/.../Blob1”), credentials);

// mounting the drivedrive1.Mount(200000, DriveMountOptions.None);

Azure Drive Object Model

Change the Rules

Windows Azure CDN

− Provides high-bandwidth global blob content delivery− 18 locations globally (US, Europe, Asia, Australia and

South America), and growing

− Blob service URL vs. CDN URL− Blob URL: http://<account>.blob.core.windows.net/− CDN URL: http://<guid>.vo.msecnd.net/ − Support for custom domain names

− Access details− Blobs are cached in CDN until the TTL passes− Use per-blob HTTP Cache-Control policy for TTL

(new)− CDN provides only anonymous HTTP access

Content Delivery Network

Change the Rules

DEMO:VISUAL STUDIO 2010 & WINDOWS AZUREUSING WINDOWS AZURE STORAGE

Change the Rules

SQL Azure

Data

− Highly available, scalable, and consistent distributed relational database; geo-replication and geo-location of data

− 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

− Editions: Web (1GB), Business (10GB)

Change the Rules

Management Tools

• Windows Azure Tools forMicrosoft Visual Studio (2008, 2010)– Windows Azure Management Console– http://www.microsoft.com/windowsazure/tools/

• Azure Storage Explorer– Simple tool to manage your cloud storage– http://azurestorageexplorer.codeplex.com/

• SQL Azure accessible via SQL Server Management tools

• SQL Azure Explorer AddIn for Visual Studio 2010– http://sqlazureexplorer.codeplex.com/

• Cerebrata Azure Diagnostics Manager– WPF Client for managing Azure

Change the Rules

• Tools for data synchronization with SQL Azure• Connect on-premises apps with the cloud• Create cached-mode clients

• Built on Microsoft Sync Framework and ADO.NET Sync Services

SQL Azure Data Sync

SQL Azure Data Sync

Change the Rules

SQL Azure & OData

• OData– Base on existing protocols

• HTTP, AtomPub (+ extensions), CSDL, EDMx

– Defines a core set of functionality enabling REST-based access to data over HTTP

– Specifications available at www.odata.org• Open Specification Promise (OSP)

• WCF Data Services– Microsoft server-side implementation of OData– WCF Data Services client library

• SQL Azure (labs preview)– Enables exposure of cloud data via OData

Change the Rules

OData: Open Data Protocol

OData Protocol

Excel/PowerPivot

Visual Studio

.NET Framework

Silverlight

Javascript/AJAX

PHP

Java

.NET Framework

Sharepoint

Sharepoint Services

SQL Server Reporting Services

Windows Azure Table Storage

Codename “Dallas”

ODGI

OData Consumers OData Producers

Change the Rules

DEMO:MANAGEMENT TOOLS AND SQL AZURE

Change the Rules

Interoperability & Windows Azure

• Popular Technologies, Used by– Sites: Facebook, Wikipedia– Apps: WordPress, MediaWiki

• …with Windows Azure Benefits– Get Started Easily: PHP/Eclipse Developer Experience– Maintain and Scale: Leverage Platform Primitives

• Cloud Storage• Inter-role Communication + Endpoint Discovery

PHP Web Development LanguageEclipse Development EnvironmentMySQL Relational Databasememcached Distributed Memory Cache

Change the Rules

Using with Windows Azure

• Running PHP Code in Windows Azure– Host in Web role, supply & configure runtime

• Eclipse Tooling– Build, Test, Deploy PHP Projects– Create New or Use Existing PHP Projects

• Scaling PHP Apps– Dynamic allocation of resources in Windows

Azure

• Using Cloud Storage from PHP– Windows Azure Storage via SDK for PHP– Using SQL Azure (or SQL Server) via SQL Serve

Driver for PHP

Change the Rules

DEMO:INTEROPERABILITY WITH WINDOWS AZURE

Change the Rules

Windows Azure AppFabric Service Bus

Connectivity

Service Bus

− Securely connect applications− Over the internet− Across any network

topology− Across organizational

boundaries

− Primary application patterns− Eventing – notify

applications and/or devices

− Service Remoting – securely project on-premises services out to the cloud

− Tunneling – app-to-app communication with NAT/Firewall traversal

Change the Rules

Windows Azure AppFabric Connectivity

33

Application #1 Application #2Direct Connection facilitated by Service Bus if that is best

connection mechanism.

TextXMLGraphicsBinary DataStreaming

Firewall

Send

Receive

Exchange messages between loosely coupled, composite

applications.

Send

Receive

Change the Rules

Windows Azure Access Control

Security Access Control

− Provides outsourcing of claims-based access control for REST web services

− Key capabilities:− Usable from any platform− Low friction way to

onboard new clients− Integrates with ADFS v2− Supports OAuth WRAP /

SWT− Enables simple delegation

− Used today by Service Bus and “Dallas”

Change the Rules

Windows Azure AppFabric Access Control

Applications or Users

Simplify and automate

complex authorization

schema requests.

Provide abstraction for

federated claims-based

authentication.

Easily establish secure trust relationship.

Data and Applications

void Page_Load(object sender, EventArgs e) { IClaimsPrincipal icp = (IClaimsPrincipal) Thread. CurrentPrincipal;

IClaimsIdentity claimsIdentity = (IClaimsIdentity)icp.Identity;

ageClaimValue = ( from c in claimsIdentity.Claims where c.ClaimType == "http://MyAppN/AgeClaim" select c.Value ).Single(); }

Windows Identity FoundationObject Model

36

Change the Rules

Claims Based Identity Management

“Geneva”

- Next generation identity and access management platform

Claims-based access and single sign-on for on-premise and cloud-based applications in the enterprise, across organizations, and on the Web

- Windows Identity Foundation (“Geneva Framework“)Provides .NET development tools, which includes pre-built, user-access logic that externalizes authentication from applications. It helps developers build claims-aware .NET applications, plus build custom security token services (STS)

- Active Directory Federations Services 2.0 (“Geneva Server“)

An STS for IT that issues and transforms claims and other tokens, manages user access and enables federation and access management for simplified single sign-on

- Windows CardSpace 2.0 (“Geneva“)• For helping users navigate

between multiple logons for simplified single sign-on while providing complete user control and transparency for how personal information is shared

Change the Rules

Windows Server AppFabric (“Velocity”)

“Velocity”

Distributed in-memory cache platform for developing scalable, available, and highly-performance applications

Caches any serializable CLR object and provides access through simple cache APIsSupports enterprise scale: tens to hundreds of computersConfigurable to run as a service accessed over the network‒ Supports dynamic

scaling and automatic load balancing

‒ Supports continuous availability of cached data by storing copies on separate cache hosts

‒ Integration with administration and monitoring tools such as Event Tracing for Windows (ETW) and System Center.

// Create instance of cachefactory (reads appconfig)CacheFactory fac = new CacheFactory();

// Get a named cache from the factoryCache catalog = fac.GetCache("catalogcache");

// Simple Get/Putcatalog.Put("toy-101", new Toy("Puzzle", .,.));

// From the same or a different clientToy toyObj = (Toy)catalog.Get("toy-101");

// Region based Get/Putcatalog.CreateRegion("toyRegion");

// Both toy and toyparts are put in the same region catalog.Put("toyRegion", "toy-101", new Toy( .,.));Catalog.Put("toyRegion", "toypart-100", new ToyParts(…));

Toy toyObj = (Toy)catalog.Get("toyRegion", "toy-101");

Distributed Cache API

Change the Rules

Windows Server AppFabric (“Dublin”)

“Dublin”

Evolution of WAS/IIS and Windows App Server role to run and manage WF and WCF services

Enhances the hosting of Windows Communication Foundation (WCF) and Windows Workflow (WF) in the Windows Process Activation Service (WAS)Simplified deployment and management of WCF and WF services hosted in WASConfiguration of persistence for durable workflowsCustomizable tracking profiles with dedicated, queryable storage for tracked dataCustomizable monitoring of hosted services

Change the Rules

Microsoft Codename “Dallas”

Information-as-a-service

— Discover, acquire, and consume structured, blob, and real-time data to power any application – on any platform and any screen size

— Brokerage Business – partner driven ecosystem and global reach to deliver data and functionality to developers and information workers

— Analytics and Reporting – single click analysis to augment private data with public data

— Built on Windows Azure and SQL Azure

Change the Rules

Microsoft Pinpoint

Application MarketplacePinpoint helps business customers find technology experts, software applications and professional services that solve specific business issues and support long-term goalsPinpoint helps developers and technology service providers get applications and professional services to the customers who need them

Change the Rules

DEMO:MICROSOFT CODENAME „DALLAS“

Change the Rules

Agenda

• Microsoft & Cloud Computing• Windows Azure Platform & Features–Windows Azure–Windows AppFabric– SQL Azure– „Dallas“

• Windows Azure Futures

Change the Rules

Additional purchasing options coming in 2010 Centralized purchasing, procurement, and billing for all Microsoft products and services

Durable storage volumes attachable directly to

compute instances

Windows Azure Drive (available today)

18 edge locations in 12 countries for low latency

and global presence

CDN(available today)

Information service built on SQL Azure and Windows Azure

(BI and analytics)

Codename “Dallas”(available today)

Additional SQL Azure databases

sizes >10GB available in 2010

SQL Azure >10GB (available H1 2010)

Principles driven business model as we bring new services on

New Services Available (pricing coming soon…)

Flexible, simple, and value based pricing and licensing

Business Roadmap, Looking Ahead....

Change the Rules

Virtual Machine Role Type

Helps easily move existing apps to cloud

Enables wide range of Windows apps to run in

Windows Azure

Looking forward: VM Support

Start withWindows

Server image

Incorporate into cloud service

model

Install SW, Customize &

Configure

Deploy & Manage Service

Change the Rules

Looking forward: Management Interfaces• Extend APIs to expose new platform

capabilities– Examples: new VM role, finer-grain OS

Upgrade, CDN integration– Better visibility and monitoring of life

cycle management– Diagnostics APIs

Change the Rules

Looking forward: Guidance & Blueprints• Readiness Framework

– Information and tools to support adoption

– Aimed at sales field, partners and enterprise architects

• Readiness Deliverables– Knowledge capital and app profile

guidance– Technology and migration tool set

requirements– Engagement process and

deployment

Change the Rules

Summary

• @Microsoft We Are All In!– Check out www.azure.com–Windows Azure, Windows AppFabric,

SQL Azure, „Dallas“

• Windows Azure Roadmap– CDN, Project Sydney, VM Role, SQL

Azure

... Stay tuned! More to come!

Change the Rules