By: Greg Robidoux | Last Updated: 2016-06-02 | Comments (10) | Azure
Microsoft Azure is becoming a widely used platform for SQL Server implementations and Microsoft continues to add new offerings for these cloud based options. It has taken time for companies to adopt cloud based solutions for their SQL Server applications, but the tide is changing and implementations are increasing. One of the requirements for many SQL Server environments is the need for high availability with minimal downtime. Although Azure has many built-in fault tolerant features, having a high availability solution for SQL Server is still a necessity. Windows Server Failover Clustering (WSFC) has been and remains to be the primary means of implementing a high availability solution and Microsoft continues to add more features to make clustering more robust and easier to implement. One of the downsides to WSFC is that it requires shared storage which is not an option with Azure based virtual machines. So how can you get the benefits of Azure along with the benefits of Windows Server Failover Clusters when implementing SQL Server on Azure?
As mentioned, Microsoft Azure offers several options for SQL Server such as SQL Database, SQL Data Warehouse, SQL Server Stretch Database as well as the ability to implement SQL Server using Azure virtual machines. Each of these solutions provides different benefits, but using Azure virtual machines gives you the most flexibility as well as the ability to manage your SQL Server instances similarly to how you manage your on-premises servers.
Since we need a solution that provides the most options and flexibility to implement a high availability SQL Server solution, we will be discussing how to build a Windows Server Failover Cluster for SQL Server using Azure virtual machines. As stated, one of the requirements for WSFC is the ability to access shared storage which is not an option in Azure, but by integrating a solution like SIOS DataKeeper Cluster Edition into the mix we can build a SQL Server cluster using Azure virtual machines. SIOS DataKeeper Cluster Edition is a Microsoft Azure Certified product which means this is a fully supported Microsoft solution.
Implementing a SQL Server Cluster in Azure
The great thing about using a Windows Server Failover Cluster for SQL Server on Azure is that if you already know how to implement and manage a Microsoft cluster there is very little to learn. You build and manage the cluster like you would if the cluster was on-premises. There are a few steps that are different to prepare your storage, but once the storage has been configured using SIOS DataKeeper Cluster Edition the cluster build and management is similar to what you are doing today.
Here are the high level steps:
- Provision the virtual machines
- Add the Failover Clustering feature to the virtual machines
- Create a file share witness
- Install DataKeeper and setup the storage
SIOS DataKeeper allows us to get around the need for shared storage, by creating disk volumes that are replicated between each node in the cluster. The data in these volumes is synchronized using real time, block level replication. The data therefore exists on all nodes in the cluster, which also eliminates the possibility of losing the data with a single shared storage source.
Once the volume or volumes have been created on the cluster nodes using SIOS DataKeeper, this storage becomes available within the Failover Cluster Manager as available storage.
After the storage has been configured, the following steps remain:
- Install SQL Server on the first cluster node using the "New SQL Server failover cluster installation option". When you go through the setup of SQL Server you will see the available storage that has been configured using SIOS DataKeeper.
- Install SQL Server on the second cluster node using the "Add node to a SQL Server failover cluster" option.
- Configure the Azure Internal Load Balancer, so clients can connect to active node.
These are the high level steps to implementing a Windows Server Failover Cluster for SQL Server on Azure. As you can see, implementing a SQL Server cluster on Azure can be done quite easily using SIOS DataKeeper. Take some time by learning more about SIOS DataKeeper by referring to the links below.
Review these resources:
- SIOS DataKeeper Cluster Edition
- Deploying Microsoft SQL Server 2014 Failover Clusters in Azure Resource Manager
- SQL Server 2014 AlwaysOn Failover Cluster Instance with SIOS DataKeeper Azure Deployment Template
MSSQLTips.com Product Editorial sponsored by SIOS Technology Corp., makers of SIOS DataKeeper Cluster Edition.
Last Updated: 2016-06-02
About the author
View all my tips