Oracle RAC修改VIP、public IP地址

前言:Oracle RAC修改IP并不多见,但是修改下来还是比较简单,做好备份,文章中没有写私网IP的修改,但是与修改VIP以及公网IP差别不大,主要多一个重要的步骤就是再删除旧IP之前需要先把新的IP加上,因为集群间的通信除了磁盘心跳就是私网心跳,在附录中MOS文档中有描述如何修改私网IP。

环境:
11.2.0.4 RAC OS:oracle linux 6.5

一、 准备
备份OCR、hosts、profile.xml(grid_home/gpnp/profiles/peer/)每个节点都备份
一旦公网发生变化,相关的VIP和SCAN VIP需要更改,修改public 子网以及IP
从OCR中删除,首先delif、然后setif。
二、 备份
1.备份OCR(单节点)
[root@dynamite1 ~]# ocrconfig -manualbackup

2.备份profile(双节点、grid用户备份)
$ORACLE_HOME/gpnp/profiles/peer

3.备份hosts文件
操作系统中备份

三、 修改public
1.修改public
修改public(除非操作系统更改需要重新启动节点,否则无需重新启动Oracle集群件。这可以滚动方式完成。执行delif、setif需要clusterware RUNNING在所有节点上,否则将报告PRIF-33和PRIF-32)
注:grid用户、集群以及任何资源未停止,在其中一个节点修改,另一个节点自动更新。

集群修改操作
1.1获取当前public信息
[grid@dynamite1 ~]$ oifcfg getif
eth0 192.168.100.0 global public
eth1 172.16.1.0 global cluster_interconnect
1.2删除public
[grid@dynamite1 ~]$ oifcfg delif -global eth0/192.168.100.0
报错:
CRS-02307: No GPnP services on requested remote hosts. PRIF-32: Error in checking for profile availability for host node2 CRS-02306: GPnP service on host “node2” not found. 由于gpnpd服务异常导致的。 解决方法:能够Kill掉gpnpd进程。GI会自己主动立即启动gpnpd服务。
1.3添加public
[grid@dynamite1 ~]$ oifcfg setif -global eth0/192.168.101.0:public
1.4确认修改信息
[grid@dynamite1 ~]$ oifcfg getif
eth1 172.16.1.0 global cluster_interconnect
eth0 192.168.101.0 global public
OS修改操作
注:修改完hosts、eth0集群资源以及网卡未重启。
1.修改hosts(两个节点修改)
只修改public IP内容
2.修改网卡
/etc/sysconfig/network-scripts

四、 修改VIP
通常,只有在10.2.0.3之前的版本中才需要完全中断。从10.2.0.3开始,删除了对VIP资源的ASM /数据库实例依赖关系,因此可以修改VIP而无需关闭ASM /数据库实例,只有当VIP关闭时,才会影响到数据库的客户端连接。如果修改是特定于节点的,则在更改期间仅影响与该节点的连接。 请遵循案例III,以确保首先进行公共网络更改。如果在OS网络更改后有节点重启或Clusterware重启,则vip将无法启动,请跳至步骤“修改VIP及其关联属性”。 确定新的VIP IP /子网/网络掩码或VIP主机名,首先在OS上进行网络更改,确保新的VIP在DNS中注册或在/ etc / hosts中修改(对于Unix / Linux)和\ WINDOWS \ System32 \ drivers \ etc \ hosts文件(适用于Windows)。如果更改了网络接口,请确保服务器上的新接口可用,然后再继续进行修改。
注:停止VIP db后修改/etc/hosts或停之前修改都可以。
1.验证VIP信息
srvctl config nodeapps -a
Network exists: 1/192.168.100.0/255.255.255.0/eth0, type static
VIP exists: /dynamite1-vip/192.168.100.20/192.168.100.0/255.255.255.0/eth0, hosting node dynamite1
VIP exists: /dynamite2-vip/192.168.100.21/192.168.100.0/255.255.255.0/eth0, hosting node dynamite2
crsctl stat res -t
网络资源online
ifconfig -a
2.停止相关资源(两个节点都停掉)
[grid@dynamite1 ~]$ srvctl stop instance -d pocdb -n dynamite1

[grid@dynamite1 ~]$ srvctl stop vip -n dynamite1
PRCR-1014 : Failed to stop resource ora.dynamite1.vip
PRCR-1065 : Failed to stop resource ora.dynamite1.vip
CRS-2529: Unable to act on ‘ora.dynamite1.vip’ because that would require stopping or relocating ‘ora.LISTENER.lsnr’, but the force option was not specified

[grid@dynamite1 ~]$ srvctl stop vip -n dynamite1 -f
[grid@dynamite1 ~]$
注:重启网卡,否则修改VIP报错PRCN-2070-待验证是否正确
3.验证VIP属于offline状态
crs_stat -t
ifconfig -a

4.修改VIP及其属性
注:root用户身份修改
srvctl modify nodeapps -n dynamite1 -A 192.168.101.200/255.255.255.0/eth0
srvctl modify nodeapps -n dynamite2 -A 192.168.101.201/255.255.255.0/eth0
PRCN-2070 : Failed to validate network. No interface on localnode matches required network (subnet: 192.168.101.0, netmask: 255.255.255.0 adapters: eth0).—网卡没有重启导致(停止vip资源后,重启网卡。)
[root@dynamite1 bin]# /etc/init.d/network restart

5.验证更改
srvctl config nodeapps -a

6.重启资源(两个节点都启动)
srvctl start vip -n dynamite1
srvctl start listener -n dynamite1
srvctl start instance -d pocdb -n dynamite1

srvctl start vip -n dynamite2
srvctl start listener -n dynamite2
srvctl start instance -d pocdb -n dynamite2

五、 修改SCAN
注:root用户修改SCAN,hosts文件更新
1.确认信息(运行在哪个节点)
srvctl config scan

2.停止SCAN
srvctl stop scan_listener
srvctl stop scan

3.修改hosts(停止之后,修改两个节点)

4.修改SCAN(一个节点中修改root用户)
srvctl modify scan -n dynamite-scan

5.更新资源
srvctl modify scan_listener -u

6.启动SCAN
srvctl start scan_listener

六、 确认状态
Listener中IP自动更新。

七、 附录
如果调整完网络后地址不通,请网络工程师调整网络策略,检查交换机连接是否正确;
在以上正常的情况下,网络依然不通,确认网关是否正常,只能有一个默认网关。
整理自:
How to Update the IP Address of the SCAN VIP Resources (ora.scan{n}.vip) (文档 ID 952903.1)
How to Modify Public Network Information including VIP in Oracle Clusterware (文档 ID 276434.1)
for 11gR2, as Grid Infrastructure owner:
$ srvctl config nodeapps -a
eg:
$ srvctl config nodeapps -a
Network exists: 1/101.17.80.0/255.255.254.0/eth1, type static
VIP exists: /racnode1-vip/101.17.80.184/101.17.80.0/255.255.254.0/eth1, hosting node racnode1
VIP exists: /racnode2-vip/101.17.80.186/101.17.80.0/255.255.254.0/eth1, hosting node racnode2

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值