Thursday, February 27, 2014

Removing a Node from the Cluster

Removing a Node from the Cluster

A series of steps is used to remove a node.

  • You cannot simply remove the node from the cluster.
  • Oracle Central Inventory on each node has information about all nodes.
  • The Oracle Cluster Registry (OCR) contains information about all nodes.


On each node in the cluster, Oracle Central Inventory on that node contains information about all the nodes of the cluster. The binary OCR and voting disk also contain information about each node of the cluster. Therefore, to remove a node from the cluster properly, a procedure must be followed. You cannot simply remove the node. The procedure to remove a node from the cluster involves running a set of steps. 


Deleting a node from the cluster is a multiple-step process. Some commands are run on the node to be deleted and other commands are run on an existing node of the cluster. Some commands are run by the root user and other commands are run by the Oracle Clusterware software owner’s account.

When passing arguments to a command, sometimes the existing node is passed, sometimes the node to be removed is passed, and at other times a complete list of remaining nodes is passed as an argument. This requires special attention to detail to avoid making mistakes during the process.


Deleting a Node from the Cluster

Here in this example we have 3-Nodes Oracle RAC Cluster and we want to delete node host03



1.    Verify the location of the Oracle Clusterware home
2.From a node that will remain, run the following as root to expire the Cluster Synchronization Service (CSS) lease on the node that you are deleting:

[root@host01]# crsctl unpin css -n host03

The crsctl unpin command will fail if Cluster Synchronization Services (CSS) is not running on the node being deleted. Run the olsnodes –s –t command to show whether the node is active or pinned. If the node is not pinned, go to step 3.

3. Run the rootcrs.pl script as root from the Grid_home/crs/install directory on each node to be deleted:

[root@host03]# ./rootcrs.pl -delete -force

Note: This procedure assumes that the node to be removed can be accessed. If you cannot execute commands on the node to be removed, you must manually stop and remove the VIP resource using the following commands as root from any node that you are not deleting:

# srvctl stop vip -i vip_name -f

# srvctl remove vip -i vip_name -f


where vip_name is the Virtual IP (VIP) for the node to be deleted.

4. From a node that will remain, delete the node from the cluster with the following command run as root:

[root@host01]# crsctl delete node -n host03

5. On the node to be deleted, as the user that installed Oracle Clusterware, run the following command from the Grid_home/oui/bin directory:

[grid@host03]$ ./runInstaller -updateNodeList ORACLE_HOME=Grid_home "CLUSTER_NODES={host03}" CRS=TRUE -local

6. On the node that you are deleting, run the runInstaller command as the user that installed Oracle Clusterware.

A. If you have a shared home:

[grid@host03]$ ./runInstaller -detachHome ORACLE_HOME=/u01/app/11.2.0/grid
B. For a nonshared home, deinstall the Oracle Clusterware home:

[grid@host03]# ./deinstall –local

7. On any remaining node, as the Grid software owner, update the node list:

[grid@host01]$ cd /Grid_home/oui/bin

[grid@host01]$ ./runInstaller -updateNodeList \

ORACLE_HOME=/u01/app/11.2.0/grid \

"CLUSTER_NODES={host01,host02}" CRS=TRUE


8. On any remaining node, verify that the specified nodes have been deleted from the cluster.

[grid@host01]$ cluvfy stage -post nodedel –n host03 [-verbose]


Deleting a Node from a Cluster (GNS in Use)

If your cluster uses GNS, do the following (steps from the previous procedure):

3. Run the rootcrs.pl script as root from the Grid_home/crs/install directory on each node to be deleted.
4. From a node that will remain, delete the node from the cluster.
7. On any remaining node as the Grid software owner, update the node list.
8. On any remaining node perform step 8



Deleting a Node from Cluster
------------------------------------------------------------------
(Node 1) # /u01/app/11.2.0/grid/bin/crsctl unpin css -n rac2
(Node 1) # /u01/app/11.2.0/grid/bin/olsnodes -s -t
(Node 2) # cd /u01/app/11.2.0/grid/crs/install
(Node 2) # ./rootcrs.pl -delete -force
(Node 1) # /u01/app/11.2.0/grid/bin/crsctl delete node -n rac2

(Node 2) $ cd /u01/app/11.2.0/grid/oui/bin
(Node 2) $ ./runInstaller -updateNodeList ORACLE_HOME=/u01/app/11.2.0/grid "CLUSTER_NODES={rac2}" CRS=TRUE -local
(Node 2) $ ./runInstaller -detachHome ORACLE_HOME=/u01/app/11.2.0/grid


(Node 1) $ cd /u01/app/11.2.0/grid/oui/bin
(Node 1) $ ./runInstaller -updateNodeList ORACLE_HOME=/u01/app/11.2.0/grid "CLUSTER_NODES={rac1}" CRS=TRUE
(Node 1) $ cluvfy stage -post nodedel -n rac2 [-verbose]

No comments:

Post a Comment