One of the more exciting features in SQL Server code-named “Denali” (which is the current official name for the next major version of SQL Server) is called SQL Server AlwaysOn, which Microsoft describes like this:
The new SQL Server AlwaysOn will provide a set of capabilities to help businesses maximize uptime of their mission critical applications, simplify high availability deployments and provide better returns on hardware investments. AlwaysOn supports multi-site clustering and the new availability group option will help improve availability of databases by supporting multiple secondaries, increase utilization using active secondary and simplify HA management. In addition, Windows Server Core support will help significantly reduce planned downtime related to OS patching due to fewer patch requirements and reboots.
One key thing to remember is that SQL Server AlwaysOn is built on top of some of the technology used in Windows Failover Clustering. This may comfort some people, and it may scare other people. It does mean that you will have to have Windows Server 2008 (or greater) Enterprise Edition for your server operating system. One thing that it does NOT require is shared storage, i.e. a big, expensive SAN (and the cranky SAN Administrator) that goes with it.
Instead, you can create a Windows Failover Cluster on a number of standalone machines, each with their own internal or direct attached storage. You can still use a SAN for their storage, but I would want to have at least some of these machines on separate SANs, to avoid a single point of failure.
In order to try out the AlwaysOn features that are in SQL Server “Denali” CTP1, you will need at least two machines (which can be old workstations or even virtual machines) that have Windows Server 2008 (or 2008 R2) Enterprise Edition. They should have static IP addresses, and should be part of a Windows Domain.
The first step is to go to Server Manager, and go to the Add Features Wizard, to add the Failover Clustering feature to each machine that will be a part of the Windows Failover Cluster. as you see in Figure 1
Figure 1: Adding Failover Clustering feature in Windows Server 2008 R2
After you have done that, then you need to open up the Failover Cluster Manager, and create a new Cluster, using the Create Cluster Wizard (see Figures 2 and 3).
Figure 2: Failover Cluster Manager in Windows Server 2008 R2
Figure 3: Create Cluster Wizard in Windows Server 2008 R2
You need to go through all the screens in the Wizard, some of which are shown in Figures 4 through 7. This is very easy; even a caveman could do it!
Figure 4: Select Servers screen in Create Cluster Wizard
Figure 5: Creating Access Point for Cluster Administration
Figure 6: Final Confirmation Screen
Figure 7: Create Cluster Wizard Summary
After you have done this, you will have a Windows Failover Cluster (even though you don’t have any shared storage) that you can use for SQL Server Denali AlwaysOn.
In order to use SQL Server Denali AlwaysOn technology, you have to choose a standard, standalone installation when you install SQL Server Denali CTP1. You do not want to pick a clustered installation for SQL Server Denali (like you would for a legacy failover cluster). You can install SQL Server before or after you create the Windows Failover Cluster.
After you have installed SQL Server Denali CTP1 on at least two machines that are in your Windows Failover Cluster, you then go into SQL Server Management Studio (SSMS) to create an Availability Group. I will show you how to do this in a future post.
Microsoft’s Gopal Ashok talks about SQL Server Denali AlwaysOn in the SQL Server AlwaysOn Team blog here.