solving sql server problems for millions of dbas and developers since 2006



SQL Server DBA Tips SQL Server Developer Tips SQL Server Business Intelligence Tips SQL Server Career Tips SQL Server Tip Categories SQL Server Tutorials SQL Server Webcasts SQL Server Whitepapers SQL Server Tools SQL Server Questions and Answers MSSQLTips Authors About MSSQLTips SQL Server User Groups MSSLQTips Giveaways MSSQLTips Advertising Options

MSSQLTips Facebook Page MSSQLTips LinkedIn Page MSSQLTips RSS Feed MSSQLTips Twitter Page MSSQLTips Google+ Page

SQL Product Highlight

Idera - SQL compliance manager

SQL compliance manager is a comprehensive auditing solution that tells you who did what, when and how on your SQL Servers. SQL compliance manager helps you ensure compliance with regulatory and data security requirements.

Learn more!








Install SQL Server 2008 on a Windows Server 2008 Cluster Part 1

By: | Read Comments (15) | Print

Edwin works as a SQL Server DBA for The Pythian Group in Ottawa and is a SQL Server MVP.

Related Tips: 1 | 2 | 3 | 4 | More

Problem

In a previous tip on SQL Server 2008 Installation Process, we have seen how different SQL Server 2008 installation is from its previous versions. Now, we have another challenge to face: installing SQL Server 2008 on a Windows Server 2008 Cluster. Windows Server 2008 has a lot of differences from its previous versions and one of them is the clustering feature. How do I go about building a clustered SQL Server 2008 running on Windows Server 2008?

Solution

There have been a lot of changes regarding clustering between Windows Server 2003 and Windows Server 2008. It took quite a lot of effort for us to build a cluster in Windows Server 2003 - from making sure that the server hardware for all nodes are cluster-compatible to creating resource groups. Microsoft has redefined clustering with Windows Server 2008, making it simpler and easier to implement. Now that both SQL Server 2008 and Windows Server 2008 are out in the market for quite some time, it would be a must to prepare ourselves to be able to setup and deploy a clustered environment running both. Installing SQL Server on a stand-alone server or member server in the domain is pretty straight-forward. Dealing with clustering is a totally different story. The goal of this series of tips is to be able to help DBAs who may be charged with installing SQL Server on a Windows Server 2008 cluster.

Prepare the cluster nodes

I will be working on a 2-node cluster throughout the series and you can extend it by adding nodes later on. You can do these steps on a physical hardware or a virtual environment. I opted to do this on a virtual environment running VMWare. To start with, download and install a copy of the evaluation version of Windows Server 2008 Enterprise Edition. This is pretty straight-forward and does not even require any product key or activation. Evaluation period runs for 60 days and can be extended up to 240 days so you have more than enough time to play around with it. Just make sure that you select at least the Enterprise Edition during the installation process and have at least 12GB of disk space for your local disks. This is to make sure you have enough space for both Windows Server 2008 and the binaries for SQL Server 2008. A key thing to note here is that you should already have a domain on which to join these servers and that both have at least 2 network cards - one for the public network and the other for the heartbeat. Although you can run a cluster with a single network card, it isn't recommend at all. I'll lay out the details of the network configuration as we go along. After the installation, my recommendation is to immediately install .NET Framework 3.5 with Service Pack 1 and Windows Installer 4.5 (the one for Windows Server 2008 x86 is named Windows6.0-KB942288-v2-x86.msu). These two are prerequisites for SQL Server 2008 and would speed up the installation process later on.

Carve out your shared disks

We had a lot of challenges in Windows Server 2003 when it comes to shared disks that we will use for our clusters. For one, the 2TB limit which has a lot to do with the master boot record (MBR) has been overcome by having the GUID Partition Table (GPT) support in Windows Server 2008. This allows you to have 16 Exabytes for a partition. Another has been the use of directly attached SCSI storage. This is no longer supported for Failover Clustering in Windows Server 2008. The only supported ones will be Serially Attached Storage (SAS), Fiber Channel and iSCSI. For this example, we will be using an iSCSI storage with the help of an iSCSI Software Initiator to connect to a software-based target. I am using StarWind's iSCSI SAN to emulate a disk image that my cluster will use as shared disks. In preparation for running SQL Server 2008 on this cluster, I recommend creating at least 4 disks - one for the quorum disk, one for MSDTC, one for the SQL Server system databases and one for the user databases. Your quorum and MSDTC disks can be as small as 1GB, although Microsoft TechNet specifies a 512MB minimum for the quorum disk. If you decide to use iSCSI as your shared storage in a production environment, a dedicated network should be used so as to isolate it from all other network traffic. This also means having a dedicated network card on your cluster nodes to access the iSCSI storage.

