Maarten Balliauw

Slides:



Advertisements
Similar presentations
Windows Azure IaaS – Deep Dive
Advertisements

Windows Azure for SharePoint people Dennis – Solution Architect Microsoft Windows Azure.
System Center 2012 R2 Overview
Page 1 Ricardo Villalobos Windows Azure Architect Evangelist Microsoft Corporation Designing, Building, and Deploying Windows Azure applications.
Introducing Windows Azure
= Managed for YouStandalone Servers IaaSPaaSSaaS Applications Runtimes Database Operating System Virtualization Server Storage Networking Windows.
“It’s going to take a month to get a proof of concept going.” “I know VMM, but don’t know how it works with SPF and the Portal” “I know Azure, but.
1 © Copyright 2010 EMC Corporation. All rights reserved. EMC RecoverPoint/Cluster Enabler for Microsoft Failover Cluster.
Overview Of Microsoft New Technology ENTER. Processing....
Usage Compute Time Average Inactivity Period Compute Time Average Usage Compute Time Compute Time Average Usage.
Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation.
Deep Dive into Windows Azure Virtual Machines – From Cloud Vendor and Enterprise Perspective Vijay Rajagopalan Principal Lead Program Manager Microsoft.
Yes, yes it does! 1.Guest Clustering is supported with SQL Server when running a guest operating system of Windows Server 2008 SP2 or newer.
Cloud Power Application Driven Comprehensive & Open Cloud under Your Control!
COS302. = Managed for YouStandalone Servers IaaSPaaSSaaS Applications Runtimes Database Operating System Virtualization Server Storage Networking.
Microsoft Load Balancing and Clustering. Outline Introduction Load balancing Clustering.
SIM361. Services Cloud Deployment Fabric Hyper-V Bare Metal Provisioning Hyper-V, VMware, Citrix XenServer Hyper-V, VMware, Citrix XenServer Network Management.
Cloud Computing Systems Lin Gu Hong Kong University of Science and Technology Sept. 21, 2011 Windows Azure—Overview.
Name Title Microsoft Windows Azure: Migrating Web Applications.
Elad Hayun Agenda What's New in Hyper-V 2012 Storage Improvements Networking Improvements VM Mobility Improvements.
COS301. = Managed for YouStandalone Servers IaaSPaaSSaaS Applications Runtimes Database Operating System Virtualization Server Storage Networking.
VM Role (PaaS)Virtual Machine (IaaS) StorageNon-Persistent StoragePersistent Storage Easily add additional storage DeploymentBuild VHD offsite and upload.
Migrating Applications to Windows Azure Virtual Machines Michael Washam Senior Technical Evangelist Microsoft Corporation.
Worker Role Web Role Web Role VM Role Control Abstraction (i.e. Less IT & Less Plumbing Code) Admin Web / Worker Role VM Role Web / Worker Role.
Michael Epprecht IT Pro Evangelist Microsoft Corporation Inside Windows Azure
= Managed for YouStandalone Servers IaaSPaaSSaaS Applications Runtimes Database Operating System Virtualization Server Storage Networking Windows.
Yury Kissin Infrastructure Consultant Storage improvements Dynamic Memory Hyper-V Replica VM Mobility New and Improved Networking Capabilities.
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 Virtual Machines Speaker Title Organization.
Oracle10g RAC Service Architecture Overview of Real Application Cluster Ready Services, Nodeapps, and User Defined Services.
INSTALLING MICROSOFT EXCHANGE SERVER 2003 CLUSTERS AND FRONT-END AND BACK ‑ END SERVERS Chapter 4.
Chapter 8 Implementing Disaster Recovery and High Availability Hands-On Virtual Computing.
86% 50% Infrastructure provisioning Enterprise-class multi- tenant infrastructure for hybrid environments System Center capabilities Application.
Windows Azure Conference 2014 Deploy your Java workloads on Windows Azure.
Overview of Cloud Computing Sven Rosvall ACCU
MDC417 Follow me on Working as Practice Manager for Insight, he is a subject matter expert in cloud, virtualization and management.
From Virtualization Management to Private Cloud with SCVMM 2012 Dan Stolts Sr. IT Pro Evangelist Microsoft Corporation
DCIM211. By 2015, 35% of enterprise IT expenditures for most organizations will be managed outside the IT department’s budget IT budget.
Microsoft Azure SoftUni Team Technical Trainers Software University
Windows Azure Migrating Applications and Workloads Speaker Title Organization.
Lugano Microsoft Azure Overview Ken Casada Technical Evangelist Microsoft Switzerland
SC2012 Infrastructure Components Management Justin Cook (Data # 3) Principal Consultant, Systems Management Noel Fairclough (Data # 3) Consultant, Systems.
Visual Studio Windows Azure Portal Rest APIs / PS Cmdlets US-North Central Region FC TOR PDU Servers TOR PDU Servers TOR PDU Servers TOR PDU.
Windows Azure Virtual Machines Anton Boyko. A Continuous Offering From Private to Public Cloud.
Zvezdan Pavković. Storage Non-Persistent Storage Persistent Storage Easily add additional storage. Networking Internal and Input Endpoints configured.
Windows Azure Cloud Services Anton Boyko.NET developer.
Microsoft Virtual Academy. System Center 2012 Virtual Machine Manager SQL Server Windows Server Manages Microsoft Hyper-V Server 2008 R2 Windows Server.
20409A 7: Installing and Configuring System Center 2012 R2 Virtual Machine Manager Module 7 Installing and Configuring System Center 2012 R2 Virtual.
Windows Azure Custom Software Development Mobile Middleware Windows Azure Compute Dipl.-Ing. Damir Dobric Lead Architect daenet
Azure in a Day Training: Windows Azure Module 1: Windows Azure Overview Module 2: Development Environment / Portal – DEMO: Signing up for Windows Azure.
Features Scalability Manage Services Deliver Features Faster Create Business Value Availability Latency Lifecycle Data Integrity Portability.
Mick Badran Using Microsoft Service Fabric to build your next Solution with zero downtime – Lvl 300 CLD32 5.
Microsoft Cloud Computing. Topics to be covered 1.Environmental Features of windows azure 2.What is Cloud Computing 3.Roles in Cloud Computing 4.Benefits.
Building Cloud Solutions Presenter Name Position or role Microsoft Azure.
(re)-Architecting cloud applications on the windows Azure platform CLAEYS Kurt Technology Solution Professional Microsoft EMEA.
Deploying Highly Available SQL Server in Windows Azure A Presentation and Demonstration by Microsoft Cluster MVP David Bermingham.
 Cloud Computing technology basics Platform Evolution Advantages  Microsoft Windows Azure technology basics Windows Azure – A Lap around the platform.
Microsoft Learning Ignite | May 4 – 8, 2015 | Chicago, IL Light IT up.
Brian Lauge Pedersen Senior DataCenter Technology Specialist Microsoft Danmark.
Logo here Module 3 Microsoft Azure Web App. Logo here Module Overview Introduction to App Service Overview of Web Apps Hosting Web Applications in Azure.
Building Applications with Windows Azure and SQL Azure
Inside Windows Azure: the cloud operating system
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
02 | Hosting Services in Windows Azure
20409A 7: Installing and Configuring System Center 2012 R2 Virtual Machine Manager Module 7 Installing and Configuring System Center 2012 R2 Virtual.
Outline Virtualization Cloud Computing Microsoft Azure Platform
02 – Cloud Services Bret Stateham | Senior Technical Evangelist​
Setting up PostgreSQL for Production in AWS
06 | SQL Server and the Cloud
Presentation transcript:

Maarten Balliauw

 Deck is based on publicly available info  I can not guarantee correctness!  Special thanks to Mark Russinovitch for a lot of content!

 Maarten Balliauw  Antwerp, Belgium   Technology Specialist Windows Azure  Co-founder of AZUG  Focus on web  ASP.NET, ASP.NET MVC, PHP, Azure, …  MVP ASP.NET 

 Windows Azure 101  The Fabric Controller  Deploying a service  Updating a service  Host OS upgrades  Health  Takeaways

A quick introduction / recap

 Consumer view:  On-demand  Self-service  Pay-for-use  Scalable  + Service provider view:  Multi-tenant  Cost-effective  What you get?  Anything the service provider has to offer! ▪ Compute ▪ Storage ▪ CDN ▪ Integration ▪ VPN ▪...  Resources

= Managed for YouStandalone Servers IaaSPaaSSaaS Applications Runtimes Database Operating System Virtualization Server Storage Networking Windows Azure Standardization & Efficiency Customization & Control

Stuff which is also offered by your Operating System. Windows Azure is an Operating System - just at a larger scale...

 Windows Azure is an OS for the data center  Takes care of the machine = data center  You concentrate on business logic ▪ Not on fail-over clustering, provisioning, load balancing,...  Provides shared pool of compute, disk and network  Illusion of unlimited capacity  Provides building blocks for applications

 Automated OS updates & patches  Automated application updates  Automated configuration changes  Designed to scale out

“Windows Azure Application Model”

 You should  Design for costs  Design for scale out (instead of scale up)  Design for failure ▪ Idempotent operations ▪ Short timeouts & retries ▪ Stateless (with state on durable storage) Come see my next session

 Application consists of  Actual application in one or multiple roles ▪ Role = isolation boundary (~= DLL)  Service model ▪ ITPro-as-an-XML  Configuration

 Defines  Which roles there are  Role names & types  VM size (x-small, small, medium,...)  Network endpoints required  What configuration values to expect  # update domains  Can not be changed for a deployment

 Contains  # instances  Configuration values  Certificates  …  Can be changed at runtime

Front- End-2 Middle Tier-2 Front- End-1 Middle Tier-1  Ensure service stays up during updates  Update domains = percentage of service that will be offline  Default and max is 5  Can be overridden Front- End-1 Front- End-2 Update Domain 1 Update Domain 2 Middle Tier-1 Middle Tier-2 Middle Tier-3 Update Domain 3 Middle Tier-3

 Similar to upgrade domains  “Unit of failure”  Considered by WA when provisioning  >= 2 fault domains per service Front- End-1 Fault Domain 1 (eg 1 rack) Fault Domain 2 (eg 1 rack) Front- End-2 Middle Tier-2 Middle Tier-1 Fault Domain 3 (eg 1 rack) Middle Tier-3

YourService LBLBLBLB LBLBLBLB LBLBLBLB LBLBLBLB FabricController Web Portal (API) Model DNS config ServiceService Service

Windows Azure’s kernel

 Windows Azure kernel  Manages hardware & services  Uses description of hardware & network resources it will control  Service model and binaries for applications  Responsibilities  Resource allocation  Resource provisioning  Service lifecycle & health management Server Datacenter

TOR LB Agg PDU LB Agg LB Agg LB Agg Racks Datacenter Routers Aggregation Routers and Load Balancers TOR PDU TOR PDU TOR PDU TOR PDU TOR PDU TOR PDU TOR PDU TOR PDU TOR PDU TOR PDU TOR PDU ……… Top of Rack Switches Power Distribution Units … Nodes

 Distributed application running on nodes spread across fault domains  Installed by “Utility” FC  One primary FC  Supports rolling upgrade  If FC fails, your apps are unaffected

Node  Power on node  Network (PXE) boot of Maintenance OS (WinPE)  Agent formats disk & downloads Host OS  Host OS boots, runs Sysprep & reboots  FC connects with the Host Agent Fabric Controller Role Images Role Images Role Images Role Images Image Repository Maintenanc e OS Parent OS Maintenance OS PXE Server PXE Server Windows Azure OS

Fabric Controller (Primary) FC Host Agent (trusted) FC Host Agent (trusted) Host Partition Guest Partition Guest Agent Guest Partition Guest Agent Guest Partition Guest Agent Guest Partition Guest Agent Physical Node Fabric Controller (Replica) … Role Instance Trust boundary 26

DEMO Let’s gather some evidence...

What happens when I click “Upload”?

 Process service model files  Determine resource requirements  Create role images  Allocate compute and network resources  Prepare nodes  Place role images on nodes  Create & start VM  Configure networking  Dynamic IP addresses (DIPs) assigned to blades  Virtual IP addresses (VIPs) + ports allocated  Programs load balancers to allow traffic

 Goals:  Allocate service components to available resources  Satisfy constraints (VM size, fault domains)  Optionally: satisfy soft constraints  Prefer simplified deployments ▪ Instances from same update domain on same host  Optimize networking ▪ Put nodes closer together

Role B Count: 2 Update Domains: 2 Fault Domains: 2 Size: Medium Role B Count: 2 Update Domains: 2 Fault Domains: 2 Size: Medium Role A Count: 3 Update Domains: 3 Fault Domains: 3 Size: Large Role A Count: 3 Update Domains: 3 Fault Domains: 3 Size: Large LB

 FC pushes role files & configuration to host agent  Host agent creates three VHDs:  Differencing VHD for OS image (D:\) ▪ Host agent injects FC guest agent into VHD for Web/Worker roles  Resource VHD for temporary files (C:\)  Role VHD for role files (first available drive letter e.g. E:\, F:\)  Host agent creates VM, attaches VHDs, and starts VM

 Guest agent starts role host & calls role entry point  Starts health heartbeat to and gets commands from host agent  Load balancer only routes to external endpoint when it responds to simple HTTP GET (LB probe)

 VM Role base and differencing VHD are stored in Windows Azure Storage blobs  Shadow versions are made when the originals are uploaded  VHD reads all go through a VHD caching service  Reads come on-demand from the cache  Writes go to a secondary differencing VHD  “Reimage” simply deletes it and reboots Windows Azure Blob Storage Shadow Base VHD Shadow Differencing VHD Base VHD Shadow Differencing VHD Secondary Differencing VHD

DEMO Let’s get some evidence...

What happens when I click “Upgrade”?

 Swap Virtual IPs between the two slots  Production becomes Staging  Staging becomes Production  Instances are not affected  DNS and LB remains intact  Happens very fast  Can only use when the service model hasn’t changed

Load Balancer: Stage Prod Worker Role VM Worker Role VM

 “Rolling upgrades”  Difficult to do in traditional IT  Leverages Upgrade Domains  Service model must be identical  No new roles, no changes in.csdef, etc.  For Each Upgrade Domain  Stop instances  Update  Start instances

Load Balancer Worker Role #1 #2 #1 #2

What happens on “patch Tuesday”?

 Initiated by the Windows Azure team  Goal: update all machines ASAP not violating SLA  Your role instance keeps the same VM and VHDs, preserving cached data in the resource volume.  Update domains are allocated to 1 host node  Don’t make things confusing  Allows rebooting a complete host without violating SLA  Allows updating all hosts for UDx at once

What happens when nothing happens?

 LB “probes” guest agent every 15 seconds  Miss 2 probes? LB stops forwarding traffic  Role can report “busy” to guest agent  Guest agent stops responding probes public class WebRole : RoleEntryPoint { public override bool OnStart() { RoleEnvironment.StatusCheck += (sender, args) => { if (DateTime.UtcNow.Second > 20) args.SetBusy(); }; return base.OnStart(); } }

 Based on heartbeats, typically 15 seconds  Used for status and recovery  Health state sampler resets the index on successful poll  Once index falls below zero, FC attempts to heal node  Host agent timeout is 10 minutes  Worst-case reaction time is timeout interval + heartbeat interval Missed Heartbeat Recovery Initiated

 FC maintains service availability by monitoring the software and hardware health  Based primarily on heartbeats  Automatically “heals” affected roles ProblemHow DetectedFabric Response Role instance crashFC guest agent monitors role termination FC restarts role Guest VM or agent crash FC host agent notices missing guest agent heartbeats FC restarts VM and hosted role Host OS or agent crashFC notices missing host agent heartbeat Tries to recover node FC reallocates roles to other nodes Detected node hardware issue Host agent informs FCFC migrates roles to other nodes Marks node “out for repair”

25 min Guest Agent Connect Timeout Guest Agent Heartbeat 5s Role Instance Launch Indefinite Role Instance Start Role Instance Ready (for updates only) 15 min Role Instance Heartbeat 15s Guest Agent Heartbeat Timeout 10 min Role Instance “Unresponsive” Timeout 30s Load Balancer Heartbeat 15s Load Balancer Timeout 30s Guest Agent Role Instance

Application VM level Host level Datacenter level Fabric Controller Host Agent Guest Agent Your application Load Balancer

 Similar to a service update  Source node:  Role instances stopped  VMs stopped  Node reprovisioned  Destination node:  Same steps as initial role instance deployment  Warning: Resource VHD is not moved  (that’s why you should consider it volatile)

What to remember?

 Windows Azure & PaaS  The Fabric Controller  Deploying a service  Updating a service  Host OS upgrades  Health

Maarten Balliauw