Always On Failover Cluster Instances - AWS Prescriptive Guidance

Always On Failover Cluster Instances

SQL Server Always On Failover Cluster Instances (FCIs) use Windows Server Failover Clustering (WSFC) to provide high availability at the server instance level. An FCI is a single instance of SQL Server that is installed across WSFC nodes to provide high availability for the entire installation of SQL Server. If the underlying node experiences hardware, operating system, application, or service failures, everything inside the SQL Server instance is moved to another WSFC node. This includes system databases, SQL Server logins, SQL Server Agent jobs, and certificates.

An FCI is generally preferable over an Always on availability group when:

  • You’re using SQL Server Standard edition instead of Enterprise edition.

  • You have a large number of small databases per instance.

  • You’re constantly modifying instance-level objects such as SQL Server Agent jobs, logins, and so on.

  • You want to optimize costs (both Amazon EC2 infrastructure costs and SQL Server license costs) for running the SQL Server instances. When you use an FCI, you remove the dependency of the SQL Server host EC2 instance on Amazon EBS throughput. As a result, you can right-size (that is, without the need to over-provision) the SQL Server EC2 instance and reduce your Amazon EC2 and SQL Server license costs, without affecting I/O performance.

  • You want to optimize database performance on the SQL Server instances. Using an FCI provides about 30 percent better performance for typical workloads, because data replication is performed at the block level instead of the database level.

FCIs require some form of shared storage—disks on a storage area network (SAN), file shares on Server Message Blocks (SMBs), or locally attached storage with Storage Spaces Direct (S2D), SIOS Datakeeper, or Amazon FSx—to provide resiliency and high availability.

To deploy an FCI on AWS, you can use Amazon FSx for Windows File Server, which provides fully managed shared file storage. This service automatically replicates the storage synchronously across two Availability Zones to provide high availability. Using Amazon FSx for Windows File Server for file storage helps simplify and optimize your SQL Server high availability deployments on Amazon EC2. For more information, see the next section.