Present your shared disks to the cluster nodes

Windows Server 2008 comes with iSCSI Initiator software that enables connection of a Windows host to an external iSCSI storage array using network adapters. This differs from previous versions of Microsoft Windows where you need to download and install this software prior to connecting to an iSCSI storage. You can launch the tool from Administrative Tools and select iSCSI Initiator.

To connect to the iSCSI target:

  1. In the iSCSI Initiator Properties page, click on the Discoverytab.

  2. Under the Target Portals section, click on the Add Portalbutton.
  3. In the Add Target Portal dialog, enter the DNS name or IP address of your iSCSI Target and click OK. If you are hosting the target on another Windows host as an image file, make sure that you have your Windows Firewall configured to enable inbound traffic to port 3260. Otherwise, this should be okay.

     

  4. Back in the iSCSI Initiator Properties page, click on the Targetstab. You should see a list of the iSCSI Targets that we have defined earlier

     

  5. Select one of the targets and click on the Log onbutton.
  6. In the Log On to Target dialog, select the Automatically restore this connection when the computer starts checkbox. Click OK.

  7. Once you are done, you should see the status of the target change to Connected. Repeat this process for all the target disks we initially created on both of the servers that will become nodes of your cluster.

Once the targets have been defined using the iSCSI Initiator tool, you can now bring the disks online, initialize them, and create new volumes using the Server Manager console. I won’t go into much detail on this process as it is similar to how we used to do it in Windows Server 2003, except for the new management console. After the disks have been initialized and volumes created, you can try logging in to the other server and verify that you can see the disks there as well. You can rescan the disks if they haven’t yet appeared.

Adding Windows Server 2008 Application Server Role

Since we will be installing SQL Server 2008 later on, we will have to add the Application Server role on both of the nodes. A server role is a program that allows Windows Server 2008 to perform a specific function for multiple clients within a network. To add the Application Server role,

  1. Open the Server Manager console and select Roles.
  2. Click the Add Roles link.  This will run the Add Roles Wizard

  3. In the Select Server Roles dialog box, select the Application Server checkbox. This will prompt you to add features required for Application Server role. Click Next.

  4. In the Application Server dialog box, click Next.

  5. In the Select Role Services dialog box, select Incoming Remote Transactions and Outgoing Remote Transactions checkboxes. These options will be used by MSDTC. Click Next

  6. In the Confirm Installation Selections dialog box, click Install. This will go thru the process of installing the Application Server role

  7. In the Installation Results dialog box, click Close. This completes the installation of the Application Server role on the first node. You will have to repeat this process for the other server

We have now gone thru the process of creating the cluster at this point. In the next tip in this series, we will go thru the process of installing the Failover Cluster feature, validating the nodes that will become a part of the cluster and creating the cluster itself. And that is just on the Windows side. Once we manage to create a working Windows Server 2008 cluster, that's the only time we can proceed to install SQL Server 2008.

Next Steps

  • Download and install an Evaluation copy of Windows Server 2008for this tip
  • Start working on building your test environment in preparation for building a SQL Server 2008 cluster on Windows Server 2008
  • Read Part2, Part3 and Part4 


Related Tips: 1 | 2 | 3 | 4 | More | Become a paid author


Last Update: 2/13/2009

Share: Share 






Comments and Feedback:

Monday, February 16, 2009 - 10:54:20 PM - myangzki Read The Tip
Hi Edwin, This is a great article, very comprehensive and detailed. This article helped me with my windows clustering task. Even a non-System Admin like me can follow the steps clearly. I hope you continue to share your knowledge through writing up articles like this. Thank you so much and keep up the great work!

Tuesday, February 17, 2009 - 1:17:02 AM - bass_player Read The Tip

Thanks for the feedback.  In part 2 of this series, I will be completing the configuration of the Windows Server 2008 cluster in preparation for installing SQL Server 2008


Tuesday, February 17, 2009 - 1:20:36 AM - myangzki Read The Tip
I will be definitely waiting for this article because I will also be needing it for my SQL Server 2008 clustering task. Thanks again!

Monday, March 16, 2009 - 8:45:00 AM - BobbyW Read The Tip

Hi Edwin,

I'd be interested to know what your VMWare environment is and also what OS you used to install the iSCSI target machine.

 I've been struggling to get a test environment up and running and would be grateful for any pointers.

 Bob


