Exadata重启时,主机很可能会hang住
1. 场景说明:
最近一个客户进行应用切换演练,通过关闭Exadata的计算节点来模拟数据库节点出现故障,业务可能会出现的影响。
2. 遭遇故障
(1).切换演练的当晚,客户在计算节点执行init 0来关闭其中的一台计算节点。等待了10分钟左右,该主机还没有完全关闭,该主机的硬盘灯还在频繁闪烁。我感觉不太对劲,一般情况下不会这么久呀,于是回到办公区,通过命令行登录到该主机的ILOM,查看控制台信息,发现命令行的ILOM当前的日志输出为:
INFO: task rmmod:8113 blocked for more than 120 seconds.
"echo 0 > /proc/sys/kenel/hung_task_timeout_secs" disables this messag.
Call Trace:
rds_ib_remove_one=0xf0/0x110 [rds_rdma]
? autoremove_wake_funcion
ib_unregister_device
mlx4_ib_remove
mlx4_remove_device
.......
(2).因为有时命令行的ILOM日志输出和Java控制台图形界面日志输出不一致,所以我必须同时打开ILOM的Java控制台,看看图形界面的ILOM当前是什么日志输出。ILOM的Java控制台日志输出如图所示:
(3). 可以看出,当前系统已经出现问题,操作系统无法关闭,在关机时,系统hang住。
3. 故障分析
只能根据 Call Trace信息搜索MOS网站,找到一篇文章:Reboot Hangs Running dbnodeupdate.sh While Upgrading Exadata Db Server (Doc ID 1620826.1)
这篇文章是在Exadata进行image升级的过程中系统重启时遭遇BUG而hang住,这个BUG与升级无关,任何的重启主机操作,都有可能遭遇这个BUG。
看样子,我现在遇到的故障与这个案例完全一致。
4. 故障解决方案
永久的解决办法是:升级image版本,这个BUG是操作系统内核相关的BUG,升级image版本,也会升级操作系统的内核。
临时的解决办法是:reset /sys, 也即强制关机重启。
当天晚上,临时升级image版本是不可能的事情,手动reset /sys后,恢复正常。
什么情况会触发这个BUG,官方没有说明,但感觉与该系统长时间运行有关。(该节点连续运行了1100多天,第一次关机hang住后,手动reset /sys,恢复正常,接着再次init 0关机,而第二次关机时没有出现hang的故障)
从这个案例可以看出,以后如果有image升级之类的工作,强烈建议升级之前先重启一遍所有节点,防止在升级的过程中出现这种故障。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署