49

Azure.pptx

Embed Size (px)

Citation preview

Deep Dive intoWindows Azure Virtual Machines

6/27/2012 6:01 PM 2009 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.

1

Deep Dive intoWindows Azure Virtual MachinesVijay RajagopalanPrincipal Lead Program Manager Microsoft Corporation

AZR313

6/27/2012 6:01 PM 2007 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.

2

AgendaIntroduction & Getting StartedPatterns for running Virtual MachinesProvisioning in the CloudImage Customization Bring your own Images / Disks & Best PracticesAPI Surface & Platform Programmability REST, Client Libraries PowerShell Cmdlets Cross Platform Cmdlets Scalextreme ISV building Cloud based Monitoring & ManagementInside Provisioning Virtual MachinesApplication Patterns:- SLA, Building for availability, IaaS + PaaSSummary Q & A

3

Getting Started with Virtual MachinesCreate new VMs from Platform supplied stock images from VM Image Gallery Tools:- Azure Management Portal / APIs / PowerShell cmdletsCustomize a platform stock image and capture for future usageTools:- Management Portal / APIs / PowerShell cmdletsBring your own VMs from on-premisesTools:- Azure SDK Authoring Tools, System Center App Controller (Future), Open Source Authoring Tools (Linux)TipsEnsure VHD is Fixed and Upload as PageBlobEnable DHCP and RDP/SSH before Upload

Create new VMs from Platform supplied stock images from VM Image Gallery Customize a platform stock image and capture for future usageBring your own VMs from on-premisesTools:- Azure Management Portal / APIs / PowerShell cmdletsTools:- Management Portal / APIs / PowerShell cmdletsTools:- Management Portal / APIs / PowerShell cmdlets &

4

New Disk Persisted in Storage

Blob StorageCloudCloud ProvisioningSelect Image and VM Size

Getting Started

Management Portal>_Scripting (Windows, Linux and Mac)

REST APIBoot VM from New Disk

Server

5

Imaging in the Cloud :- Customizing Stock Images in the CloudCloudBlob Storage

CustomizeVHD

GeneralizeVHD

Blob StorageCaptureVM

Base.VHD

BootVM

Identical/similar deployment instances using common OS image as start

Capture VM Saves Customized Image to Your Image Library

6

Bring Your Own Server/VHDOn-Premises

On Premises Virtual Server

MyApp.vhd

Upload VHD

Cloud

Blob Storage

Create Disk orImage

Provision VM from Image or Disk using portal, script or APIUse CaseForklift Migration of VMsSysprepped ImagesVHD Must Be Fixed Disk Ensure VHD is Fixed and Upload as PageBlobRDP/SSH before Upload

Best PracticesActivationPaging FileTime Sync

7

Image MobilityOn-PremisesCloud

Blob Storage

MyApp.vhd

8

Bring your own Image/disk from on-premises Basic VHD validationDynamic disk to Fixed disk conversionMulti-threaded uploadResume functionalityAutomatic Image/Disk registrationImage Patching supportWe support Image & Disk based migration. Windows Azure SDK Authoring Tools (CSUpload)

9

Customers Storage AccountData DiskCSUpload under the coversUploading an data disk is simpleWindows Azure Storage API

DataDisk

PUT Blob

10

Customers Storage AccountOS DiskCSUpload under the coversUploading an OS disk is simpleWindows Azure Storage API

OSDisk

PUT Blob

11

What will work on uploadImages

DisksSysprepd Windows Server VHD on Hyper-V

(Server 2008 R2 and Windows 8 Server)Windows Azure ImageWindows Server VHD on Hyper-V

(Server 2008 R2 and Windows 8 Server)Windows Azure Disk

12

Persistent Disk ManagementC:\ = OS DiskD:\ = Non-Persistent Cache DiskE:\, F:\. G:\ ... Data DisksCapabilityOS DiskData Disk Host Cache DefaultReadWriteReadOnlyMax Capacity127 GB1 TBImaging CapableYesNoHot UpdateCache Setting Requires RebootChange Cache Without Reboot, Add/Remove without Reboot.

13

DEMO

Image Customization & (Capture)Bring your VMs / Data DisksMigration : - Bring your own VM from on-premises using System Center App Controller

14

Technology Behind Launching a Virtual Machine

