Good: Pre Requires for Installing SQL 2005/2008/2008R2/2012 Cluster
Pre-requisites
In order to plan everything ahead, we need to prepare some IPs and names as well as Network Configuration
How many nodes can have in a Windows cluster?
What is the Maximum number of supported nodes in a cluster?
What is the Maximum number of supported nodes in a cluster?
Operating System | Nodes |
Windows Server 2012, Enterprise x64 Edition | 1-64 Nodes |
Operating System | Nodes |
Windows Server 2008, Enterprise x64 Edition | 1-16 Nodes |
Windows Server 2008, Datacenter x64 Edition | 1-16 Nodes |
Windows Server 2008 R2 Enterprise | 1-16 Nodes |
Windows Server 2008 R2 Datacenter | 1-16 Nodes |
Microsoft Hyper-V Server 2008 R2 | 1-16 Nodes |
Windows Server 2003, Enterprise Edition | 1-16 Nodes |
Windows Server 2003, Enterprise x64 Edition | 1-16 Nodes |
Windows Server 2003, Enterprise Edition for Itanium-based Systems | 1-16 Nodes |
Windows Server 2003, Datacenter Edition | 1-16 Nodes |
Windows Server 2003, Datacenter x64 Edition | 1-16 Nodes |
Windows Server 2003, Datacenter Edition for Itanium-based Systems | 1-16 Nodes |
Windows 2000 Datacenter Server 1-4 Fibre Channel | 1-4 Nodes |
Windows NT 4.0 Enterprise Edition | 1-4 Nodes |
Windows 2000 Advanced Server | 1-4 Nodes |
Windows 2000 Datacenter Server | 1-4 Nodes |
Windows Server 2003, Enterprise Edition | 1-4 Nodes |
Windows Server 2003, Enterprise x64 Edition | 1-4 Nodes |
Windows Server 2003, Datacenter Edition | 1-4 Nodes |
Windows Server 2003, Datacenter x64 Edition | 1-4 Nodes |
Windows NT 4.0 Enterprise Edition | 1-4 Nodes |
Windows 2000 Advanced Server | 1-4 Nodes |
In order to plan everything ahead, we need to prepare some IPs and names as well as Network Configuration
During the deployment you will be using IPs and Names for the following
1- Windows Cluster
2- DTC
3- SQLYou can plan for those and document them for use ahead of time, just to save yourself some time
How many IP addresses/names do you need for 2 node cluster?
Here’s a list:
Here’s a list:
IP(Public & Private) Required :( Check below for more details)
------------------------------------------------------------------------------------------------------------------------------------
1 : For Sql Server Clustering : 2 node Active/Passive Cluster with 1 SQL Instance ? How many ip:7
2 : For Sql Server Clustering : 2 node Active/Passive Cluster with 2 SQL Instance ?how many ip:8
Require IP Address/Names for 2 Node SQL/Windows Cluster:
------------------------------------------------------------------------------------------------------------------------------------
1 : For Sql Server Clustering : 2 node Active/Passive Cluster with 1 SQL Instance ? How many ip:7
2 : For Sql Server Clustering : 2 node Active/Passive Cluster with 2 SQL Instance ?how many ip:8
Require IP Address/Names for 2 Node SQL/Windows Cluster:
Resources Number of IPs
Private Network,i,e Heart Beat (one per node) : 2 IP's
Public Network (one per node) : 2 IP's
MSDTC : 1 IP's
Windows Cluster Name : 1 IP's
SQL Server Cluster Name : 1 IP's
Public Network (one per node) : 2 IP's
MSDTC : 1 IP's
Windows Cluster Name : 1 IP's
SQL Server Cluster Name : 1 IP's
In case for installing a Multi-instance Failover Cluster,
then it should have additional SQL Server Cluster names and IP addresses.
then it should have additional SQL Server Cluster names and IP addresses.
No.IP | Description | Hostname | IP Address | Subnet Mask | Default Gateway |
IP Add:1 | Cluster IP Address | XXCLUSTER | 192.168.1.3 | 255.255.255.0 | N/A |
IP Add:2 | SQL Instance IP Address | XX2010SQL | 192.168.1.5 | 255.255.255.0 | N/A |
IP Add:3 | SQL Instance IP Address | XX2010SQL | 192.168.1.6 | 255.255.255.0 | N/A |
IP Add:4 | MSDTC Virtual IP | XX2010SQLDtc | 192.168.1.4 | 255.255.255.0 | N/A |
IP Add:5 | SQL Cluster Node 1 | Node1 | 192.168.1.1 | 255.255.255.0 | 172.21.X.1 |
IP Add:6 | SQL Cluster Node 2 | Node 2 | 192.168.1.2 | 255.255.255.0 | 172.21.X.1 |
IP Add:7 | HeartBeat interface on Node1 | Node1 | 10.10.10.1 | 255.0.0.0 | N/A |
IP Add:8 | HeartBeat interface on Node1 | Node 2 | 10.10.10.2 | 255.0.0.0 | N/A |
Parameter | Expressions | Example | Describe |
Domain Name | MyDomain.com | jayant.com | |
Node 1 Name | ClusterNode1 | ClusterNode1 | |
Node 2 Name | ClusterNode2 | ClusterNode2 | |
Node 1 Public Network IP Address/Mask | 192.168.1.1/255.255.255.0 | 192.168.1.1/255.255.255.0 | IP Add:1 |
Node 2 Public Network IP Address/Mask | 192.168.1.2/255.255.255.0 | 192.168.1.2/255.255.255.0 | IP Add:2 |
Private Network IP Address on Node1 | 10.10.10.1/255.0.0.0 | 10.10.10.1/255.0.0.0 | IP Add:3 |
Private Network IP Address on Node2 | 10.10.10.2/255.0.0.0 | 10.10.10.2/255.0.0.0 | IP Add:4 |
Admin Account Name and Password | Administrator/P@sswOrd101 | UserID/P@sswOrd101 | UID1 |
Windows Cluster Virtual Name | WindowsCLUSTER | WindowsCLUSTER | |
Windows Cluster IP Address | 192.168.1.3/255.255.255.0 | 192.168.1.3/255.255.255.0 | IP Add:5 |
MSDTC IP Address | 192.168.1.4/255.255.255.0 | 192.168.1.4/255.255.255.0 | IP Add:6 |
MSDTC Network Name | MSDTC | MSDTC | |
Virtual SQL Server Name (default or named)/SQL Inst1 | SQLCLUSTER\MyInstance1 | Jayant\SQLServerInst1 | |
Virtual SQL Instance1 IP Address | 192.168.1.5/255.255.255.0 | 192.168.1.5/255.255.255.0 | IP Add:7 |
Virtual SQL Server Name (default or named)/SQL Inst2 | SQLCLUSTER\MyInstance | Jayant\SQLServer | |
Virtual SQL Instance2 IP Address | 192.168.1.6/255.255.255.0 | 192.168.1.6/255.255.255.0 | IP Add:8 |
Cluster Service Account Name and Password | ClusterSVC/P@sswOrd101 | ClusterSVC/P@sswOrd101 | UID2 |
SQL Service Account Name and Password | SQL2K5SVC/P@sswOrd101 | SQL2K5SVC/P@sswOrd101 | UID3 |
SQL Server Domain Group Name | SQL Server Admins | SQL Server Admins | |
MSDTC Disk Letter | M: | M: | |
Quorum Disk Letter | Q: | Q: | |
Share Drives: Drive letter for SQL Server database files | N, O, P | N, O, P |
How do you determine the "active" node inside a stored proc for an active/passive 2-node cluster?
SELECT SERVERPROPERTY('ComputerNamePhysicalNetBIOS')
SELECT SERVERPROPERTY('ComputerNamePhysicalNetBIOS')
How to change cluster IP address or move the default cluster group in Windows Server 2008?
In WS2003 it was possible from cluadmin UI interface. This time I spent half an hour looking through the UI but could not find such an option (I provided the IP on creation of the cluster and from then on it seems gone from UI). so the option is to use cluster.exe:
In WS2003 it was possible from cluadmin UI interface. This time I spent half an hour looking through the UI but could not find such an option (I provided the IP on creation of the cluster and from then on it seems gone from UI). so the option is to use cluster.exe:
c:\cluster res
Listing status for all available resources:
Listing status for all available resources:
Resource Group Node Status
——————– ——————– ————— ——
Cluster Disk 1 Cluster Group HV1DC2 Online
Cluster Disk 2 SCVMM WS08_1 Resources HV1DC1 Online
Cluster IP Address Cluster Group HV1DC2 Online
Cluster Name Cluster Group HV1DC2 Online
SCVMM WS08_1 SCVMM WS08_1 Resources HV1DC1 Offline
SCVMM WS08_1 Configuration SCVMM WS08_1 Resources HV1DC1 Online
——————– ——————– ————— ——
Cluster Disk 1 Cluster Group HV1DC2 Online
Cluster Disk 2 SCVMM WS08_1 Resources HV1DC1 Online
Cluster IP Address Cluster Group HV1DC2 Online
Cluster Name Cluster Group HV1DC2 Online
SCVMM WS08_1 SCVMM WS08_1 Resources HV1DC1 Offline
SCVMM WS08_1 Configuration SCVMM WS08_1 Resources HV1DC1 Online
c:\cluster res "Cluster IP Address" /priv
Listing private properties for ‘Cluster IP Address’:
T Resource Name Value
– ——————– —————————— ———————–
FTR Cluster IP Address LeaseObtainedTime 1601-01-01 01:00:00
FTR Cluster IP Address LeaseExpiresTime 1601-01-01 01:00:00
SR Cluster IP Address DhcpServer 255.255.255.255
SR Cluster IP Address DhcpAddress 0.0.0.0
SR Cluster IP Address DhcpSubnetMask 255.0.0.0
S Cluster IP Address Network Cluster Network 1
S Cluster IP Address Address 172.0.30.102
S Cluster IP Address SubnetMask 255.255.0.0
D Cluster IP Address EnableNetBIOS 2 (0×2)
D Cluster IP Address OverrideAddressMatch 0 (0×0)
D Cluster IP Address EnableDhcp 0 (0×0)
T Resource Name Value
– ——————– —————————— ———————–
FTR Cluster IP Address LeaseObtainedTime 1601-01-01 01:00:00
FTR Cluster IP Address LeaseExpiresTime 1601-01-01 01:00:00
SR Cluster IP Address DhcpServer 255.255.255.255
SR Cluster IP Address DhcpAddress 0.0.0.0
SR Cluster IP Address DhcpSubnetMask 255.0.0.0
S Cluster IP Address Network Cluster Network 1
S Cluster IP Address Address 172.0.30.102
S Cluster IP Address SubnetMask 255.255.0.0
D Cluster IP Address EnableNetBIOS 2 (0×2)
D Cluster IP Address OverrideAddressMatch 0 (0×0)
D Cluster IP Address EnableDhcp 0 (0×0)
c:\cluster res "Cluster IP Address" /priv address=172.0.30.101
With cluster.exe you can see the cluster groups and resources that normally are not exposed in the Failover Cluster Management UI.
The other option you might find useful is moving the default cluster group to another node (e.g. a simple patch Tuesday scenario):
c:\cluster group
Listing status for all available resource groups:
Group Node Status——————– ————— ——
Available Storage HV1DC2 Offline
Cluster Group HV1DC2 Online
SCVMM WS08_1 Resources HV1DC1 Offline
Group Node Status——————– ————— ——
Available Storage HV1DC2 Offline
Cluster Group HV1DC2 Online
SCVMM WS08_1 Resources HV1DC1 Offline
c:\cluster group "Cluster Group" /Move:hv1dc1
Moving resource group ‘Cluster Group’…
Group Node Status
——————– ————— ——
Cluster Group HV1DC1 Online
----------------------------------------------------------------------------------------------------------------------------------------
Group Node Status
——————– ————— ——
Cluster Group HV1DC1 Online
----------------------------------------------------------------------------------------------------------------------------------------
MS SQL Server DBA Checklist - High Availability - Clustering
-- Detailed planning is critical to the success of every SQL Server cluster installation. Fully plan the install before performing the actual install.
-- An expensive cluster is of little value if the supporting infrastructure is not also fault tolerant. For example, don’t forget power redundancy, network redundancy, etc.
-- Run only a single instance of SQL Server per node. Whether you have two or eight nodes in your cluster, leave at least one node as a failover node.
-- Cluster nodes must not be domain controllers, and all nodes must belong in the same domain and should have access to two or more domain controllers.
-- Since clustering is not designed to protect data (only SQL Server instances), the shared storage device used by the cluster must incorporate fault tolerant technology. Consider log shipping or mirroring to further protect your production databases.
-- When initially installing Windows and SQL Server Clustering, be sure that all drivers and software are up-to-date, including the latest service packs or hot fixes.
-- Each node of a cluster should have identical hardware, drivers, software, and configuration settings.
-- Once the cluster has been installed, test it thoroughly for every possible failure scenario.
-- Do not run antivirus or antispyware on a SQL Server cluster.
-- Monitor active production clusters on a daily basis, looking for any potential problems. Periodically test failover on production servers to ensure all is working well.
-- Once you have a stable SQL Server Cluster running, be very leery about making any changes to it, whatsoever.
-- An expensive cluster is of little value if the supporting infrastructure is not also fault tolerant. For example, don’t forget power redundancy, network redundancy, etc.
-- Run only a single instance of SQL Server per node. Whether you have two or eight nodes in your cluster, leave at least one node as a failover node.
-- Cluster nodes must not be domain controllers, and all nodes must belong in the same domain and should have access to two or more domain controllers.
-- Since clustering is not designed to protect data (only SQL Server instances), the shared storage device used by the cluster must incorporate fault tolerant technology. Consider log shipping or mirroring to further protect your production databases.
-- When initially installing Windows and SQL Server Clustering, be sure that all drivers and software are up-to-date, including the latest service packs or hot fixes.
-- Each node of a cluster should have identical hardware, drivers, software, and configuration settings.
-- Once the cluster has been installed, test it thoroughly for every possible failure scenario.
-- Do not run antivirus or antispyware on a SQL Server cluster.
-- Monitor active production clusters on a daily basis, looking for any potential problems. Periodically test failover on production servers to ensure all is working well.
-- Once you have a stable SQL Server Cluster running, be very leery about making any changes to it, whatsoever.