Deploying IaaS VM Guest Clusters in Microsoft Azure

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

GuestClustering 500x245 Deploying IaaS VM Guest Clusters in Microsoft Azure

A guest cluster in Microsoft Azure is a Failover Cluster comprised of IaaS VMs. This allows hosted VM workloads to failover across the guest cluster. 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)
  • S2D for shared storage for File Server (Information Worker)
  • 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

SQLServerFCI 500x288 Deploying IaaS VM Guest Clusters in Microsoft Azure

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

    a 500x121 Deploying IaaS VM Guest Clusters in Microsoft Azure

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

    Find template here

    b 500x290 Deploying IaaS VM Guest Clusters in Microsoft Azure

  3. Deploying SQL Server FCI on Storage Spaces Direct

    Find template here

    c 500x188 Deploying IaaS VM Guest Clusters in Microsoft Azure

  4. Deploying SQL Server AG on Storage Spaces Direct

    Find template here

    Template2 500x164 Deploying IaaS VM Guest Clusters in Microsoft Azure

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

    Find template here

    Template3a 396x350 Deploying IaaS VM Guest Clusters in Microsoft AzureTemplate3 500x306 Deploying IaaS VM Guest Clusters in Microsoft Azure

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

Find template here

Template4 500x316 Deploying IaaS VM Guest Clusters in Microsoft AzureTemplate4a Deploying IaaS VM Guest Clusters in Microsoft Azure

Deployment Considerations:

Cluster Witness:

It is recommended to use a Cloud Witness for Azure Guest Clusters.

CloudWitness 383x350 Deploying IaaS VM Guest Clusters in Microsoft Azure

Cluster Authentication:

There are three options for Cluster Authentication for your guest cluster:

  1. Traditional Domain Controller

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

DomainJoined Deploying IaaS VM Guest Clusters in Microsoft Azure

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

DJ3 500x157 Deploying IaaS VM Guest Clusters in Microsoft Azure

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

DJ2 500x105 Deploying IaaS VM Guest Clusters in Microsoft Azure

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.

Workgroup 500x304 Deploying IaaS VM Guest Clusters in Microsoft Azure

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 authentication. Learn more here

AAD 500x222 Deploying IaaS VM Guest Clusters in Microsoft Azure

Cluster Storage:

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

  1. Storage Spaces Direct

    S2D 500x181 Deploying IaaS VM Guest Clusters in Microsoft Azure

    Creates virtual shared storage across Azure IaaS VMs. Learn more here

  2. Application Replication

    AppRep Deploying IaaS VM Guest Clusters in Microsoft Azure

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 Replication

Replicates data at volume layer across Azure IaaS VMs. This is application agnostic and works with any solution. In Windows Server 2016 volume replication 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 load balancer. 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.

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.

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.

SRComp 500x322 Deploying IaaS VM Guest Clusters in Microsoft Azure

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

Let’s block ads! (Why?)

Clustering and High-Availability