I have a Windows 2008R2 2 node cluster with SQL Server 2008 clustered. How do I prevent the cluster from failing over while I am applying the SQL Server 2012 to the alternate node first? Any pointers on upgrading the SQL Server cluster to 2012?
Setup.exe will do the dirty work for you and take the passive node (currently upgrading node) away from being a possible owner of the SQL FCI's virtual network name (VNN). But if you want to ensure that this is happening (which I recommend, it's what I always do), then you can manually take the passive node you're about to upgrade off of the possible owners list for the FCI's VNN.
You could use the GUI (failover cluster admin) or PowerShell to accomplish this task. Below is an example of the latter:
Get-Cluster -Name "your cluster name" | Get-ClusterGroup -Name "SQL Server (your instance name)" | Get-ClusterResource -Name "SQL Network Name (your FCI's VNN)" | Set-ClusterOwnerNode -Owners "current active node"
All of the parameter strings there need to be specific to your environment. Note, calling
Set-ClusterOwnerNode will set the list of possible owners for that cluster resource. Depending on how many nodes are in your cluster, that could contain more than one string (i.e.
Set-ClusterOwnerNode -Owners "ACTIVENODE", "SOMEOTHERNODE", "ETC.").
Something to be knowledgeable about, there is a KB for a fix for a failover cluster instance upgrade from SQL Server 2008 [R2] to SQL Server 2012. I recommend you review it before the operation.
As for other tips and tricks, I would recommend you read this BOL reference on upgrading a SQL Server Failover Cluster Instance. There is a lot of great information in that article that should be considered.
How do I prevent the cluster from failing over while I am applying the SQL Server 2012 to the alternate node first?
You can do rolling upgrade and use
/FAILOVERCLUSTERROLLOWNERSHIP as follows :
• /FAILOVERCLUSTERROLLOWNERSHIP = 0. Designating this option means that SQL Server instance cluster ownership is not failed over to upgraded nodes. After the node is upgraded, the current node is not added as a possible owner to the SQL Server instance.
• /FAILOVERCLUSTERROLLOWNERSHIP = 1. This option specifies first to fail over the instance from the current active node that is being upgraded; second, to upgrade the node; and finally, to add the upgraded node as a possible owner.
• /FAILOVERCLUSTERROLLOWNERSHIP = 2. This is the default setting, which you will encounter when you use the attended (GUI-based) upgrade installation. It results in automatic management of cluster ownership depending on the number of nodes and their upgrade state. If less than half of the nodes have been upgraded, the /FAILOVERCLUSTERROLLOWNERSHIP parameter follows the behavior of option 0 (cluster ownership is not rolled to upgraded node and node ownership is not added). If half or more than half of the nodes have already been upgraded, the /FAILOVERCLUSTERROLLOWNERSHIP parameter follows the behavior of option 1 (SQL Server instance is failed over to an upgraded node and the current upgraded node is added as an owner after the node upgrade is complete).
Refer to :