How to Add Node In Oracle RAC

I will explain How to Add Node In Oracle RAC in this post.

 

 

Add Node In Oracle RAC

If you want to learn What is the Oracle RAC and how to install Oracle RAC, you can read the following post to learn more details about Oracle RAC.

 

Oracle RAC Step by Step Installation on Linux -3

 

Sometimes you need adding new nodes ( instances ) to Oracle RAC. I have 2 nodes RAC and we have decided to add 2 nodes to this cluster. So new cluster should be run on 4 nodes RAC.

 

Addnode.sh

Oracle has addnode.sh script under $ORACLE_HOME/addnode directory. You can use this script to add new node to cluster.

I have run the addnode.sh scripts as follows.

[MSDBDG1 ]/u01/app/oracle/product/19.0.0/dbhome_1/addnode $ ./addnode.sh -silent "CLUSTER_NEW_NODES={msdbadm03}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={msdb03-vip.deveci.local}"
[FATAL] [INS-30131] Initial setup required for the execution of installer validations failed.
CAUSE: Installation cannot proceed further since the system failed to meet the requirements for installation.
*ADDITIONAL INFORMATION:*
Exception details
- PRVF-4008 : User equivalence unavailable on all the specified nodes PRVF-4098 : User equivalence not found for node "msdbadm03"


[MSDBDG1 ]/u01/app/oracle/product/19.0.0/dbhome_1/addnode $ 
[MSDBDG1 ]/u01/app/oracle/product/19.0.0/dbhome_1/addnode $

 

 

I got ” User equivalence unavailable on all the specified ….” errors.

 

To solve this error, I have setup the user equivalence on all the specified nodes using the following post.

 

 

How to Setup Passwordless SSH User Equivalence ( (Key-Based Authentication) ) for Cluster Nodes ( Servers )

 

 

sshUserSetup.sh

There is a “sshUserSetup.sh” file under “sshsetup” directory in the Grid and Database Setup for Oracle 11gR2 and beyond.

 

Run this sshUserSetup.sh file to set up this passwordless SSH connectivity.

sshUserSetup.sh syntax is as follows.

./sshUserSetup.sh -user <user name> [ -hosts "<space separated hostlist>" | -hostfile <absolute path of cluster configuration file> ] [ -advanced ] [ -verify] [ -exverify ] [ -logfile <desired absolute path of logfile> ] [-confirm] [-shared] [-help] [-usePassphrase] [-noPromptPassphrase]


[oracle@MSDBdbadm01:/home/oracle/media/sshsetup:> ./sshUserSetup.sh -user oracle -hosts "msdbdbadm01 msdbdbadm02" -noPromptPassphrase
The output of this script is also logged into /tmp/sshUserSetup_2020-04-01-20-01-06.log
Hosts are msdbdbadm01 msdbdbadm02
user is oracle
Platform:- Linux
Checking if the remote hosts are reachable
PING msdbdbadm01.localdomain (192.168.63.205) 56(84) bytes of data.
64 bytes from msdbdbadm01.localdomain (192.168.63.205): icmp_seq=1 ttl=64 time=0.018 ms
64 bytes from msdbdbadm01.localdomain (192.168.63.205): icmp_seq=2 ttl=64 time=0.017 ms
64 bytes from msdbdbadm01.localdomain (192.168.63.205): icmp_seq=3 ttl=64 time=0.017 ms
64 bytes from msdbdbadm01.localdomain (192.168.63.205): icmp_seq=4 ttl=64 time=0.019 ms
64 bytes from msdbdbadm01.localdomain (192.168.63.205): icmp_seq=5 ttl=64 time=0.018 ms

--- msdbdbadm01.localdomain ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 3999ms
rtt min/avg/max/mdev = 0.017/0.017/0.019/0.004 ms
PING msdbdbadm02.localdomain (192.168.63.206) 56(84) bytes of data.
64 bytes from msdbdbadm02.localdomain (192.168.63.206): icmp_seq=1 ttl=64 time=0.110 ms
64 bytes from msdbdbadm02.localdomain (192.168.63.206): icmp_seq=2 ttl=64 time=0.265 ms
64 bytes from msdbdbadm02.localdomain (192.168.63.206): icmp_seq=3 ttl=64 time=0.254 ms
64 bytes from msdbdbadm02.localdomain (192.168.63.206): icmp_seq=4 ttl=64 time=0.101 ms
64 bytes from msdbdbadm02.localdomain (192.168.63.206): icmp_seq=5 ttl=64 time=0.321 ms

 

Passwordless SSH Connectivity has been established again with sshUserSetup.sh.

 

If you have completed the Passwordless SSH Connectivity between new nodes, then you can now start to add new nodes to Oracle RAC using addnode.sh as follows.

 

addnode.sh -silent "CLUSTER_NEW_NODES={hostname}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={virtual_hostname}"

 

Firstly msdbadm03 node will be added, then msdbadm04 node will be added as follows.

 

 

[MSDBDG1 ]/u01/app/oracle/product/19.0.0/dbhome_1/addnode $ 
[MSDBDG1 ]/u01/app/oracle/product/19.0.0/dbhome_1/addnode $ ./addnode.sh -silent "CLUSTER_NEW_NODES={msdbadm03}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={msdb03-vip.deveci.local}"

Prepare Configuration in progress.

Prepare Configuration successful.
.................................................. 7% Done.

Copy Files to Remote Nodes in progress.
.................................................. 12% Done.
.................................................. 18% Done.
..............................
Copy Files to Remote Nodes successful.
You can find the log of this install session at:
/u01/app/oraInventory/logs/addNodeActions2021-02-04_07-23-04PM.log

Instantiate files in progress.

Instantiate files successful.
.................................................. 52% Done.

Saving cluster inventory in progress.
.................................................. 89% Done.

Saving cluster inventory successful.
The Cluster Node Addition of /u01/app/oracle/product/19.0.0/dbhome_1 was successful.
Please check '/u01/app/oraInventory/logs/silentInstall2021-02-04_07-23-04PM.log' for more details.

Setup Oracle Base in progress.

Setup Oracle Base successful.
.................................................. 96% Done.

As a root user, execute the following script(s):
1. /u01/app/oracle/product/19.0.0/dbhome_1/root.sh

Execute /u01/app/oracle/product/19.0.0/dbhome_1/root.sh on the following nodes: 
[msdbadm03]


Successfully Setup Software.
.................................................. 100% Done.
[MSDBDG1 ]/u01/app/oracle/product/19.0.0/dbhome_1/addnode $ -
-bash: -: command not found
[MSDBDG1 ]/u01/app/oracle/product/19.0.0/dbhome_1/addnode $ 
[MSDBDG1 ]/u01/app/oracle/product/19.0.0/dbhome_1/addnode $ 
[MSDBDG1 ]/u01/app/oracle/product/19.0.0/dbhome_1/addnode $ 
[MSDBDG1 ]/u01/app/oracle/product/19.0.0/dbhome_1/addnode $ 
[MSDBDG1 ]/u01/app/oracle/product/19.0.0/dbhome_1/addnode $ ./addnode.sh -silent "CLUSTER_NEW_NODES={msdbadm04}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={msdb04-vip.deveci.local}"

Prepare Configuration in progress.

Prepare Configuration successful.
.................................................. 7% Done.

Copy Files to Remote Nodes in progress.
.................................................. 12% Done.
.................................................. 18% Done.
....................-..........
Copy Files to Remote Nodes successful.
You can find the log of this install session at:
/u01/app/oraInventory/logs/addNodeActions2021-02-04_07-34-28PM.log

Instantiate files in progress.

Instantiate files successful.
.................................................. 52% Done.

Saving cluster inventory in progress.
.................................................. 89% Done.

Saving cluster inventory successful.
The Cluster Node Addition of /u01/app/oracle/product/19.0.0/dbhome_1 was successful.
Please check '/u01/app/oraInventory/logs/silentInstall2021-02-04_07-34-28PM.log' for more details.

Setup Oracle Base in progress.

Setup Oracle Base successful.
.................................................. 96% Done.

As a root user, execute the following script(s):
1. /u01/app/oracle/product/19.0.0/dbhome_1/root.sh

Execute /u01/app/oracle/product/19.0.0/dbhome_1/root.sh on the following nodes: 
[msdbadm04]


Successfully Setup Software.
.................................................. 100% Done.
[MSDBDG1 ]/u01/app/oracle/product/19.0.0/dbhome_1/addnode $

 

 

 

 

Now msdbadm03 and msdbadm04 nodes have been added to our cluster.

You can add new nodes to cluster for both Grid Infrastructure and Oracle RAC using the addnode.sh script under the $ORACLE_HOME/addnode 

 

 

 

You can read the following post to learn more details about Oracle RAC.

What is the Oracle RAC and Architecture of Real Application Cluster

 

 

 

Do you want to learn Oracle Database for Beginners, then Click and read the following articles.

Oracle Tutorial | Oracle Database Tutorials for Beginners ( Junior Oracle DBA )

About Mehmet Salih Deveci

I am Founder of SysDBASoft IT and IT Tutorial and Certified Expert about Oracle & SQL Server database, Goldengate, Exadata Machine, Oracle Database Appliance administrator with 10+years experience.I have OCA, OCP, OCE RAC Expert Certificates I have worked 100+ Banking, Insurance, Finance, Telco and etc. clients as a Consultant, Insource or Outsource.I have done 200+ Operations in this clients such as Exadata Installation & PoC & Migration & Upgrade, Oracle & SQL Server Database Upgrade, Oracle RAC Installation, SQL Server AlwaysOn Installation, Database Migration, Disaster Recovery, Backup Restore, Performance Tuning, Periodic Healthchecks.I have done 2000+ Table replication with Goldengate or SQL Server Replication tool for DWH Databases in many clients.If you need Oracle DBA, SQL Server DBA, APPS DBA,  Exadata, Goldengate, EBS Consultancy and Training you can send my email adress [email protected].-                                                                                                                                                                                                                                                 -Oracle DBA, SQL Server DBA, APPS DBA,  Exadata, Goldengate, EBS ve linux Danışmanlık ve Eğitim için  [email protected] a mail atabilirsiniz.

Leave a Reply

Your email address will not be published. Required fields are marked *