components of windows azure - more detail. windows azure components windows azure paas...

18
Components of Windows Azure - more detail

Upload: tracy-mosley

Post on 26-Dec-2015

237 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

Components of Windows Azure - more detail

Page 2: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

Windows Azure Components

Windows Azure PaaS

Applications Windows Azure Service Model

Runtimes .NET 3.5/4, ASP .NET, PHP

Operating System Windows Server 2008-Compatible OS

Virtualization Windows Azure Hypervisor

Server Microsoft Blades

Database SQL Azure

Storage Windows Azure Storage (Blob, Queue, Table)

Networking Windows Azure-Configured Networking

Page 3: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

To be more precise:

$0.05 = 1 Ghz, 768 MB, 1 x 5 Mbps

$0.12 = 1x1.6 Ghz, 01.75 GB RAM, 1 x 100Mbps

$0.24 = 2x1.6 Ghz, 03.50 GB RAM, 2 x 100Mbps

$0.48 = 4x1.6 Ghz, 07.00 GB RAM, 4 x 100Mbps

$0.96 = 8x1.6 Ghz, 14.00 GB RAM, 8 x 100Mbps

Page 4: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

Why Windows Azure?• Azure OS take care about:• Deployment• Fail over, accessibility• OS updates• HW configuration• …

• In short,

•Developer write application•Azure run & manage application

Page 5: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

Modeling Cloud Applications• A cloud application is typically made up of different components• Front end: e.g. load-balanced stateless web servers• Middle worker tier: e.g. order processing, encoding• Backend storage: e.g. SQL tables or files• Multiple instances of each for scalability and availability

Front-End

Mark’s Cloud Application

Front-End

Middle-Tier

Middle-Tier

Middle-Tier

HTTP/HTTPS WindowsAzure

Storage,SQL Azure

Load Balancer

Page 6: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

Computation provides application scalability. Developers can build a combination of web and worker roles. Those roles can be replicated as needed to scale the applications and computational processing power.

Storage Services allow customers to scale to store large amounts of data – in any format – for any length of time, only paying for what they use or store.

The Fabric Controller automates load balancing and computes resource scaling

Security and Control Features include storage encryption, access authentication, and over-the-wire encryption using HTTPS. Industry certification is part of the Windows Azure roadmap.

Geographically distributed, state-of-the-art data centers host your applications and data, internet-accessible from everywhere you choose to allow.

Windows Azure

Page 7: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

The Fabric Controller (FC)• The “kernel” of the cloud operating system• Manages datacenter hardware• Manages Windows Azure services

• Four main responsibilities:• Datacenter resource allocation• Datacenter resource

provisioning• Service lifecycle management• Service health management

• Inputs:• Description of the hardware and network resources it will control• Service model and binaries for cloud applications

ServerKernelProcess

DatacenterFabric ControllerService

Windows Kernel

Server

Word SQL Server

Fabric Controller

Datacenter

Exchange

Online

SQL Azure

Page 8: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

Datacenter Architecture

Nodes

TOR

LB LBAgg

PDU

LB LBAgg

LB LBAgg

LB LBAgg

LB LBAgg

LB LBAgg

Racks

Datacenter Routers

Aggregation Routers and

Load Balancers

Nodes

TOR

PDU

Nodes

TOR

PDU

Nodes

TOR

PDU

Nodes

TOR

PDU

Nodes

TOR

PDU

Nodes

TOR

PDU

Nodes

TOR

PDU

Nodes

TOR

PDU

Nodes

TOR

PDU

Nodes

TOR

PDU

Nodes

TOR

PDU

Nodes

TOR

PDU

Nodes

TOR

PDU

Nodes

TOR

PDU

……… … …

Top of RackSwitches

Power Distribution Units

Page 9: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

High-Level FC Architecture• FC is a distributed, stateful application running on

nodes (blades) spread across fault domains • Installed by “Utility” Fabric Controller• One acts as the primary and all others keep view of world in

sync• Supports rolling upgrade, and services continue to run even if

FC fails entirely

TOR

FC1

… …

TOR

FC2

… …

TOR

FC3

… …

TOR

FC4

… …

TOR

FC5

… …

AGGLB

LB AGG LBLB LB

Nodes

Rack

Page 10: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

Provisioning a Node• Power on node• PXE-boot Maintenance OS• Agent formats disk and

downloads Host OS• Host OS boots, runs Sysprep

/specialize, reboots• FC connects with the “Host

Agent”

Fabric ControllerRole

ImagesRole

ImagesRole

ImagesRole

Images

Image Repository

Maintenance OS

Parent OS

Node

PXEServer

Maintenance OS

Windows Azure

OS

Windows Azure

OS

FC Host Agent

Windows Azure Hypervisor

Page 11: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

GOAL:SCALABILITYScale out by replicating instances as needed.

Allow applications to scale user and compute processing independently.

Two instance types: Web Role & Worker RoleWindows Azure applications are built with web role instances, worker role instances, or a combination of both.

Each instance runs on its own VM (virtual machine), replicated as needed.

Compute in Windows Azure

Michael S. Collier
Updated last sentance about instance/role types in Windows Azure.
Page 12: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

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.

Can only receive inbound traffic when configured properly

Initiates their own requestsfor data or tasks from

the queue

Similar to a "batch job"or Windows service

Defining the Web and Worker Roles

Michael S. Collier
Updated slide notes (input for worker roles).
Page 13: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

GOAL:SCALABLE, DURABLE STORAGE

Windows Azure storage is an application managed by the Fabric Controller

Windows Azure applications can use native storage or SQL Azure

Application state is kept in storage services, so worker roles can replicate as needed

Blobs: large, unstructured data (audio, video, etc)

Tables: simply structured data, accessed using WCF Data Services

Queues: serially accessed messages or requests, allowing web-roles and worker-roles to interact

Storage in Windows Azure

Michael S. Collier
Update slide notes.
Page 14: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

Windows Azure

FabricController

Web Portal(API)

LB

LB

DNS

YourService

Page 15: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

LB

LB

DNS

Service DeploymentYour

Service

FabricController

Web Portal(API)

Service ModelServiceService

DNSconfig

Page 16: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

LB

LB

DNS

Service ScalingYour

Service

FabricController

Web Portal(API)

Service

Service

Service

Model

Service

Service

ServiceService

Service

Page 17: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

LB

LB

DNS

Service Monitoring & RecoveryYour

Service

FabricController

Web Portal(API)

Service

Service

Service

Model !

Service

Page 18: Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,

Development perspective•Logic•Load Balancer on public endpointRoles•Queue, Blob (Page / Block), Table•Storage (de facto no limits; 100 TB / one account)Azure Storage•BLOB formatted as NTFS; mounted as drive•Throughput: 87MB / s to 400 MB/s and more (cache!) – standard enterprise RAIDAzure Drive•Content Distribution Network•Additional DC to store blob closest to client computer (browser)CDN•SQL as a Service•(3 replicas + load balancer)SQL Azure•Elegant providing local (on-premise) services; Internet Services Bus•Access control based on federations.Azure AppFabric•Create / delete instance; Zarządzanie instancjami w AzureManagement API•Logging, monitoring, performance counters, etc..Diagnostics API•Auto maintenance services, failover,…Automation