Oracle10g RAC Public IP and VIP修改

一客户的核心Oracle10g RAC架构的数据库要进行IP的修改,原因为目前public ip和virtual ip均是用的公网IP,因此基于安全的考虑,将这2类IP均修改为公司局域网内私网IP。

出于对客户信息的保密,因此不能将真实的IP写出来,不过我会描述清楚,若有疑问,欢迎留言指出。

IP类型

节点1(原IP)

节点1(改后IP)

节点2(原IP)

节点2(改后IP)

Public IP

202.85.219.x

192.168.0.214

202.85.219.x

192.168.0.215

Virtual IP

202.85.219.x

192.168.0.216

202.85.219.x

192.168.0.217

Private IP

192.168.0.214

10.0.1.8

192.168.0.214

10.0.1.9

 

有些情况下,如果仅仅是变更Public IP,而不变更subnet或netmask(如192.168.1.112 变更为 192.168.1.113)的话,就不需要在Oracle Clusterware层面做任何事情,只需要在OS上更改网卡上的IP配置和/etc/hosts文件中的IP信息。

具体的操作步骤就是:

1、Shutdown Oracle Clusterware Stack

2、Modify the IP address at network layer,DNS and /etc/hosts file to reflect the change.

3、Restart Oracle Clusterware Stack

【以上操作仅在一个节点上操作即可】

 

如果要更变的Public IP与之前Public IP的subnet(netmask)不一样了,那么需要在Oracle Clusterware 层面删除旧的IP配置并紧接着添加新的IP配置(比如我们这个案例)。

[oracle@oracle3 ~]$ oifcfg delif -global eth0/202.85.219.0
[oracle@oracle3 ~]$ oifcfg setif -global eth0/192.168.0.0:public
[oracle@oracle3 ~]$ oifcfg getif
eth0  192.168.0.0  global  public
eth1  10.0.1.0  global  cluster_interconnect


上面命令执行完成后,需要在OS层面修改/etc/hosts和网卡的IP配置,最后重启Oracle Clusterware.

 

我们知道Public IP和VIP 是相同网段的IP,既然Public IP发生了变更,VIP必然也需要进行调整,下面接着执行VIP的调整。

收集当前VIP的配置信息:

oracle3:root@/oracle/product/10.2.0/crs/bin>./srvctl config nodeapps -n oracle3 -a
VIP 已存在。: /oracle3-vip/192.168.0.216/255.255.255.0/eth0
oracle3:root@/oracle/product/10.2.0/crs/bin>./srvctl config nodeapps -n oracle4 -a
VIP 已存在。: /oracle4-vip/192.168.0.217/255.255.255.0/eth0


验证VIP的状态

[oracle@oracle3 ~]$ crs_stat -t
Name           Type           Target    State     Host        
------------------------------------------------------------
ora....l1.inst application    ONLINE    ONLINE    oracle3     
ora....l2.inst application    ONLINE    ONLINE    oracle4     
ora.cbl.db     application    ONLINE    ONLINE    oracle3     
ora....bl1.srv application    ONLINE    ONLINE    oracle3     
ora....bl2.srv application    ONLINE    ONLINE    oracle4     
ora...._cbl.cs application    ONLINE    ONLINE    oracle3     
ora....E3.lsnr application    ONLINE    ONLINE    oracle3     
ora....le3.gsd application    ONLINE    ONLINE    oracle3     
ora....le3.ons application    ONLINE    ONLINE    oracle3     
ora....le3.vip application    ONLINE    ONLINE    oracle3     
ora....E4.lsnr application    ONLINE    ONLINE    oracle4     
ora....le4.gsd application    ONLINE    ONLINE    oracle4     
ora....le4.ons application    ONLINE    ONLINE    oracle4               
ora....le4.vip application    ONLINE    ONLINE    oracle4     

VIP显示为ONLINE。

 

停止相关服务

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

上面命令是停止数据库实例,asm和nodeapps,VIP服务也会随之被停止。

 

修改VIP地址(此步执行前,首先需要在OS层面进行修改,如/etc/hosts)

使用root身份执行如下命令:

oracle3:root@/oracle/product/10.2.0/crs/bin>./srvctl modify nodeapps -n oracle3 -A oracle3-vip/255.255.255.0/eth0
oracle3:root@/oracle/product/10.2.0/crs/bin>./srvctl modify nodeapps -n oracle4 -A oracle4-vip/255.255.255.0/eth0


验证更变结果

oracle3:root@/oracle/product/10.2.0/crs/bin>./srvctl config nodeapps -n oracle3 -a
VIP 已存在。: /oracle3-vip/192.168.0.216/255.255.255.0/eth0
oracle3:root@/oracle/product/10.2.0/crs/bin>./srvctl config nodeapps -n oracle4 -a
VIP 已存在。: /oracle4-vip/192.168.0.217/255.255.255.0/eth0


重启动集群资源

启动CRS,和数据库即可。

 

注:如果listener.ora文件和参数LOCAL_LISTENER/REMOTE_LISTENER中引用了IP地址,也要进行修改。

阅读更多
个人分类: Oracle配置调整
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