inside windows azure virtual machines vijay rajagopalan microsoft corporation

48
Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Upload: barnaby-terry

Post on 22-Dec-2015

239 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Inside Windows Azure Virtual MachinesVijay RajagopalanMicrosoft Corporation

Page 2: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

AgendaIntroduction & Getting StartedPatterns for running Virtual Machines

Provisioning in the CloudImage Customization Bring your own Images / Disks & Best Practices

API 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

Page 3: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Getting Started with Virtual Machines1. Create new VMs from Platform supplied “stock images” from VM Image

Gallery

2. Customize a platform stock image and “capture” for future usage

3. Bring your own VMs from on-premises

Tools:- Azure Management Portal / APIs / PowerShell cmdlets

Tools:- Management Portal / APIs / PowerShell cmdlets

Tools:- Management Portal / APIs / PowerShell cmdlets &

Page 4: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

New Disk Persisted in Storage

Blob Storage

Cloud

Cloud Provisioning

Select Image and VM SizeGetting Started

Management Portal

>_Scripting

(Windows, Linux and Mac)

REST API

Boot VM from New DiskServer

Page 5: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Imaging in the Cloud :- Customizing Stock Images in the CloudCloud

Blob Storag

e

Blob Storage

Base.VHD

Identical/similar deployment instances using common OS image

as start

Capture VM Saves Customized Image to Your Image Library

Page 6: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Bring Your Own Server/VHD

On-Premises

On Premises Virtual Server

MyApp.vhd

Upload VHD

Cloud

Blob Storage

Provision VM from Image or

Disk using portal, script or API

Best PracticesActivationPaging FileTime Sync

Page 7: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Image Mobility

On-Premises Cloud

Blob Storag

e

MyApp.vhd

Page 8: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Bring your own Image/disk from on-premises

Basic VHD validation

Dynamic disk to Fixed disk conversion

Multi-threaded upload

Resume functionality

Automatic Image/Disk registration

Image Patching support

We support Image & Disk based migration.

Windows Azure SDK Authoring Tools (CSUpload)

Page 9: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Customer’s Storage Account

Data Disk

CSUpload under the coversUploading an data disk is simple…

Windows Azure Storage API

DataDisk

PUT Blob

Page 10: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Customer’s Storage Account

OS Disk

CSUpload under the coversUploading an OS disk is simple…

Windows Azure Storage API

OSDisk

PUT Blob

Page 11: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

What will work on upload…

Images

Disks

Sysprep’d Windows Server VHD on Hyper-V

(Server 2008 R2 and Windows 8 Server)

Windows Azure Image

Windows Server VHD on Hyper-V

(Server 2008 R2 and Windows 8 Server)

Windows Azure Disk

Page 12: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Persistent Disk Management

• C:\ = OS Disk• D:\ = Non-Persistent Cache Disk• E:\, F:\. G:\ ... Data Disks

Capability OS Disk Data Disk

Host Cache Default ReadWrite ReadOnly

Max Capacity 127 GB 1 TB

Imaging Capable Yes No

Hot UpdateCache Setting Requires Reboot

Change Cache Without Reboot, Add/Remove without Reboot.

Page 13: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

DEMO• Image Customization &

(Capture)• Bring your VMs / Data Disks• Migration : - Bring your own

VM from on-premises using System Center App Controller

Page 14: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Technology Behind Launching a Virtual Machine

Portal (API)Windows Azure Hypervisor

VM

OS

Data

Cache

ISO

Image Publisher Gallery

CustomerStorage Account

BaseImage

s

Provisioning Repository

UNATTEND Add Server

Hostname Password …

CACHE.VHD

Storage API

OS Disk

Data Disk

Page 15: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Virtual Machine Provisioning OptionsGeneral Settings

Networking

Disk Configuration

Computer NameWindows Update (default on)Windows Domain Join Settings (Script Only)Certificate/SSH Cert Deployment

Configure TCP/UDP EndpointsSubnet Name(s)Virtual Network

Modify cache and Add Data Disks

Page 16: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Windows Azure Virtual Machine Architecture

Cloud ServiceLocation: North Central USName: myservice.cloudapp.net

Public IP (VIP)myservice.cloudapp.net

Load Balancer

VIP

DeploymentVirtual Network: MyVNETDNS Ips: 10.2.2.4, 10.2.2.5

Virtual MachineRole Name: srv1Subnet: sub1

