Configuring and Deploying Windows SQL Server on GCP
Google Compute Engine lets you use SQL Server images to start instances that have Windows Server with SQL Server pre-installed. In your own environment, because of per-minute billing, you would pay for both Windows Server and SQL Server licenses only when you use them.
Always On Availability Groups (AGs) makes sense in the cloud for a few reasons:
- Automatic failover of multiple databases. This is a common high-availability requirement, and on-premises\DBAs usually solve this with failover cluster instances (FCIs). Unfortunately, that requires shared storage, which isn't usually available in today's infrastructure-as-a-service (IaaS) cloud. There are some workarounds involving third-party software or UNC paths, but neither of those are great options in IaaS. AGs can pull this off without shared storage.
- Automatic repair of corrupt data pages. Each replica has its own copy of the database's data pages. Only logged transactions are sent from one replica to another, not data pages. When a replica encounters a corrupt data page, it can request a clean copy of the page from another replica, and heal itself live. This doesn't provide protection from every kind of corruption, but it can be a real lifesaver in many situations.
- Potentially lower downtime for patching. For minimal downtime, patch the secondary replica, make sure it patched successfully, then take a brief outage to fail over from the primary replica to the newly patched secondary. After that, you can patch the former primary instance. If something goes wrong when patching either replica, simply build a new one to replace it and join it into the AG.
- Possibly easier scalability with lower downtime. When you want to switch to a bigger instance type, you can provision a new one, add it into the AG, fail over to it, and then remove the previous instance. You can scale up and down to handle load with this approach, although this isn't commonly used on a scripted basis to handle daily peaks and valleys. It's more of a seasonal approach.
In this lab you will configure SQL Server in a highly available configuration in Google Compute Engine. This lab provisions a running environment for you (using Deployment Manager which allows you to jump right in to the interesting learning. Launching Windows Server systems in the background can take ~20 minutes to fully configure. Watch the green progress bar at the top of the page to see the progress.
What you'll learn
- How to configure the Failover Cluster Manager
- How to use Powershell to configure and create a failover cluster
- How to enable AlwaysOn High Availability mode
- This is an Expert level lab, and assumes you have taken the earlier labs in the Windows on GCP quest
- A working RDP Client and experience using it (no instructions on RDP are given)
- Comfort at the command line
- Familiarity with Powershell
- If you are using a Chromebook, two finger tap is how to right click.
Join Qwiklabs to read the rest of this lab...and more!
- Get temporary access to the Google Cloud Console.
- Over 200 labs from beginner to advanced levels.
- Bite-sized so you can learn at your own pace.