记一次oracle HAIP引发的数据库问题

一、客户背景 前不久客户找到我跟我说他们新实施的两套oracle 12CRAC数据库补丁不能成功打上让我帮忙解决一下前往客户现场,客户系统为IBM AIX7.2,数据库为oracle12.2.0.1补丁是2021年4月份的补丁,采用了双心跳,客户已经将一节点GI补丁安装,二节点装不上,我尝试使用opatch auto二节点可以正常安装该补丁当时并没有注意集群的状态,第二天客户又找到我说集群状态不正常。
二、问题处理分析过程 1、登录数据库服务器查看集群状态发现只有一个节点ASM磁盘是在线状态
记一次oracle HAIP引发的数据库问题
文章图片

2、经过多次尝试关闭一边另一边ASM可以正常启动,只有一边能启动的情况两节点ASM实例无法同时启动,排查ASM日志发现ASM最后报错为
No connectivity to other instances in the cluster during startup. Hence, LMON is terminating the instance. Please check the LMON trace file for details. Also, please check the network logs of this instance along with clusterwide network health for problems and then re-start this instance.
3、查看LMOIN日志发现网络超时现象和LMON进程终止了ASM实例
No reconfig messages from other instances in the cluster during startup. Hence, LMON is terminating the instance. Please check the network logs of this instance as well as the network health of the cluster for problems
4、经过对/etc/hosts/的排查和对网卡配置排查并未发现任何问题,所有IP均能正常通信
5、尝试GI回滚32540149补丁,发现回滚后两节点ASM实例恢复正常,再次安
装该补丁ASM实例就会报相同错误,怀疑是该补丁有问题,
6、更换安装30118419号补丁,该补丁安装完毕后ASM实例依旧单边启动另一边起不来报错依旧相同。
7、使用ifconfig -a 命令再次查看网卡信息发现私网网卡还有两个HAIP,尝试两节点互相ping发现不通,而没打补丁的集群HAIP是互通的,经过网络工程师对掩码的计算断定为打完补丁后集群两节点自动生成的HAIP为不同网段的IP所以不通造成了ASM实例异常。
记一次oracle HAIP引发的数据库问题
文章图片

三、解决方法 通过oifcfg 删除再添加网卡的方式解决
1、oifcfg getif 查看网卡信息后
2、oifcfg delif -global en12(第一块网卡名) 两节点同时卸载一个私网网卡
3、oifcfg setif -global en12/192.1.244.0:cluster_interconnect,asm 两节点再同时添加上该网卡
4、oifcfg delif -global en4 (第二块网卡名)两节点再卸载另一块私网网卡
5、重启集群
6、oifcfg setif -global en4/193.1.244.0:cluster_interconnect,asm 集群重启完毕后再次添加该网卡
【记一次oracle HAIP引发的数据库问题】7、再次重启集群后恢复正常,此时重启服务器后也不会有任何问题。

    推荐阅读