3 Replies Latest reply: Nov 5, 2007 5:07 AM by 605926 RSS

    VIP change interfaces eth->bond Oracle

    605926
      Hi,

      my current configuration is
      RAC 10.2.0.3 (2 node cluster) on top of RHEL 4.4
      I started RAC installation with eth0 for public and eth1 for private.
      Latter on we decidet to go with bonds.
      Now we have eth0 and eth2 ---> bond0 (public) and eth1 and eth3 ----> bond1 (interconnect).
      So before I do this on my production system I need to succesfully simulated on my test RAC which was install with bond's preconfigured. That's why we doubled the bonds.. so that we can simulate the change from current interface to the new one.


      ---> the new one
      [oracle@rac2 bonding]$ oifcfg iflist
      bond2 10.10.8.0
      bond3 192.168.1.0

      ----> the old one in the configuration
      [oracle@rac2 bonding]$ oifcfg getif
      bond0 10.10.8.0 global public
      bond1 192.168.1.0 global cluster_interconnect

      What would be the right procedure to change public and cluster_interconnect from bond0 to bond2 and from bond1 to bond3.

      Is it enough if I shutdown nodeapps, listeners, instances, etc. and then use
      srvctl modify nodeapps or I need to use oifctl defif first and then setif??
      Or do I need to do both?
      What would be the exact commands?


      Many thanks in advance.

      Regards,
      Tomaz Bracic
        • 1. Re: VIP change interfaces eth->bond Oracle
          516450
          Tomaz,

          Metalink Note:283684.1 has all the instructions you need.

          HTH

          Thanks
          Chandra Pabba
          • 2. Re: VIP change interfaces eth->bond Oracle
            54634
            A while ago, Christo Kutrovsky blogged about changing interfaces for public and private networks on our group blog - http://www.pythian.com/blogs/210/oracle-10g-r2-rac-vip-on-wrong-interface
            • 3. Re: VIP change interfaces eth->bond Oracle
              605926
              Hi all,

              I've done it.

              The steps I followed.

              1. I stoped all the resources. On both nodes.

              emctl stop dbconsole
              srvctl stop instance -d <db_name> -i <inst_name>
              srvctl stop asm -n <node_name>
              srvctl stop nodeapps -n <node_name>

              2. I checked what the output of oifcfg command is:

              # so this is current configuration
              [oracle@rac1 ~]$ oifcfg getif
              bond0 10.10.8.0 global public
              bond1 192.168.1.0 global cluster_interconnect
              # this is my wish list :)
              [oracle@rac1 ~]$ oifcfg iflist
              bond2 10.10.8.0
              bond3 192.168.1.0

              3. Then I deleted the current config and set the new one.

              [oracle@rac1 ~]$ oifcfg delif -global bond0
              [oracle@rac1 ~]$ oifcfg setif -global bond2/10.10.8.0:public
              [oracle@rac1 ~]$ oifcfg delif -global bond1
              [oracle@rac1 ~]$ oifcfg setif -global bond3/192.168.1.0:cluster_interconnect
              [oracle@rac1 ~]$ oifcfg getif
              bond2 10.10.8.0 global public
              bond3 192.168.1.0 global cluster_interconnect
              [oracle@rac1 ~]$

              4. Then when I've tried to start up the nodeapps the following error come up.

              [oracle@rac1 ~]$ srvctl start nodeapps -n rac1
              rac1:ora.rac1.vip:checkIf: interface bond0 is down
              rac1:ora.rac1.vip:Invalid parameters, or failed to bring up VIP (host=rac1)
              rac1:ora.rac1.vip:checkIf: interface bond0 is down
              rac1:ora.rac1.vip:Invalid parameters, or failed to bring up VIP (host=rac1)
              CRS-1006: No more members to consider
              CRS-0215: Could not start resource 'ora.rac1.vip'.
              rac1:ora.rac1.vip:checkIf: interface bond0 is down
              rac1:ora.rac1.vip:Invalid parameters, or failed to bring up VIP (host=rac1)
              rac1:ora.rac1.vip:checkIf: interface bond0 is down
              rac1:ora.rac1.vip:Invalid parameters, or failed to bring up VIP (host=rac1)
              CRS-0215: Could not start resource 'ora.rac1.LISTENER_RAC1.lsnr'.


              When I checked the configuration I've noticed that I will have to some more since there
              was still bond0 configured.

              [oracle@rac1 ~]$ srvctl config nodeapps -n rac1 -a
              VIP exists.: /rac1-vip/10.10.8.18/255.255.255.0/bond0


              5. I switch the user to root and issued folowing commands.

              root@rac1 ~ $ cd /u01/app/oracle/product/10.2.0/crs/bin/
              root@rac1 bin $ ./srvctl modify nodeapps -n rac1 -A 10.10.8.18/255.255.255.0/bond2
              root@rac1 bin $ ./srvctl modify nodeapps -n rac2 -A 10.10.8.19/255.255.255.0/bond2
              root@rac1 bin $ ./srvctl config nodeapps -n rac1 -a
              VIP exists.: /rac1-vip.smart-com.si/10.10.8.18/255.255.255.0/bond2

              As you can see,.... everything is like I wanted to be. :)
              I started the resources, my VIP was attached to bond2 interface.


              6. I would like to thanks for your help.

              Regards,
              Tomaz Bracic