Adding a new network to RAC cluster
There are scenarios where it is required to add additional public network to a RAC cluster in order to segregate the network traffic from the default public network. In our case the requirement was to come up with a separate network which is dedicated to carry the backup traffic between the RAC servers and the enterprise backup server.
Below are the steps which were followed during the setup on Oracle 11.2 cluster (2 nodes) running on top of Solaris 10.
Before the start, make sure the new IPs are assigned in the network level and available on all nodes of the cluster. In our case below are the test IPs assigned.
Below are the steps which were followed during the setup on Oracle 11.2 cluster (2 nodes) running on top of Solaris 10.
Before the start, make sure the new IPs are assigned in the network level and available on all nodes of the cluster. In our case below are the test IPs assigned.
node 1 - IP --> 172.20.60.46 | VIP --> 172.20.60.146
node 2 - IP --> 172.20.60.47 | VIP --> 172.20.60.147
Step 1 - Add new IP entries to host file. ##Backup Network
172.20.60.46 cbbacknode1
172.20.60.47 cbbacknode2
##Backup VIP
172.20.60.146 vip-cbbacknode1
172.20.60.147 vip-cbbacknode2
Step 2 - Check currently assigned networks in the cluster. root@cbprdb1 # export ORACLE_HOME=/oracle/11.2.0/grid
root@cbprdb1 # export PATH=$ORACLE_HOME/bin:$PATH
root@cbprdb1 # crsctl stat res -t |grep -i net
ora.net1.network
root@cbprdb1 #
Step 3 - Add the new network and VIP on correct network adapter.(11.2 onward, as root) srvctl add network -k 2 -S 172.20.60.0/255.255.255.0/vnet4
srvctl add vip -n cbprdb1 -k 2 -A 172.20.60.146/255.255.255.0/vnet4
srvctl add vip -n cbprdb2 -k 2 -A 172.20.60.147/255.255.255.0/vnet4
Step 4 - Check new network is registered on cluster. root@cbprdb1 # crsctl stat res -t |grep -i net
ora.net1.network
ora.net2.network
root@cbprdb1 # crsctl stat res -t |grep -i vip
ora.cbprdb1.vip
ora.cbprdb2.vip
ora.scan1.vip
ora.scan2.vip
ora.scan3.vip
ora.vip-cbbacknode1.vip
ora.vip-cbbacknode2.vip
root@cbprdb1 #
Step 5 - use netca to create listener using newly created network and check listener status. @cbprdb1:/oracle/app[+ASM1]>srvctl config listener -a
Name: LISTENER
Network: 1, Owner: Dbadmin
Home: <CRS home>
/oracle/11.2.0/grid on node(s) cbprdb2,cbprdb1
End points: TCP:1535
Name: LISTENER_BACKUP
Network: 2, Owner: Dbadmin
Home: <CRS home>
/oracle/11.2.0/grid on node(s) cbprdb2,cbprdb1
End points: TCP:1539
@cbprdb1:/oracle/app[+ASM1]>
Step 6 - Add new configuration to tnsnames.ora on node1, same should be done on node2 using the VIP of the node. Node 1
LISTENER_BACKUP =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.20.60.146)(PORT = 1539))
)
REMOTE_BACKUP =
(DESCRIPTION_LIST =
(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.20.60.146)(PORT = 1539)))
(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.20.60.147)(PORT = 1539)))
)
Node 2
LISTENER_BACKUP =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.20.60.147)(PORT = 1539))
)
REMOTE_BACKUP =
(DESCRIPTION_LIST =
(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.20.60.146)(PORT = 1539)))
(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.20.60.147)(PORT = 1539)))
)
Step 7 - Configure listener_networks parameter accordingly. Keep the local_listener and remote_listener parameters without any change and include new network in listener_networks similar to below, alter system set LISTENER_NETWORKS='((NAME=network2)(LOCAL_LISTENER=LISTENER_BACKUP)(REMOTE_LISTENER=REMOTE_BACKUP))' scope=both sid='*';
Now it is possible to create backup clients using newly created network and listener.
Comments
Post a Comment