How to change Cluster Interconnect Adapter IP Address in 11gR2 RAC

Cluster interconnect: It’s a private interface used for the cluster-ware to provide inter-instance or
Cache Fusion communication. This is also called as private IP address.

We can change it at any stage, it require full outage.
Step 1: Determine private IP address

[oracle@test1 ~]$ oifcfg getif
eth0  192.168.1.0  global  public
eth1  10.0.0.0  global  cluster_interconnect

Step 2: Determine Ethernet card name

[oracle@test1 ~]$ oifcfg iflist
eth0  192.168.1.0
eth1  10.0.0.0

Step 3: Add new interface Subnet ID specification:

[oracle@test1 ~]$ oifcfg setif -global eth1/172.16.0.0:cluster_interconnect

Step 4 : Verify the changes:

[oracle@test1 ~]$ oifcfg getif
eth0  192.168.1.0  global  public
eth1  10.0.0.0  global  cluster_interconnect
eth1  172.16.0.0  global  cluster_interconnect

Step 5: Stop cluster on all node:

[oracle@test1 ~]# sudo /u01/app/11.2.0/grid/bin/crsctl stop cluster -all

Step 6: Modify netwrok address on network adapter of each box:

[root@test1 ~]# ifconfig eth1 172.16.0.10 netmask 255.255.0.0 broadcast 172.16.255.255
[root@test2 ~]# ifconfig eth1 172.16.0.11 netmask 255.255.0.0 broadcast 172.16.255.255

Step 7: Modify /etc/hosts file on each node.

Delete entry of old private interconnect and add new private interconnect on each node.

[root@test1 ~]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1    localhost.localdomain    localhost

#10.10.10.105    test1-priv.localdomain    test1-priv
172.16.0.10    test1-priv.localdomain    test1-priv

#10.10.10.107    test2-priv.localdomain  test2-priv
172.16.0.11    test2-priv.localdomain  test2-priv

Step 8: Start cluster on each node

[root@test1 ~]# /u01/app/11.2.0/grid/bin/crsctl start cluster -all

Step 9: Delete old entry of private interconnect from cluster registry

[oracle@test1 ~]$ oifcfg delif -global eth1/10.0.0.0:cluster_interconnect

Step 10: Verify the changes:

[oracle@test1 ~]$ oifcfg getif
eth0  192.168.1.0  global  public
eth1  172.16.0.0  global  cluster_interconnect

You can also verify:

[root@test1 ~]# ifconfig eth1
eth1      Link encap:Ethernet  HWaddr 00:0C:29:F9:B9:26
inet addr:172.16.0.10  Bcast:172.16.255.255  Mask:255.255.0.0
inet6 addr: fe80::20c:29ff:fef9:b926/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:397513 errors:0 dropped:0 overruns:0 frame:0
TX packets:338579 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:247976796 (236.4 MiB)  TX bytes:159435440 (152.0 MiB)
Base address:0x2040 Memory:d8940000-d8960000
[oracle@test1 ~]$ ping test1-priv
PING test1-priv.localdomain (172.16.0.10) 56(84) bytes of data.
64 bytes from test1-priv.localdomain (172.16.0.10): icmp_seq=1 ttl=64 time=0.036 ms
64 bytes from test1-priv.localdomain (172.16.0.10): icmp_seq=2 ttl=64 time=0.015 ms

— test1-priv.localdomain ping statistics —
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 0.015/0.025/0.036/0.011 ms

About the Author Brijesh

I'm 10gR2 RAC Oracle certified professional, working from last 6 year in the field of database.

Leave a Comment: