一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

Oracle RAC HAIP异常如何修复

时间:2026-08-10 17:20:49 编辑:袖梨 来源:一聚教程网

HAIP没起来需先检查子接口和日志:执行ifconfig -a | grep 169.254确认是否生成子接口及地址,无则HAIP未初始化;查ocssd.log中“no network HB”等关键字,结合crsctl stat res -t -init验证CSSD状态,再排查防火墙、MTU、rp_filter及OCR网卡配置一致性。

HAIP没起来,先看子接口和日志

HAIP启动失败最直接的表现是ora.cluster_interconnect.haip资源反复进入OFFLINEFAILED状态,进而拖垮ora.asm。别急着改网卡,先确认它有没有真正生成:

  1. 执行ifconfig -a | grep 169.254,看是否有类似eth1:1enp0s9:1的子接口及对应169.254.x.x地址;没有,说明HAIP连初始化都没过
  2. $GRID_HOME/log/<hostname>/cssd/ocssd.log,搜索no network HBclssnmvDHBValidateNCopy;若出现has a disk HB, but no network HB,基本锁定HAIP通信层未就绪
  3. crsctl stat res -t -init确认ora.cssd是否ONLINE——如果CSSD都起不来,说明底层UDP心跳根本没通,HAIP连入场机会都没有

UDP通信不通:防火墙、MTU、rp_filter三处必查

HAIP依赖UDP多播/单播完成节点间握手,系统级策略常静默掐断它:

  1. iptables -L -n检查INPUT链,重点看是否DROPREJECT了目标为169.254.0.0/16或端口12345–12350的UDP包
  2. 私网两端网卡MTU必须一致:一个设mtu 1500,另一个设mtu 9000,会导致HAIP握手包被丢弃;统一执行ip link set dev eth1 mtu 1500
  3. arping -I eth1 -c 3 169.254.10.10测试二层可达性;失败则检查sysctl net.ipv4.conf.eth1.rp_filter,值必须是02,不能是1

OCR记录的私网接口与实际硬件不匹配

OCR里存的是集群首次启动时认定的私网设备名,物理网卡更换后若不更新,CSSD会持续往不存在的接口发心跳:

  1. 查当前OCR配置:oifcfg iflist -p -n,确认记录的私网接口(如eth1/192.168.11.0
  2. 查真实网卡:ip addr show,找到承载私网IP的设备(如eth2
  3. 删旧配:oifcfg delif -node node1 eth1/192.168.11.0;加新配:oifcfg setif -node node1 eth2/192.168.11.0:cluster_interconnect
  4. 修改后无需重启集群,但需重启CSSD:crsctl stop res ora.cssd -init && crsctl start res ora.cssd -init

禁用HAIP前必须解耦ASM依赖

直接crsctl modify res ora.cluster_interconnect.haip -attr "ENABLED=0" -init大概率让ASM起不来,因为它的START_DEPENDENCIES里硬依赖ora.cluster_interconnect.haip

  1. 先查依赖:crsctl stat res ora.asm -p -init | grep START_DEPENDENCIES,确认是否含hard(...,ora.cluster_interconnect.haip,...)
  2. 解除依赖:crsctl modify res ora.asm -attr "START_DEPENDENCIES='hard(ora.cssd,ora.ctssd)pullup(ora.cssd,ora.ctssd)weak(ora.drivers.acfs)'" -init
  3. 再禁用HAIP:crsctl modify res ora.cluster_interconnect.haip -attr "ENABLED=0" -init
  4. 最后重启HAS:crsctl stop has && crsctl start has

HAIP不是开关按钮,它是嵌在集群心跳协议里的关键环节;多数“修复”本质是绕过它,而绕过的代价是失去私网网卡冗余能力——这点容易被忽略。

热门栏目