Portal (API)Windows Azure HypervisorVMOSDataCache

ISOImage Publisher GalleryCustomerStorage Account

BaseImagesProvisioning Repository

UNATTENDAdd ServerHostnamePassword

CACHE.VHD

Storage API

OS DiskData Disk

15

Virtual Machine Provisioning OptionsGeneral SettingsNetworkingDisk ConfigurationComputer NameWindows Update (default on)Windows Domain Join Settings (Script Only)Certificate/SSH Cert DeploymentConfigure TCP/UDP EndpointsSubnet Name(s)Virtual NetworkModify cache and Add Data Disks

16

Windows Azure Virtual Machine Architecture

Cloud ServiceLocation: North Central USName: myservice.cloudapp.netPublic IP (VIP)myservice.cloudapp.netLoad BalancerVIP

DeploymentVirtual Network: MyVNETDNS Ips: 10.2.2.4, 10.2.2.5Virtual MachineRole Name: srv1Subnet: sub1

Virtual MachineRole Name: srv2Subnet: sub1

DIP

ClientsWindows AzureStorage

17

Virtual Machines Under the HoodVirtual MachineRoleName: spsql1Subnet: AppSubnetInstanceStatus: ReadyRoleIP Address: 10.26.190.71

OS DiskHostCaching : ReadWriteDiskName : SPMigDemo1-spsql1-0-2012319124815MediaLink : http://spmigdemo1.core.azure-preview.com/vhds/spsql1.vhdSourceImageName : MSFT__Windows-Server-2008-R2-SP1-with-SQL-Server-2012-Eval.11-29-2011Data DiskHostCaching : ReadOnlyDiskLabel : sqldataDiskName : SPMigDemo1-spsql1-0-2012319124817Lun : 0LogicalDiskSizeInGB : 20MediaLink : https://spmigdemo1.blob.core.azure-preview.com/vhds/sqldata.vhdInput EndpointsEnableDirectServerReturn : FalseLocalPort : 3389Name : RDPPort : 61388Protocol : tcpVip : 65.52.249.196LoadBalancerProbe: LoadBalancedEndpointSetName:

18

Virtual Machine Management

Remote DesktopWindows UpdateVM Customization & Software AcquisitionFully Configured. On by defaultPreferred mode for keeping your VMs up to dateNo Coordination between VMs and platform updatesInteractively with RDPWeb PIData Disk FTP ServerHybrid SMB Server

19

Protocols and EndpointsUDP Traffic Supported in WA Support for All IP-Based Protocols (VM to VM)Custom Load Balancer Health ProbesLoad-balanced incoming traffic and allows outbound trafficInstance-to-instance communicationTCP, UDP and ICMP, Support for dynamic portsHealth check based on ProbesHTTP and TCP based probing, allowing granular control of health checksPort Forwarded EndpointsDirect communication to multiple VMs in the same cloud app

20

Service Management REST APIs- A Birds eye View

Management.core.windows.net/Subscription(R)Storage Account (CRUD)Hosted Service (CRUD)Location(CRUD)OSFamily(CRUD)OS(R)Operations(R)Disks(CRUD)Images(CRUD)Virtual Machine(CRUD)Data Disk(CRUD)Configuration Set(CRUD)

Entity ReferenceParent Child ReferenceC - CreateR - ReadU - UpdateD - Delete

Deployment (CRUD)Service Certificate (CRUD)

21

REST APIs for VM Operations

Add Role (i.e., Create Virtual Machine)Get RoleModify RoleAttach DiskDetach Disk

Modify Disk Attribute

Delete RoleShutdown/Restart RoleDeployment Level APIsCapture RoleDownload RDP file

Get/Set/List Virtual Networks

22

Create Virtual MachinePOST https://management.core.windows.net//services/compute/myService/Deployments/myDeployment/Roles { Name:MyWebServerFrontEndH1, RoleType:PersistentVMRole, InstanceSize:Medium, OSDisk: { SourceImageId:PlatformWin2k8R2Apr01 }, DataDisks: [{ LogicalDiskSizeInGB:15 }], ConfigurationSets: [{ ConfigurationSetType:ProvisioningConfiguration, AdminPassword:ac63783093bbef82729==, ResetPasswordOnFirstLogon:true }]}Response 202 Acceptedx-ms-requestid : 3874857458459420685695