Virtual MachineRole Name: srv2Subnet: sub1

DIP

Clients

Windows Azure

Storage

Page 17: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Virtual Machines Under the Hood

Virtual 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-2011

Data DiskHostCaching : ReadOnlyDiskLabel : sqldataDiskName : SPMigDemo1-spsql1-0-2012319124817Lun : 0LogicalDiskSizeInGB : 20MediaLink : https://spmigdemo1.blob.core.azure-preview.com/vhds/sqldata.vhd

Input EndpointsEnableDirectServerReturn : FalseLocalPort : 3389Name : RDPPort : 61388Protocol : tcpVip : 65.52.249.196LoadBalancerProbe: LoadBalancedEndpointSetName:

Page 18: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Virtual Machine Management Remote Desktop

Windows Update

VM Customization & Software Acquisition

Fully Configured.

“On” by defaultPreferred mode for keeping your VMs up to dateNo Coordination between VMs and platform updates

Interactively with RDPWeb PIData Disk FTP ServerHybrid –SMB Server

Page 19: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Protocols and EndpointsUDP Traffic Supported in WA

Support for All IP-Based Protocols (VM to VM)

Custom Load Balancer Health Probes

Load-balanced incoming traffic and allows outbound traffic

Instance-to-instance communicationTCP, UDP and ICMP, Support for dynamic ports

Health check based on ProbesHTTP and TCP based probing, allowing granular control of health checks

Port Forwarded Endpoints

Direct communication to multiple VMs in the same cloud app

Page 20: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Service Management REST APIs- “A Bird’s eye View”

Page 21: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

REST APIs for VM Operations

Add Role (i.e., Create Virtual Machine)

Get Role

Modify Role

Attach Disk

Detach Disk

Modify Disk Attribute

Delete Role

Shutdown/Restart Role

Deployment Level APIs

Capture Role

Download RDP file

Get/Set/List Virtual Networks

Page 22: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Create Virtual Machine

POST https://management.core.windows.net/<subid>/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

Page 23: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Capture a Virtual Machine

POST https://management.core.windows.net/<subid>/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

Page 24: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

IntroducingClient Libraries for Service Management

We will deliver .NET Reference Library for all the management scenarios

Prescriptive & Consistent Client Scenario Wrappers to enable Microsoft & ISV products.

Java & PHP Libraries for non-Windows scenarios.

Page 25: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Announcing Windows Azure PowerShell Cmdlets

Cloud Services/DeploymentsNew/Upgrade/Delete/VIP Swap

Instance ManagementAdd/Remove/Reboot/Re-Image

Diagnostics ManagementConfigure/Download/Clea

Basic Storage OperationsUpload/Download/DeleteCreate/Manage Storage AccountsStorage Analytics

Virtual Machine ManagementCreate/Managing Virtual MachinesHot Add Disks/EndpointsManage VNET Settings

Subscription Management

Page 26: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

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

Page 27: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

DEMO

• REST API Surface area• Command Line Tools• Building Webfarm using

PowerShell• Managing Virtual Machines from

Linux/Mac

Page 28: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Scalextreme

Page 29: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

ScaleXtreme OverviewCloud-based Systems Management

“Instant On”Manage 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 API’s

Worked closely with Microsoft to ensure native integration

Page 30: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Super Easy

1. Create free account at http://www.scalextreme.com/free

2. Link your Azure account to ScaleXtreme

3. Put agent on existing servers or start launching new ones

4. All functionality (patch, job automation) instantly available!

Page 31: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Demo!

Page 32: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Application Patterns

SLA & Building for High Availability

Highly Available Application Pattern

SQL Mirroring for Availability

SharePoint

Designing VMs with Domain Controller

Connecting Cloud Services & VMs over VIP

Connecting Cloud Services & VMs over VNet

Mixed Mode (PaaS + IaaS working together)

Page 33: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

4.38 hours of downtime per year

Service Level Agreements

99.95% for Virtual Machines (in Availability Set)

8.75 hours of downtime per year

99.9% for single Virtual Machine

Compute Hardware failure (disk, cpu, memory)Datacenter failures - Network failure, power failureHardware upgrades, Software maintenance – Host OS Updates

What is included

VM Container crashes, Guest OS Updates

What is not included

Page 34: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Availability Set Visualized

Page 35: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

SQL Server

- Primary

SQL Server

- Primary

SQL Server

- Primary

How Does this Relate to SLA?

