当前位置: 首页
数据库
Oracle 11g RAC双网卡绑定失效故障修复

Oracle 11g RAC双网卡绑定失效故障修复

热心网友 时间:2026-07-09
转载

bond 接口未生效?别急着排查 Oracle,先确认 Linux 网络栈是否识别了聚合接口。 很多运维人员第一时间会查看 RAC 日志,但问题的根源往往在更底层——bonding 模块未被加载、配置文件存在错误、slave 网卡未能成功加入绑定,或者物理链路本身不稳定。无论哪种原因,最终表现都一样:RAC 私网实际走的是单路径,心跳一旦丢失,集群就会产生异常。

bond 接口未能启动,或者 ifconfig 显示 bond0 已分配 IP 但 ethtool bond0 报 “No such device”,基本可以断定绑定未生效——这并非 Oracle 层面的问题,需要首先让 Linux 网络栈识别这个聚合接口。

确认 bond 设备是否被内核正常识别

许多故障的根源在于 modprobe bonding 未执行,或 /etc/modprobe.d/bonding.conf 缺失/配置错误。在 rhel/centos 5/6 环境下,必须显式加载模块:

如何修复Oracle 11g RAC中由于网络双网卡绑定失效导致的故障?
  • lsmod | grep bonding —— 若无输出,表明模块未被加载
  • modprobe bonding mode=1 miimon=100(主备模式)临时启用,接着查看 cat /proc/net/bonding/bond0 验证状态
  • 若报错 “Operation not supported”,说明网卡驱动不支持当前 mode,可改用 mode=0mode=4(LACP 模式需交换机配合配置)
  • /etc/sysconfig/network-scripts/ifcfg-bond0 中必须包含 BONDING_OPTS="mode=1 miimon=100",同时确保 DEVICE=bond0BOOTPROTO=noneONBOOT=yes

检查 slave 网卡是否被正确纳入 bond

常见现象:bond0 显示 up,但 cat /proc/net/bonding/bond0 输出 “No slaves”,或只列出了一个网卡。这会导致 RAC 私网流量实际仅通过单一路径传输,一旦该物理端口出现抖动,心跳就会丢失。

  • 确保每个 slave 接口(如 eth0eth1)的配置文件中包含 SLAVE=yesMASTER=bond0
  • 执行 ifdown eth0 && ifup eth0 后仍无法加入 bond?检查 dmesg | tail -20 是否存在 “bond0: Adding slave eth0 failed” 类提示——通常是速度或双工模式不匹配所致
  • 强制统一双工设置:在 slave 接口配置中增加 ETHTOOL_OPTS="speed 1000 duplex full autoneg off",避免协商失败导致 bond 初始化异常

验证私网链路是否真正具备冗余能力

RAC 对私网延迟和稳定性要求极高,仅仅依靠 ping 通是不够的。必须确认心跳包实际走的是 bond 路径,且无丢包、无抖动。

  • 使用 tcpdump -i bond0 -c 100 'host and port 12560'(CSS 心跳默认端口)验证流量确实经过 bond0 收发
  • 运行 ethtool -S bond0 查看 rx_packetstx_packets 是否持续增长;若某个 slave 的 rx_missed_errors 非零,说明接收队列溢出,需要调整 net.core.netdev_max_backlog
  • 执行 ping -c 1000 -i 0.05 <私网IP>,重点关注 mdev(标准差),超过 0.5ms 即需警惕;RAC 要求 95% 的包延迟 ≤ 2ms

OCR/Voting Disk 访问异常时优先排查 bond 状态

crsctl check cluster -all 报 CRS-4535,但节点本身可正常 SSH 登录,大概率是 OCR 所在存储路径依赖的私网 bond 不稳定,导致 CSSD 进程无法完成集群成员资格仲裁。

  • 不要直接重启 CRS:先执行 tail -f /oracle/11.2.0/grid/log//cssd/ocssd.log,搜索 “IPC timeout” 或 “missed heartbeat” 关键词
  • 若日志反复出现 “clssnmSendingThread: sent 5 status msgs”,紧接着 “clssgmHandleMasterMemberExit”,说明私网通信已断续,此时强行 crsctl start crs 可能触发误驱逐
  • 临时恢复手段:在故障节点上执行 ifconfig bond0 down && ifconfig bond0 up,观察 ocssd.log 是否停止报错;若恢复,说明 bond 驱动状态异常,需要重载 bonding 模块