23

Capture a Virtual MachinePOST https://management.core.windows.net//services/compute/myService/Deployments/myDeployment/Roles/MyWebServerFrontEndH1/Operations?OperationType=Capture{ TargetImageName:MySQLServerSP3BaseImage, PostCaptureAction:REPROVISION|DELETE, ConfigurationSets:[{ ConfigurationType:ProvisioningConfiguration, AdminPassword:baac7364384948==, ResetPasswordOnLogon:true, MachineName:SQLServerv11 }]}Response 202 Acceptedx-ms-requestid : 3874857458459420685695

24

IntroducingClient Libraries for Service Management

We will deliver .NET Reference Library for all the management scenariosPrescriptive & Consistent Client Scenario Wrappers to enable Microsoft & ISV products. Java & PHP Libraries for non-Windows scenarios.

25

Announcing Windows Azure PowerShell CmdletsCloud Services/DeploymentsNew/Upgrade/Delete/VIP SwapInstance ManagementAdd/Remove/Reboot/Re-ImageDiagnostics ManagementConfigure/Download/CleaBasic Storage OperationsUpload/Download/DeleteCreate/Manage Storage AccountsStorage AnalyticsVirtual Machine ManagementCreate/Managing Virtual MachinesHot Add Disks/EndpointsManage VNET SettingsSubscription Management

26

Scripted Deployment$vms = @()

$vms += New-AzureVM -RoleName 'vm1' -InstanceSize Small |Add-ProvisioningConfiguration -Windows -AdminPassword $pwd |Add-OSDisk -ImageName $imgname -MediaLocation $vm1storage

$vms += New-AzureVM -RoleName 'vm2' -InstanceSize Small |Add-ProvisioningConfiguration -Windows -AdminPassword $pwd |Add-OSDisk -ImageName $imgname -MediaLocation $vm2storage

New-AzureDeployment-NewCloudService -ServiceName $svcName -Location 'North Central US' -Roles $vms

27

DEMO

REST API Surface areaCommand Line ToolsBuilding Webfarm using PowerShellManaging Virtual Machines from Linux/Mac

28

Scalextreme

29

ScaleXtreme OverviewCloud-based Systems ManagementInstant OnManage existing servers or create brand-new servers no need to use our images, you can use your ownMonitoring, Patch Management, general-purpose Job Automation, Budgets & Cost Control, etc.

Complements Azure management functionality with actual server launch and management capabilities Windows and Linux fully supported, today

Directly integrates with Windows Azure through management APIsWorked closely with Microsoft to ensure native integration

Super Easy

1. Create free account at http://www.scalextreme.com/free2. Link your Azure account to ScaleXtreme3. Put agent on existing servers or start launching new ones4. All functionality (patch, job automation) instantly available!

Demo!

32

Application Patterns

SLA & Building for High AvailabilityHighly Available Application PatternSQL Mirroring for AvailabilitySharePointDesigning VMs with Domain ControllerConnecting Cloud Services & VMs over VIPConnecting Cloud Services & VMs over VNetMixed Mode (PaaS + IaaS working together)

33

4.38 hours of downtime per yearService Level Agreements

99.95% for Virtual Machines (in Availability Set)

8.75 hours of downtime per year

99.9% for single Virtual MachineCompute Hardware failure (disk, cpu, memory)Datacenter failures - Network failure, power failureHardware upgrades, Software maintenance Host OS Updates

What is includedVM Container crashes, Guest OS Updates

What is not included

34

Availability Set VisualizedFault DomainRackVirtual MachineIIS1Virtual MachineSQL1Fault DomainRackVirtual MachineIIS2Virtual MachineSQL2Web Availability SetSQL Availability Set

35

Virtual MachineVirtual MachineVirtual Machine

SQL Server - Primary

SQL Server - Primary

SQL Server - Primary

How Does this Relate to SLA?SLA 99.9SLA >= 99.95Availability Set

36

Virtual MachineVirtual Machine

SQL Server

SQL ServerEnd to End Highly Available SolutionRedundancy at every level

Virtual MachineBusiness Components & EntitiesPersistent DiskVirtual MachineBusiness Components & EntitiesPersistent DiskIIS Web ApplicationWeb RoleIIS Web ApplicationWeb RoleLB