Availability Set

Page 36: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Virtual Machine

Virtual Machine

SQL Server

SQL Server

End to End Highly Available Solution

Virtual Machine

Business Components &

Entities

Persistent Disk

Virtual Machine

Business Components &

Entities

Persistent Disk

IIS Web Application

Web Role

IIS Web Application

Web Role

LB

SQ

L M

irro

ringInternet

Tips :-1. Add both VMs to

the same availability Set at every layer

2. Configure a load balanced endpoint on Port 80 for UI layer

Page 37: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Summary – SLA and Availability

SCENARIO WINDOWS AZURE SQL SERVERMultiple Instance Availability

Single Instance Availability

Disaster Recovery

Page 38: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Virtual Machine

Virtual Machine

SQL

SQL

Virtual Machine

Virtual Machine

SQL

SQL

Internet

SharePoint

Virtual Machine

Persistent Disk

Search and IndexVirtual Machine

SharePoint FrontEnd

Virtual Machine

SharePoint FrontEnd

Virtual Machine

DC DNS Local DNS

Server Accounts S

QL M

irrorin

g

LB

Open User Access

(Website)

On Premises

Virtual Machine

Persistent Disk

Search and IndexVirtual Machine

SharePoint FrontEnd

Virtual Machine

SharePoint FrontEnd

Virtual Machine

DC DNS Local DNS

Server Accounts

VNet

User Accounts

SQ

L Mirro

ring

Domain joined to On-Premises

Network

LB

DC DNS

10.8.8.x

Internet

Tips :-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

Page 39: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

SQL Server

Building Complex LOB Applications with Domain Controller

Active Directory

DNS

Virtual Machine

Virtual Machine

UI Process Components

Web Tier

Business Components &

Entities

Business & Data Tier

Domain joined to Network

VNet

Page 40: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

DEMO

• Building Complex Applications using Domain based Automation

Page 41: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Power of ChoiceVirtual Machines(IaaS) & Cloud Services(PaaS) Better Together

Connect Cloud Services via VIPsEasily compose services by connecting public endpoints

Direct Connectivity Using Virtual Networking

Simple, secure and highly efficient method of using IaaS and PaaS side-by-side

For advanced connectivity scenarios such as Active Directory or DCOM

Mixed Mode: Virtual Machines and Web/Worker Roles in the Same Cloud Service

Page 42: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Connecting Cloud Services via VIPs

StrengthsSimplicityTenant AutonomyVIP Swap (stateless roles)Easy Local Dev/TestPersistent Service is Easily Accessible (even from other services!)

WeaknessHigher LatencyLess SecureManagement/Deployment Overhead

Secure Endpoints

with Firewall

Load Balancer

80

WA Web Role

Cloud Service1

Cloud Service 2

SQL Server

Load Balancer

2001-1433

SQL Data Access Traffic Through Public Endpoint

Page 43: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Connecting Cloud Services with VNET

StrengthsSimplicityTenant AutonomyVIP Swap (stateless roles)Easy Local Dev/TestPersistent Service is Easily Accessible (even from other services!)

WeaknessVNET ComplexityNo iDNS – use BYOD

Direct Access

via VNET

FrontEndSubnet

(10.0.0.0/16)

SQLSubnet (10.1.0.0/16)

Load Balancer

80

WA Web Role

Cloud Service1

Cloud Service 2

AD

SQL Mirror

AD Subnet(10.2.0.0/1

6)

ContosoVNet (10.0.0.0/8)

Page 44: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Mixed Mode: PaaS/IaaS in the Same Cloud Service

Virtual Machine

Cloud Service

WA Web Role

Load Balancer

80

Coming in the future

StrengthsInternal DNS (iDNS)Low latency connectivitySingle deployment, update and management unit

WeaknessNo VIP Swap (coming in the future)

Page 45: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Resources

Connect. Share. Discuss.

http://northamerica.msteched.com

Learning

Microsoft Certification & Training Resources

www.microsoft.com/learning

TechNet

Resources for IT Professionals

http://microsoft.com/technet

Resources for Developers

http://microsoft.com/msdn

Page 46: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

Complete an evaluation on CommNet and enter to win!

Page 47: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

MS Tag

Scan the Tagto evaluate thissession now onmyTechEd Mobile

Required Slide *delete this box when your slide is finalized

Your MS Tag will be inserted here during the final scrub.

Page 48: Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation

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