Monday, March 23, 2009 - 4:16:39 PM - bass_player Read The Tip

Hi Bob,

You'd be surprised if I tell you that I am running everything using Windows XP as I dont have very good hardware to play around with.  I am running VMWare Workstation 6.5 while the iSCSI target machine is also my Windows XP laptop with a 500GB external hard drive running the StarWind service. Make sure you open the appropriate port numbers on your firewall for the iSCSI target machine.

You can check if I'm online on IM at my blog if you need further assistance


Tuesday, April 07, 2009 - 7:38:13 AM - Bryan Read The Tip

What is the purpose for installing the Application Server role on the nodes?  Does this help with configuring MSDTC to function properly on a failover cluster or is there another purpose/benefit to installing this role?


Wednesday, July 29, 2009 - 12:55:19 AM - MOttaway Read The Tip

I would also like to know the purpose of the application server role. You say in the article 'Since we will be installing SQL Server 2008 later on, we will have to add the Application Server role on both of the nodes' that makes it sound as if it's required.

Yet this technet article http://technet.microsoft.com/en-us/library/cc754024(WS.10).aspx states that 'Not every server application benefits from the installation of the Application Server role. For example, the Application Server role is not necessary to support Microsoft Exchange Server or Microsoft SQL Server on Windows Server 2008'

 Could you please clarify. Is the Applicartion Server Role required or not?


Saturday, October 17, 2009 - 4:05:54 PM - bass_player Read The Tip

Technically,the Application Role is really not necessary to run SQL Server or other Microsoft servers. It's more for formalization. Besides, installing the Application Role will install components that are needed by applications, such as .NET Framework. Since I opted to install the .NET Framework separately, it's no longer necessary


Wednesday, November 10, 2010 - 3:38:42 AM - Donald Fernandes Read The Tip

Is this article valid SQL Server 2008 R2 on a Windows Server 2008 R2.

Thanks
Donald

 


Friday, November 19, 2010 - 11:55:27 PM - bass_player Read The Tip

Hi Donald,

Yes it is valid for SQL Server 2008 R2 on a Windows Server 2008 R2. A couple of things to consider is that the .NET Framework 3.5.1 is already included with Windows Server 2008 R2 as a feature so you only need to enable that instead of downloading the installation file from the Microsoft Download Center. Plus, no need to slipstream the SQL Server 2008 R2 media for Windows Server 2008 R2 as described in this tip http://www.mssqltips.com/tip.asp?tip=1902 


Monday, December 13, 2010 - 6:52:32 PM - GregB Read The Tip

Very useful post. Steps included were very helpful, and overall it was quite comprehensive.

Thanks for your efforts!


Wednesday, September 07, 2011 - 5:19:47 PM - BuntyBoy Read The Tip

Very helpful article. Thanks for sharing.

===========================================
Better try and fail, instead of not trying at all...

Database Best Practices


Wednesday, April 18, 2012 - 10:41:59 AM - Michael Read The Tip

Great article, thanks for sharing!

 


Tuesday, May 22, 2012 - 3:29:06 AM - VAHID Read The Tip

HI

I have problem with Add Target Portal  when i enter my DNS ip address in filed and then clik ok  i accure error (Connection failed)

Thank you


Tuesday, May 22, 2012 - 3:31:44 AM - VAHID Read The Tip

What is the purpose of seting iscsi for sql server clustring???



Post a Comment or Question

Keep it clean and stay on the subject or we may delete your comment.
Your email address is not published. Required fields are marked with an asterisk (*)

*Name   *Email   Notify for updates
Comments
*Enter Code refresh code


 
Sponsor Information
Try the award winning SQL diagnostic manager as a free 14-day trial!

SQL Monitor – For database professionals who need results on Day One. Try it online.

Need SQL Server help and not sure where to turn? Reach out to the Edgewood consultants for a Health Check.

Get SQL Server Tips Straight from Kevin Kline.

Solving SQL Server problems for millions of DBAs and Devs since 2006. Join now.

Learn SQL Server 2012, Performance Tuning, Development, Administration, Replication and more - free webcasts


Copyright (c) 2006-2012 Edgewood Solutions, LLC All rights reserved
privacy | disclaimer | copyright | advertise | about
authors | contribute | feedback | giveaways | user groups
Some names and products listed are the registered trademarks of their respective owners.


Edgewood Solutions LLC | MSSharePointTips.com | MSSQLTips.com