SQL Mirroring

InternetTips :-Add both VMs to the same availability Set at every layerConfigure a load balanced endpoint on Port 80 for UI layer

37

Summary SLA and AvailabilityScenarioWindows AzureSQL ServerMultiple Instance Availability99.95% (Availability Sets)99.95% (DB Mirroring)Single Instance Availability99.9%99.9%Disaster RecoveryWindows Azure Storage Geo-ReplicationLog-Shipping/Backup

38

Virtual MachineVirtual Machine

SQL

SQL

Virtual MachineVirtual Machine

SQL

SQL

InternetSharePoint

Virtual MachinePersistent DiskSearch and IndexVirtual MachineSharePoint FrontEndVirtual MachineSharePoint FrontEndVirtual MachineDCDNSLocal DNSServer AccountsSQL MirroringLB

Open User Access (Website)On Premises

Virtual MachinePersistent DiskSearch and IndexVirtual MachineSharePoint FrontEndVirtual MachineSharePoint FrontEndVirtual MachineDCDNSLocal DNSServer AccountsVNetUser AccountsSQL MirroringDomain joined to On-Premises NetworkLBDCDNS10.8.8.x

InternetTips :-Configure the Virtual Network Configure Gateway to On Premise Configure your on premise routerStart the gateway

Create first VM from SQL Server. Configure databases on it.Sysprep and shut it down.Capture as an Image

Create second VM from the ImagesCreate load balanced endpointsPut both VMs in the same availability set

39

SQL ServerBuilding Complex LOB Applications with Domain ControllerActive DirectoryDNSVirtual Machine

Virtual MachineUI Process ComponentsWeb TierBusiness Components & EntitiesBusiness & Data TierDomain joined to NetworkVNet

40

DEMO

Building Complex Applications using Domain based Automation

41

Power of ChoiceVirtual Machines(IaaS) & Cloud Services(PaaS) Better TogetherConnect Cloud Services via VIPsEasily compose services by connecting public endpointsDirect Connectivity Using Virtual NetworkingSimple, secure and highly efficient method of using IaaS and PaaS side-by-sideFor advanced connectivity scenarios such as Active Directory or DCOMMixed Mode: Virtual Machines and Web/Worker Roles in the Same Cloud Service

42

Connecting Cloud Services via VIPsStrengthsSimplicityTenant AutonomyVIP Swap (stateless roles)Easy Local Dev/TestPersistent Service is Easily Accessible (even from other services!)WeaknessHigher LatencyLess SecureManagement/Deployment Overhead

Secure Endpoints with FirewallLoad Balancer80

WA Web RoleCloud Service1Cloud Service 2SQL Server

Load Balancer2001-1433

SQL Data Access Traffic Through Public Endpoint

43

Connecting Cloud Services with VNETStrengthsSimplicityTenant AutonomyVIP Swap (stateless roles)Easy Local Dev/TestPersistent Service is Easily Accessible (even from other services!)WeaknessVNET ComplexityNo iDNS use BYOD

Direct Access via VNETFrontEndSubnet (10.0.0.0/16)SQLSubnet (10.1.0.0/16)Load Balancer80

WA Web RoleCloud Service1Cloud Service 2AD

SQL Mirror

AD Subnet(10.2.0.0/16)ContosoVNet (10.0.0.0/8)

44

Mixed Mode: PaaS/IaaS in the Same Cloud Service

Virtual MachineCloud Service

WA Web RoleLoad Balancer80Coming in the future

StrengthsInternal DNS (iDNS)Low latency connectivitySingle deployment, update and management unitWeaknessNo VIP Swap (coming in the future)

45

Track Resources

Meetwindowsazure.com

@WindowsAzure @teched_europeDOWNLOAD Windows Azure

Windowsazure.com/techedHands-On Labs

46

Resources

Connect. Share. Discuss.http://europe.msteched.com

Learning

Microsoft Certification & Training Resourceswww.microsoft.com/learning

TechNet

Resources for IT Professionalshttp://microsoft.com/technet

Resources for Developershttp://microsoft.com/msdn

47

Evaluationshttp://europe.msteched.com/sessionsSubmit your evals online

6/27/2012 6:01 PM 2007 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.

48

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

6/27/2012 6:01 PM 2009 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.

49