Microsoft SQL Server is the backbone of many businesses. An outage can result in an inability to operate and a loss of revenue. Whether you host SQL Server instances in an on-premises data center, in the cloud, or with a hybrid approach that leverages both, it’s critical to make sure that it’s highly available at all times.

At Pure Storage®, maintaining the integrity and availability of your data is paramount. “SQL Server Resilience with Hybrid Cloud,” a new Pure Validated Design (PVD) for SQL Server can help you maintain high availability and business resilience with both on-premises and public-cloud components. A PVD is a solution reference architecture that has been designed, proven, and tested by Pure solutions architects. When deploying and configuring a PVD, you can rest assured that you’re leveraging a well-thought-out and robust architecture.

We took a “belt-and-suspenders” approach in developing this PVD to make it as impactful as possible. Several components provide the highest levels of data protection, availability, and flexibility. We’ve meticulously tested and proven all the pieces to work together seamlessly and intuitively. That said, you can choose to deploy only a subset of them to protect your SQL Server environment. For example, if you’re using only on-premises resources today, you might deploy just the on-premises solution components from the PVD. And if you decide to expand to the cloud in the future, you’ll have a guide to follow to simplify integration. 

Design Components

SQL Server Resilience Design Components

The compute portion of the architecture is built on a VMware vSphere cluster stretched across two data centers. A Microsoft Windows Server Failover Cluster is built using VMs in this cluster, to create one or more SQL Server Failover Cluster Instances (SQLFCI). YOu can quickly migrate SQL Server roles to different VMs in the failover cluster.

Two FlashArray//X90 systems are configured in an ActiveCluster™. This approach synchronously replicates data between the two arrays. The hosts can connect to the arrays in two different ways:

  • In a uniform configuration, hosts are connected simultaneously to both arrays. Multipathing software chooses paths to the local array preferentially over paths to the remote array. If the local paths become unavailable, the hosts simply use the paths to the other array without missing a beat. 
  • In a non-uniform configuration, hosts connect only to the arrays local to them. The hosts would need to fail cluster roles over to a remote counterpart if the paths to the local array become unavailable. Pure1® hosts the ActiveCluster mediator and provides an independent third failure domain, so there’s no need to provision one.

A third array, FlashArray//C40 in this case, is configured for asynchronous replication from the arrays that participate in the ActiveCluster. In the unlikely event that both //X90 devices become unavailable, the//C40 is on premises and ready to serve data. Optimized for capacity, it’s perfect for hosting snapshots, backups, and archives—and for providing cost-optimized disaster-recovery protection. The //C40 runs the same Purity operating environment as the //X90 and uses quad-level cell (QLC) NAND for incredible performance and value.

Pure provides integrations directly into native management tools used by application and infrastructure administrators. It simplifies managing the infrastructure deployed as part of this design as much as possible. This design also incorporates Pure plug-ins in tools such as Windows Admin Center, SQL Server Management Studio (SSMS), and the vSphere client. These integrations allow for seamless deployment of storage, monitoring of storage resources, and backup and recovery of SQL databases.

Going beyond the on-premises world, this PVD extends database management and storage services into the Microsoft Azure Cloud for further flexibility and availability. The FlashArray devices can leverage Purity CloudSnap™ for Azure, which offloads snapshots of Pure volumes to Azure Blob Storage. These offloaded snapshots can be restored back to on-premises FlashArray devices and Pure Cloud Block Store™ on Microsoft Azure.

Built on cloud-native resources, Pure Cloud Block Store is a fundamental element of the cloud aspect of this PVD. It’s currently available for both Amazon Web Services and Microsoft Azure. The Azure version is generally available and covered in this validated design.

Because it runs on the same Purity operating environment, Pure Cloud Block Store can interact with other arrays either on premises or in the cloud just as a physical FlashArray. In this Pure Validated Design, the on-premises arrays replicate data to the Pure Cloud Block Store arrays asynchronously. Here, you can attach them to cloud-based SQL instances (either stand-alone or SQLFCI) for dev/test or business-continuity purposes.

Design Resources

The PVD includes step-by-step deployment instructions. You can also reference a companion GitHub repository dedicated to automating the PVD’s deployment procedures. It’s intended to be a dynamic repository and our team will keep it up-to-date as we make improvements and additions.

Pure Professional Services can help implement the PVD for you. We also offer workshops to help you achieve your SQL and cloud strategy ROI faster. With our custom SQL services, you can get production-ready even faster.

Additional Resources