Changing Virtual IP interface names on RAC nodes – how to reconfigure


We are adding an extra interface on our nodes and we are going to bond these so the VIP interface will change from eth5 to bond3.

Can someone point on documentation on what to do to reconfigure the interface name in a RAC?

Or simply give a procedure to do so.

Best Answer

If the NIC has changed for the Public / private NIC:

Modify the Public NIC information like so:

$CRS_HOME/bin/oifcfg/oifcfg delif -global <if_name>[/<subnet>]
$CRS_HOME/bin/oifcfg/oifcfg setif -global <if_name>/<subnet>:public
For example:
% $CRS_HOME/bin/oifcfg delif -global eth0/ 
% $CRS_HOME/bin/oifcfg setif -global eth0/

Then make the change at OS layer.

It can be done one node at a time so there's no down time unless the OS requires it.

Once the public network is changed, the VIP needs to be modified like so:

View the VIP information:

$ srvctl config nodeapps -n racnode1 -a
VIP exists.: /racnode1-vip/

Stop the nodeapps resources

$ srvctl stop instance -d <db_name> -i <inst_name>   (optional for
$ srvctl stop asm -n <node_name>                     (optional for
$ srvctl stop nodeapps -n <node_name>

$ srvctl stop instance -d RACDB -i RACDB1
$ srvctl stop asm -n racnode1
$ srvctl stop nodeapps -n racnode1

Verify that the VIP is offline:

$ crs_stat -t

Modify VIP like so:

# srvctl modify nodeapps -n <node> -A <new_vip_address or new_vip_hostname>/<netmask>/<[if1[if2...]]>

# srvctl modify nodeapps -n racnode1 -A racnode1-nvip/

Verify the change:

$ srvctl config nodeapps -n <node> -a (10g and 11gR1)
$ srvctl config nodeapps -a (11gR2)

$ srvctl config nodeapps -n racnode1 -a
VIP exists.: /racnode1-nvip/

Restart nodeapps:

$ srvctl start vip -n <node_name> 
$ srvctl start listener -n <node_name>
$ srvctl start instance -d <db_name> -n <node_name>      (optional)

$ srvctl start vip -n racnode1 
$ srvctl start listener -n racnode1
$ srvctl start instance -d RACDB -n racnode1

Verify the VIP is online

$ crs_stat -t (or $ crsctl stat res -t for 11gR2)