In this Document
APPLIES TO:
Oracle Database - Enterprise Edition - Version 12.1.0.2 and later
Generic Linux
SYMPTOMS
When attempting to install Oracle 12c Grid Infrastructure software on Linux, the following error occurs
WARNING: Error while copying directory /u01/app/12.1.0/grid with exclude file list '/u01/app/tmp/OraInstall2015-03-31_05-02-32PM/installExcludeFile.lst' to nodes 'node1, node2'. [PRCF-2010 : All connections to the remote nodes got refused. Cannot proceed with the file transfer. There has to be at least one remote node to send the installer files!
PRCF-2010 : All connections to the remote nodes got refused. Cannot proceed with the file transfer. There has to be at least one remote node to send the installer files!]
Refer to '/u01/app/oraInventory/logs/installActions2015-03-31_05-02-32PM.log' for details. You may fix the errors on the required remote nodes. Refer to the install guide for error recovery. Click 'Yes' if you want to proceed. Click 'No' to exit the install. Do you want to continue?
CAUSE
As part of GI software installation, binaries are copied to other nodes after starting ractrans process on the remote nodes. Connection attempts to ractrans port is being refused resulting in the installation failure on remote nodes as seen from the installation log below
[pool-3-thread-4] [ 2015-04-02 08:59:13.401 BST ] [RACTransfer.executeBinaryFile:1866] Node "node1" executed the binary successfully and replied that it accepts clients at port: 36546 =======================> ractrans running on port 36546 on node1
[pool-3-thread-4] [ 2015-04-02 08:59:13.401 BST ] [RACTransfer.executeBinaryFile:1866] Node "node2" executed the binary successfully and replied that it accepts clients at port: 51875 =======================> ractrans running on port 51875 opened on node2
[pool-3-thread-4] [ 2015-04-02 08:59:13.401 BST ] [ClientHandlerSupervisor.connectToServer:234] Acquired the semaphore to access the next node ID. Value of m_nextNodeID = 0
[pool-3-thread-4] [ 2015-04-02 08:59:13.402 BST ] [ClientHandlerSupervisor.connectToServer:256] Released semaphore m_canAccessNextNodeID.
[pool-3-thread-4] [ 2015-04-02 08:59:13.402 BST ] [ClientHandlerSupervisor.connectToServer:258] Released semaphore m_canConnect.
[pool-3-thread-4] [ 2015-04-02 08:59:13.402 BST ] [RACTransferCore.connectToRemoteNodes:521] Connection to host/IP address:192.168.101.1 -- port:36546 refused. ==========================================> Connection to port 36546 refused on 192.168.101.1
[pool-3-thread-4] [ 2015-04-02 08:59:13.402 BST ] [ClientHandlerSupervisor.connectToServer:234] Acquired the semaphore to access the next node ID. Value of m_nextNodeID = 0
[pool-3-thread-4] [ 2015-04-02 08:59:13.403 BST ] [ClientHandlerSupervisor.connectToServer:256] Released semaphore m_canAccessNextNodeID.
[pool-3-thread-4] [ 2015-04-02 08:59:13.403 BST ] [ClientHandlerSupervisor.connectToServer:258] Released semaphore m_canConnect.
[pool-3-thread-4] [ 2015-04-02 08:59:13.403 BST ] [RACTransferCore.connectToRemoteNodes:521] Connection to host/IP address:192.168.101.2 -- port:51875 refused. ==========================================> Connection to port 51875 refused on 192.168.101.2
[pool-3-thread-4] [ 2015-04-02 08:59:13.403 BST ] [RACTransfer.transferDirStructureToNodes:822] The RAC Transfer failed while connecting to the remote nodes.
[pool-3-thread-4] [ 2015-04-02 08:59:13.404 BST ] [ClusterConfig.isClusterInstalled:368] hasJarPresent=false
The firewall is disabled and hence not the cause of the connections being refused
root@node1:~$ /etc/init.d/iptables status
iptables: Firewall is not running.
root@node1:~$ /etc/init.d/ip6tables status
ip6tables: Firewall is not running.
root@node2:~$ /etc/init.d/iptables status
iptables: Firewall is not running.
root@node2:~$ /etc/init.d/ip6tables status
ip6tables: Firewall is not running.
SOLUTION
The issue is caused by the kernel parameter net.ipv6.bindv6only being set to 1 as seen below
grid@node1:~> sysctl net.ipv6.bindv6only
net.ipv6.bindv6only = 1
grid@node1:~>
The solution is to set net.ipv6.bindv6only to 0 and install the Grid Infrastructure software
node1:~ # sysctl net.ipv6.bindv6only=0
net.ipv6.bindv6only = 0
node1:~ #