实际生产环境中,bond 配置正确只是第一步。RAC 私网的稳定性最终取决于物理链路层——交换机端口双工是否强制为全双工、网线是否存在接触不良、甚至网卡固件版本是否过旧。这些细节不会直接出现在 Oracle 日志中,却会导致 ocwd.log 中密集出现 CRS-1611,而你翻阅所有 srvctl 命令都找不到原因。

来源:https://www.php.cn/faq/2785246.html

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

同类文章
更多
如何配置Oracle可恢复空间分配以防止任务中断

如何配置Oracle可恢复空间分配以防止任务中断

启用可恢复空间分配需将RESUMABLE_TIMEOUT设为非零值(如3600秒),RAC环境需逐节点单独设置。该机制仅对ORA-01536等空间类错误生效,挂起期间事务锁定状态不变,超时自动中止。会话级启用需显式指定timeout和name,否则可能无效。

时间:2026-07-09 07:09
Redis集群升级配置文件不兼容 对照新旧参数手册转换

Redis集群升级配置文件不兼容 对照新旧参数手册转换

升级至Redis7 0配置不兼容须知:主从复制命令由slaveof改为replicaof否则报错;集群全量覆盖参数默认开启需改为关闭;TCP连接积压参数需与系统内核一致;访问控制列表默认用户无管理权限需授权;节点配置文件禁止手动编辑,应通过命令管理。

时间:2026-07-09 07:09
Oracle 19c补丁冲突问题修复方法详细步骤使用opatch apply命令

Oracle 19c补丁冲突问题修复方法详细步骤使用opatch apply命令

Oracle19c补丁冲突因新旧补丁修复重叠或文件冲突所致。需先确认OPatch版本、inventory一致性及执行用户正确性,再通过opatchprereq定位具体冲突。真实冲突可回退旧补丁或改用完整RU流程,RAC环境需逐节点检查inventory。

时间:2026-07-09 07:08
MySQL修改权限后为何必须执行FLUSH PRIVILEGES?

MySQL修改权限后为何必须执行FLUSH PRIVILEGES?

MySQL修改权限后是否执行FLUSHPRIVILEGES取决于修改方式。通过GRANT或ALTERUSER标准命令自动同步,无需手动刷新;直接UPDATEmysql user表则必须执行以刷新内存缓存。已存在连接不重载,需注意host匹配、认证插件兼容性及RELOAD权限。

时间:2026-07-09 07:08
SQL嵌套查询在电商订单报表中的应用实践

SQL嵌套查询在电商订单报表中的应用实践

SQL嵌套查询在电商订单报表中适用于条件筛选,如快速圈定用户范围,但不适合替代关联分析。使用时需注意子查询空值导致IN失效、必须返回单列、MySQL5 7不支持LATERAL及CTE。聚合分析应依赖聚合加过滤,深层嵌套可用派生表或CTE分步处理。

时间:2026-07-09 07:08
热门专题
更多
刀塔传奇破解版无限钻石下载大全 刀塔传奇破解版无限钻石下载大全
洛克王国正式正版手游下载安装大全 洛克王国正式正版手游下载安装大全
思美人手游下载专区 思美人手游下载专区
好玩的阿拉德之怒游戏下载合集 好玩的阿拉德之怒游戏下载合集
不思议迷宫手游下载合集 不思议迷宫手游下载合集
百宝袋汉化组游戏最新合集 百宝袋汉化组游戏最新合集
jsk游戏合集30款游戏大全 jsk游戏合集30款游戏大全
宾果消消消原版下载大全 宾果消消消原版下载大全
  • 日榜
  • 周榜
  • 月榜