Getting Started with SQL Server 2008 R2 Failover Clustering

SQL Server failover clustering provides high-availability support for an entire SQL Server instance.  SQL Server failover clusters are built on top of Windows Server failover clusters. To create a SQL Server failover cluster, you need to first create the underlying Windows Server failover cluster.

A SQL Server failover cluster, also known as a failover cluster instance, consists of the following:

  • One or more Windows Server failover cluster nodes

  • A cluster resource group dedicated for the SQL Server failover cluster which contains the following:

    • Network name to access the SQL Server failover cluster

    • IP addresses

    • Shared disks used for the SQL Server database and log storage

  • Resource DLLs that control the SQL Server failover behavior

  • Check-pointed registry keys that are automatically kept in sync across the failover cluster nodes

A SQL Server failover cluster appears on the network as a single SQL Server instance on a single computer. Internally, only one of the nodes owns the cluster resource group at a time, serving all the client requests for that failover cluster instance. In case of a failure (hardware failures, operating system failures, application or service failures), or a planned upgrade, the group ownership is moved to another node in the failover cluster. This process is called failover. By leveraging the Windows Server failover cluster functionality, SQL Server failover cluster provides high availability through redundancy at the instance level.

SQL Server 2008 failover cluster setup uses a new architecture, enabling functionality that was not possible with the previous versions. The following are the key differences from the previous versions of SQL Server with respect to failover cluster functionality:

  • There is no remote execution on the cluster nodes.

    • To install, upgrade or maintain a SQL Server failover cluster on multiple nodes, you must run SQL Server Setup separately on each node of the failover cluster.

    • To add a node to an existing SQL Server failover cluster, you must run SQL Server Setup on the node that is to be added and choose the Add Node functionality. Do not run Setup on the node that owns the cluster to add another node.

    Note

    Add Node increases high availability for the existing failover cluster and does not cause any downtime.

    • There is no uninstall SQL Server failover cluster option. To uninstall a SQL Server failover cluster, run Setup with the Remove Node functionality on each of the nodes of the failover cluster to be removed.

    • To remove a node from a SQL Server failover cluster, you must run SQL Server Setup on the node that is to be removed and chose the Remove Node functionality. Do not run Setup on the owning node to remove another node.

    • If Remove Node is run on the node that owns the cluster, and there are other nodes in the failover cluster, it causes a failover to another cluster node before the node is removed.

    • If Remove Node is run on the node that owns the cluster and there is no other node in the failover cluster, it removes the entire SQL Server failover cluster instance.

  • There are two installation options:

    • Integrated failover cluster install with Add Node

    • Advanced/Enterprise installation

  • Rolling upgrade and patch support with minimal downtime.

  • Increased setup reliability.

  • Alignment with Windows Server 2008 failover cluster features:

    • Heterogeneous hardware and ISCSI support without a need for certified hardware.

    • The Windows Server 2008 cluster validation tool is used to validate the Windows cluster and block SQL Server Setup when problems are detected.

    • Service SIDs remove the requirement for domain groups on Windows Server 2008.

    • IPV6 and DHCP support.

    • Up to 16-node failover clusters.

    Note

    SQL Server limits you to two nodes for SQL Server Standard.

  • Not aligned with OR dependencies.

SQL Server Failover Cluster Installation options

Option 1: Integrated installation with Add Node

SQL Server integrated failover cluster installation consists of two steps:

  1. Create and configure a single-node SQL Server failover cluster instance. At the completion of a successful configuration of the node, you have a fully functional failover cluster instance. At this time it does not have high-availability because there is only one node in the failover cluster.

  2. On each node to be added to the SQL Server failover cluster, run Setup with Add Node functionality to add that node.

Option2: Advanced/Enterprise installation

SQL Server Advanced/Enterprise failover cluster installation consists of two steps:

  1. On each node that will be part of the SQL Server failover cluster, run Setup with Prepare Failover Cluster functionality. This step prepares the nodes ready to be clustered, but there is no operational SQL Server instance at the end of this step.

  2. After the nodes are prepared for clustering, run Setup on the node that owns the shared disk with the Complete Failover Cluster functionality. This step configures and completes the failover cluster instance. At the end of this step, you will have an operational SQL Server failover cluster instance.

    Note

    Either installation option allows for multi-node SQL Server failover cluster installation. Add Node can be used to add additional nodes for either option after a SQL Server failover cluster has been created.

    Important

    The operating system drive letter for SQL Server install locations must match on all the nodes added to the SQL Server failover cluster.

When to Use Failover Clustering

Use failover clustering to:

Installing Failover Clustering

To use failover clustering, you must follow specific installation steps.

To install, configure, and maintain a SQL Server failover cluster, use SQL Server Setup. Use SQL Server Setup in a failover cluster to do the following:

  • Install SQL Server to create a failover cluster.

    Before installing failover clustering, you must ensure that your system meets minimum requirements, and configure the Microsoft Cluster Service (MSCS). For more information on specific requirements for a failover cluster, see Before Installing Failover Clustering.

    All nodes in a failover cluster must be of the same platform, either 32-bit or 64-bit, and must run the same operating system edition and version. Also, 64-bit SQL Server editions must be installed on 64-bit hardware running the 64-bit versions of Windows operating systems. There is no WOW64 support for failover clustering in this release.

  • Add or remove nodes from a failover cluster configuration without affecting the other cluster nodes. For more information, see How to: Add or Remove Nodes in a SQL Server Failover Cluster (Setup).

  • Specify multiple IP addresses for each failover cluster instance. You can specify multiple IP addresses for each server, allowing you to use all available network IP subnets. SQL Server limits you to one IP address per network.

Failover Clustering Support

In SQL Server, the number of nodes supported for failover clustering depends on the operating system and the edition of SQL Server. For more information about a list of tools, features, and services supported with SQL Server failover clustering, see Features Supported by the Editions of SQL Server 2008 R2.