FIGURE 48-15Verifying the SQL Server 2008 failover cluster features to be installed Adding a node to an existing SQL Server 2008 failover cluster Before adding a cluster node to an exist
Trang 1page, then the Analysis Services Configuration page will be displayed to configure the Analysis Services
FIGURE 48-13
Entering the SQL Server service accounts on the Server Configuration page
21 On the Error and Usage Reporting page, select the information that you want to automatically
send to Microsoft to improve the SQL Server features and services These settings are optional
22 The Cluster Installation Rules page runs a set of rules to determine whether the SQL Server
2008 failover cluster installation will be blocked Verify that all the rules pass before proceed-ing to the next step
23 The Ready to Install page, shown in Figure 48-15, displays the features that were selected so
far in the setup wizard Click Install to begin the installation
On the Ready to Install page, notice that the path to the configuration file is specified.
SQL Server 2008 setup writes out all the appropriate parameters in the configuration file for the actions that were run, with the exception of sensitive information like passwords If you want to
stop the installation at this time, click Cancel Later, when you are ready, you can run the installation
Trang 2through the command prompt and supply the ConfigurationFile ini using the ConfigurationFile
parameter Here is an example of running setup exe using the configuration file:
Setup.exe /ConfigurationFile=MyConfigurationFile.ini
FIGURE 48-14
Specifying shared disk drives for SQL Server Database engine
24 During the installation, the Installation Progress page shows the setup progress.
25 On successful completion, the Complete page, shown in Figure 48-16, displays the setup
status and a link to the summary log file Click Close Reboot the cluster node if the setup
wizard instructs you to restart the server
After the installation of a single-node SQL Server 2008 failover cluster, SQL Server 2008 will be fully
functional and ready to accept client connections All the clustered resources will be created for the SQL
Server 2008 instance, except that currently only one node is the possible owner, and the clustered SQL
Server 2008 instance cannot failover to another node in the cluster The next step is to add other cluster
nodes to the SQL Server 2008 failover clustering instance to provide high availability
Trang 3FIGURE 48-15
Verifying the SQL Server 2008 failover cluster features to be installed
Adding a node to an existing SQL Server 2008 failover cluster
Before adding a cluster node to an existing SQL Server 2008 failover cluster, install all the prerequisites
for SQL Server 2008 failover clustering on the node that needs to be added Once the prerequisites are
installed and the node is rebooted, follow these steps to add the node to the SQL Server 2008 failover
cluster configuration:
1 Launch the SQL Server Installation Center (by double-clickingsetup.exeon the root of the SQL Server 2008 installation media) on the node that needs to be added
2 On the left-hand side of the SQL Server Installation Center, click Installation.
3 Click ‘‘Add node to a SQL Server failover cluster.’’
4 Next, the setup wizard runs setup support rules to identify problems that might occur when
setup support files are installed Verify that all the checks pass before proceeding to the next step
Trang 4FIGURE 48-16
Successfully completing the single-node SQL Server 2008 failover cluster installation
5 On the Product Key page, make the same selection as you did while creating the single-node
SQL Server 2008 failover cluster For example, if you entered a PID key while creating the
single-node SQL Server 2008 failover cluster, then enter the same PID key now
When you add a node for a SQL Server 2008 failover cluster from installation media that
has a custom Defaultsetup ini file that includes the product key, setup will give you
the error message ‘‘The current SKU is invalid’’ even though everything is valid This issue is fixed in
Cumulative Update 1 for SQL Server 2008 Again, if you install Cumulative Update 1 for SQL Server
2008 along with the prerequisites or you are installing a slipstreamed version of SQL Server 2008 and
SP1, then you will not encounter this issue.
6 On the License Terms page, read the licensing terms and check the box to accept them.
7 Use the Cluster Node Configuration page to select the SQL Server 2008 failover clustering
instance that you want to add to the current node
Trang 58 On the Service Accounts page, the SQL services are already filled with the ones that were
entered while creating the single-node SQL Server 2008 failover cluster On this page, enter the passwords for the SQL Server services
9 On the Error and Usage Reporting page, optionally select the information that you want to
automatically send to Microsoft to improve the SQL Server features and services
10 The Add Node Rules page runs a set of rules to determine whether the SQL Server failover
cluster installation will be blocked on the new node Verify that all the rules pass before proceeding to the next step
11 On the Ready to Add Node page, click Install to begin the installation Similar to creating
the single-node SQL Server 2008 failover cluster, the add node operation also creates a con-figuration file The path to the concon-figuration file is displayed in this page SQL Server 2008 setup writes out all the appropriate parameters in the configuration file for the actions that were run, with the exception of sensitive information like passwords If you want to stop the installation at this time, click Cancel Later, when you are ready, you can run the installa-tion through the command prompt and supply theConfigurationFile.iniusing the
ConfigurationFileparameter
12 The Add Node Progress page shows the progress of the setup.
13 On successful completion, the Complete page displays the setup status and a link to the
summary log file Click Close Reboot the cluster node if the setup wizard instructs you to restart the server
At first glance, the new SQL Server 2008 failover cluster setup process may seem like more work for
the DBA Unlike with SQL Server 2005 failover clusters, SQL Server 2008 failover cluster setup is run
locally on each node and no remote setup is done Say we were installing SQL Server 2005 failover
clus-ter on a four-node clusclus-ter To perform this setup, the DBA just needs to run the setup on the node that
owns the shared disks and the setup will automatically install on all four cluster nodes If the installation
succeeds on three nodes but fails on the fourth node, then the entire installation is rolled back
Trou-bleshooting such a failed installation could take hours and sometimes days
With the new SQL Server 2008 failover cluster setup, installation is performed per node, which is
much faster, more reliable, and easier to troubleshoot if the setup fails More than 50 percent of failed
SQL Server 2005 failover cluster installations were related to remote-node operations Also, once the
first node is installed successfully, SQL Server 2008 failover cluster is running and ready to respond to
clients Adding additional nodes to the SQL Server 2008 failover cluster does not incur any downtime,
as the add node operation is performed on the node that is being added to the failover cluster and not
on the node where SQL Server 2008 is running Adding additional nodes can be done very easily using
command-line setup as explained in the section ‘‘Installing SQL Server 2008 failover cluster using a
command prompt’’ later in this chapter
Post-installation tasks
After successfully installing a SQL Server 2008 failover cluster, perform the following post-installation
tasks:
1 Review all the SQL Server resources — Verify that all clustered SQL Server resources and
dependencies are created properly and are online Apart from the shared disk resources that exist before the installation, SQL Server 2008 setup creates the following resources in the SQL Server 2008 group:
Trang 6■ SQL IP Address 1 — Has no dependencies
■ SQL Network Name — Dependent on the SQL IP Address 1 resource
■ SQL Server — Dependent on the shared drive resources that were selected during setup
and SQL Server Network Name resources
■ SQL Server Agent — Dependent on SQL Server resources
■ SQL Server Filestream share (if Filestream was enabled during installation) — Dependent
on disk, SQL Network Name, and SQL Server resources
In SQL Server 2008, there is no separate full-text resource, as it is integrated with the SQL
Server Database Engine.
2 Verify IP and name resolution — Ping the SQL Server and/or Analysis Services IP and network
name from all cluster nodes as well as a client machine to test IP address and name resolution,
respectively
3 Verify SQL Server failover — Move SQL Server and/or Analysis Services groups from one
cluster node to another Verify that all the resources failover and become online on all cluster
nodes without affecting any other groups, and that users/applications are able to connect to
SQL Server
To connect to a SQL Server 2008 failover cluster instance, users/applications need to use
the SQL Server network name and/or SQL Server IP address that were entered during the
setup For a named instance, use the SQL Server network name and/or SQL Server IP address followed
by a backslash ( \) and the instance name.
4 Set anti-virus exclusions — Verify that the anti-virus software being used is cluster-aware and
make sure that the following are excluded:
■ All SQL Server/Analysis Services database and log files (mdf, ldf, ndf)
■ SQL Server/Analysis Services backup directory
■ SQL Server full-text directory
■ Quorum drive
■ %Systemroot%\Clusterdirectory on all cluster nodes
■ \clusterserviceaccount\Local Settings\Tempdirectory on all cluster nodes
■ MSDTC drive (if using MSDTC)
Refer to the following Microsoft Knowledge Base articles for configuring anti-virus
exclusions:
Antivirus Software May Cause Problems with Cluster Services at http://support.microsoft
.com/kb/250355 ; and Consideration for a Virus Scanner on a Computer That Is Running SQL Server at
http://support.microsoft.com/kb/309422
5 Configure new SQL Server installation — After installing a new SQL Server, check the SQL
Server configuration to review the features that are enabled and running For example,
dedicated administrator connection (DAC) is off by default on a SQL Server 2008 failover
clustering instance However, enabling DAC will allow you to connect to your SQL Server
Trang 7using DAC when it is unresponsive to regular connections The following Transact-SQL code can be used to enable the DAC listener to access a remote connection:
EXEC sp_configure ‘remote admin connections’, 1;
RECONFIGURE;
For more information about configuring SQL Server, refer to Chapter 39, ‘‘Configuring SQL Server.’’
The SQL Server Surface Area Configuration tool that was a part of SQL Server 2005 has been removed from SQL Server 2008 All the configurations that this tool enabled in SQL Server 2005 can now be done using SQL Server Configuration Manager and SQL Server Management
Studio.
To access the Surface Area Configuration features, connect to the SQL Server 2008 failover cluster
instance using SQL Server Management Studio Right-click the server name and select Facets to open the
View Facets page Select Surface Area Configuration from the Facet drop-down list.
6 Test your applications — Test all your applications thoroughly against the new SQL Server
2008 failover clustering instance Verify that there is retry login to reconnect to the database when the connection is broken during failover Roll out to production only after successful application testing
7 Apply the latest SQL Server service packs and security updates — Apply the latest
ser-vice packs and security updates to help reduce downtime due to known issues that are already fixed in the service packs and security updates For more information about apply-ing patches, refer to the section ‘‘Patchapply-ing a SQL Server 2008 failover cluster’’ later in this chapter
Uninstalling a SQL Server 2008 failover cluster
To uninstall a SQL Server 2008 failover cluster, use the Remove Node operation in SQL Server
Instal-lation Center and remove the nodes starting with the passive nodes (nodes on which SQL Server is not
currently running) The steps to remove a cluster node are similar to adding a node:
1 On the cluster node that needs to be removed, launch the SQL Server Installation Center by
double-clickingsetup.exeon the root of the SQL Server 2008 installation media Alterna-tively, open SQL Server Installation Center from Start➪ Programs ➪ Microsoft SQL Server
2008➪ Configuration Tools ➪ SQL Server Installation Center
2 On the left-hand side of the SQL Server Installation Center, click Installation.
3 Click Remove Node from a SQL Server failover cluster.
4 The setup wizard will run setup support rules to identify any problems that may block the
setup Verify that all the checks pass before proceeding to the next step
5 The Cluster Node Configuration page allows selecting the SQL Server 2008 failover clustering
instance that needs to be modified The cluster node that will be removed is displayed in the
‘‘Name of this node’’ field
The Remove Node operation needs to be performed on the node that is not running the SQL Server 2008 failover cluster instance Setup is blocked if the Remove Node operation
is run from the active node (the node that is running SQL Server) unless it is the last node that needs to
be removed.
Trang 86 On the Ready to Remove Node page, click Remove The Remove Node operation also creates
a configuration file, whose path is displayed in this page SQL Server 2008 setup writes out
all the appropriate parameters in the configuration file for the actions that were run, with the
exception of sensitive information like passwords If you want to stop the installation at this
time, click Cancel Later, when you are ready, you can run the installation through the
com-mand prompt and supply theConfigurationFile.iniusing theConfigurationFile
parameter
7 The Remove Node Progress page shows the progress of the setup.
8 On successful completion, the Complete page displays the setup status and a link to the
summary log file Click close Follow these steps on other cluster nodes that need to be
removed
Similar to the Add Node operation, the Remove Node operation does not incur any
downtime, as it is performed on the cluster node that is not running the SQL Server 2008
instance unless it is the last node that needs to be removed.
Installing a failover cluster using a command prompt
Using the SQL Server Installation Center to install and add/remove SQL Server 2008 may be the easiest
way to install a SQL Server 2008 failover cluster But the SQL Server Installation Center is not the most
efficient method for installing a multi-node cluster (e.g., a 4- or 8- or 16-node cluster) Microsoft
simpli-fies the process by offering command linesetup.exe
Here is the command-line syntax to install a single-node SQL Server 2008 failover cluster with the
Database Engine:
setup.exe /q /ACTION=InstallFailoverCluster /FEATURES=SQL
/INSTANCENAME="<Insert SQL Server Instance Name>"
[/INSTANCEIDSUFFIX="<Insert InstanceID Suffix>"]
/INSTANCEDIR="C:\Program Files\Microsoft SQL Server"
/INSTALLSHAREDDIR="C:\Program Files\Microsoft SQL Server"
/SQLSVCACCOUNT="DomainName\UserName" /SQLSVCPASSWORD="XXXXXX"
/AGTSVCACCOUNT="DomainName\UserName" /AGTSVCPASSWORD="XXXXXX"
/SQLDOMAINGROUP="DomainName\DomainGroup"
/INSTALLSQLDATADIR="<Drive>:\<Path>\MSSQLSERVER"
/SQLCOLLATION="CollationName"
/FAILOVERCLUSTERGROUP="<Insert Cluster Group name>"
/FAILOVERCLUSTERDISKS="<Insert Cluster Disk Resource>"
/FAILOVERCLUSTERIPADDRESSES="IPv4;XXX.XXX.XXX.XXX;Cluster
Network;xxx.xxx.xxx.xxx" /FAILOVERCLUSTERNETWORKNAME=
"<Insert SQL Network Name>"
/SQLSYSADMINACCOUNTS=" DomainName\UserName " [/SECURITYMODE=SQL
/SAPWD="StrongPassword"]
Here is the command-line syntax to add a node to an existing SQL Server 2008 failover cluster:
setup.exe /q /ACTION=AddNode
/INSTANCENAME="<Insert SQL Server Instance Name>"
/SQLSVCACCOUNT="DomainName\UserName" /SQLSVCPASSWORD="XXXXXX"
/AGTSVCACCOUNT="DomainName\UserName" /AGTSVCPASSWORD="XXXXXX"
Trang 9Here is the command-line syntax to remove a node from an existing SQL Server 2008 failover cluster:
setup.exe /q /ACTION=RemoveNode /INSTANCENAME="<Insert SQL Server Instance Name>"
The/qparameter implies that setup will run in quiet mode without any user interface To see the
progress of the setup, use the optional /INDICATEPROGRESSparameter For example, to see the
progress of the Remove Node operation, use the following command-line syntax:
setup.exe /q /ACTION=RemoveNode /INSTANCENAME="<Insert SQL Server Instance Name>" /INDICATEPROGRESS
Here is the command-line syntax to install only the client tools:
setup.exe /q /ACTION=INSTALL /FEATURES=SSMS
This installs the SQL Server Management Tools — Basic, which includes the following: SQL Server
Management Studio support for the SQL Server Database Engine, SQL Server Express, the sqlcmd utility,
and the SQL Server PowerShell provider
Here is the command-line syntax to install SQL Server Management Tools — Complete:
setup.exe /q /ACTION=INSTALL /FEATURES=ADV_SSMS
This installs SQL Server Management Tools – Complete, which includes the following components in
addition to the components in the Basic version:
■ SQL Server Management Studio support for Reporting Services, Analysis Services, and Integration Services
■ SQL Server Profiler
■ Database Engine Tuning Advisor
Best Practice
Use the /INDICATEPROGRESS parameter to get a better understanding of the setup and see the on-screen
progress This parameter can also be used while installing a single-node SQL Server 2008 failover cluster
and adding a node from the command prompt
Most of the options used for the command-line syntax are self-explanatory and are similar
to the selection that was entered manually while using the SQL Server Installation Center.
For a detailed explanation, refer to the SQL Server Books Online topic ‘‘How to: Install SQL Server 2008
from the Command Prompt’’ at http://msdn.microsoft.com/en-us/library/ms144259.aspx
Trang 10Rolling upgrade and patching
Prior to SQL Server 2008, upgrading and patching a SQL Server failover cluster incurred several minutes
downtime as the SQL Server services were shut down and started a few times during the upgrade/patch
process With SQL Server 2008 failover clustering, the downtime is reduced significantly using the
rolling upgrade process
With rolling upgrade you can now upgrade a SQL Server 2000/2005 failover cluster instance one
node at a time starting with the passive node without affecting the active node, leaving the SQL Server
2000/2005 failover clustering instance running A failover only occurs when the active node is upgraded,
during which the SQL Server service is stopped on the active node and restarted on the passive node
Similarly, you can also patch SQL Server 2008 failover clustering instances using rolling upgrade,
some-times referred to as rolling patching, by starting to patch the passive node first, keeping the SQL Server
instance up and running on the active node while the passive node is being patched
Recently I worked with a large insurance company to upgrade its production SQL Server
2005 failover cluster to SQL Server 2008 failover cluster using the rolling upgrade process.
The SQL Server 2005 failover cluster was used for one of the company’s very important 24/7 business
applications, which could not afford a long outage It was a pleasant surprise to see that the in-place
SQL Server 2008 cluster rolling upgrade process incurred approximately two minutes downtime (15
sec-onds failover plus 1.5 minutes database upgrade script execution time upon SQL Server Database Engine
start on the upgraded node) The actual upgrade time was approximately 30 minutes per cluster node,
but the most important point is that SQL Server was offline for only two minutes during the upgrade
process The rest of the time, it was up and running You might be wondering if these servers had very
tiny databases Actually, the databases were medium-size, and ranged from 100 GB to 600 GB.
Consider a two-node failover cluster with one default clustered instance of SQL Server 2005
(SQL2005INST1) running on NODE2 NODE2 is the active node, as SQL2005INST1 is running on
this node, and NODE1 is the passive node, as no services are running on it The following steps walk
through the process of upgrading SQL2005INST1 from SQL Server 2005 to SQL Server 2008 using
in-place rolling upgrade
Best Practice
Before proceeding with an upgrade, it’s recommended to spend significant time planning it You may find
the following Microsoft upgrade whitepapers helpful:
SQL Server 2000 to 2008 Upgrade Whitepaper at: http://download.microsoft.com/download/
2/0/B/20B90384-F3FE-4331-AA12-FD58E6AB66C2/SQL%20Server%202000%20to%202008
%20Upgrade%20White%20Paper.docx
SQL Server 2005 to 2008 Upgrade Whitepaper at: http://download.microsoft.com/download/
5/3/D/53D72434-7BD5-41C6-A806-8212C1B0DCA1/SQL%20Server%202005%20to%202008
%20Upgrade%20White%20Paper.docx
Also, it’s best to run Upgrade Advisor against the SQL Server instances you want to upgrade Upgrade Advisor
will identify issues to fix either before or after you upgrade to SQL Server 2008