Deploying IaaS VM Guest Clusters in Microsoft Azure




First published on MSDN on Feb 14, 2017




Authors: Rob Hindman and Subhasish Bhattacharya, Program Manager, Windows Server

In this blog I am going to discuss deployment considerations and scenarios for IaaS VM Guest Clusters in Microsoft Azure.

IaaS VM Guest Clustering in Microsoft Azure

A guest in Microsoft Azure is a Failover comprised of IaaS VMs. This allows hosted VM workloads to failover across the guest . This provides a higher availability SLA for your applications than a single Azure VM can provide. It is especially usefully in scenarios where your VM hosting a critical application needs to be patched or requires configuration changes.

Learn more about the advantages of Guest Clustering in this video:


Supported workloads for Guest Clusters on Azure

The following Guest Cluster configurations are supported by Microsoft:

  • SQL Server AlwaysOn Availability Groups (no shared storage needed)
  • Storage Spaces Direct(S2D) for shared storage for SQL Server FCI
  • S2D for shared storage for RDS User Profile Disk
  • S2D for shared storage for Scale-out File Server (SoFS)
  • File Server using Storage Replica
  • Generic Application and Services on Guest Clusters

SQL Server Failover Cluster Instance (FCI) on Azure

A sizable SQL Server FCI install base today is on expensive SAN storage on-premises. In the future, we see this install base taking the following paths:


  1. Conversion to virtual deployments leveraging SQL Azure (PaaS):

    Not all on-premises SQL FCI deployments are a good fit for migration to SQL Azure.

  2. Conversion to virtual deployments leveraging Guest Clustering of Azure IaaS VMs and low cost software defined storage  technologies such as

    Storage Replica (SR)

    and

    Storage Spaces Direct(S2D)


    : This is the focus of this blog.
  3. Maintaining a physical deployment on-premises while leveraging low cost SDS technologies such as SR and S2D
  4. Preserving the current deployment on-premises

Deployment guidance for the second path can be found

here

Creating a Guest Cluster using Azure Templates:

Azure templates decrease the complexity and speed of your deployment to production. In addition it provides a repeatable mechanism to replicate your production deployments.

It is easy to create a Guest Cluster in Azure using these “1-click” templates! Learn more in the following video:

The following are recommended templates to use for your IaaS VM guest cluster deployments to Azure.

  1. Deploying Scale out File Server (SoFS)  on Storage Spaces Direct

    Find template

    here

  2. Deploying SoFS on Storage Spaces Direct (with Managed Disk)

    Find template

    here

  3. Deploying SQL Server FCI on Storage Spaces Direct

    Find template

    here

    MVP, Nirmal Thewarathanthri, provides more guidance

    here

    and a video below:

  4. Deploying SQL Server AG on Storage Spaces Direct

    Find template

    here

  5. Deploying a Storage Spaces Direct Cluster-Cluster replication with Storage Replica and Managed Disks

    Find template

    here


  6. Deploying Server-Server replication with Storage Replica and Managed Disks

Find template

here



Deployment Considerations:

Cluster Witness:


It is recommended to use a

Cloud Witness

for Azure Guest Clusters.


Cluster Authentication:

There are three options for Cluster for your guest cluster:


  1. Traditional Domain Controller

    This is the default and predominant cluster model where one or two (for higher availability) IaaS VM Domain Controllers are deployed.

Azure template to create a new Azure VM with a new AD Forest can be found

here

Azure template to create a new AD Domain with 2 Domain Controllers can be found

here



2. Workgroup Cluster

A workgroup cluster reduces the cost of the deployment due to no DC VMs required. It reduces dependencies on Active Directory helping deployment complexity. It is an ideal fit for small deployments and test environments. Learn more

here

.

3. Using Azure Active Directory

Azure Active Directory provides a multi-tenant cloud based directory and identity management service which can be leveraged for cluster . Learn more

here

Cluster Storage:

There are three predominant options for cluster storage in Microsoft Azure:


  1. Storage Spaces Direct

    Creates virtual shared storage across Azure IaaS VMs. Learn more

    here


  2. Application

Replicates data in application layer across Azure IaaS VMs. A typical scenario is seen with SQL Server 2012 (or higher) Availability Groups (AG).

3. Volume

Replicates data at volume layer across Azure IaaS VMs. This is application agnostic and works with any solution. In Windows Server 2016 volume is provided in-box with

Storage Replica

. 3rd party solutions for volume replication includes SIOS Datakeeper.

Cluster Networking:

The recommended approach to configure the IP address for the VCO (for instance for the SQL Server FCI) is through an Azure . The load balancer holds the IP address, on 1 cluster node at a time. The below video walks through the configuration of the VCO through a load balancer.

[/video]

Storage Space Direct Requirements in Azure:


  • Number of IaaS VMs:

    A minimum of 2

  • Data Disks attached to VMs:

    • A minimum of 4 data disks required per cluster i.e. 2 data disks per VM
    • Data disks must be Premium Azure Storage
    • Minimum size of data disk 128GB


  • VM Size:

    The following are the guidelines for minimum VM deployment sizes.

    • Small:

      DS2_V2

    • Medium:

      DS5_V2

    • Large:

      GS5
    • It is recommended to run the DskSpd utility to evaluate the IOPS provided for a VM deployment size. This will help in planning an appropriate deployment for your production environment. The following video outlines how to run the DskSpd tool for this evaluation.

[/video]

Using Storage Replica for a File Server

The following are the workload characteristics for which Storage Replica is a better fit than Storage Spaces Direct for your guest cluster.

  • Large number of small random reads and writes
  • Lot of meta-data operations
  • Information Worker features that don't work with Cluster Shared Volumes.


UDP using File Share (SoFS) Guest Cluster

Remote Desktop Services (RDS) requires a domain-joined file server for user profile disks (UPDs). This can be facilitated by

deploying

a SoFS on a domain-joined IaaS VM guest cluster in Azure. Learn about UPDs and Remote Desktop Services

here

 

This article was originally published by Microsoft's ITOps Talk Blog. You can find the original article here.