8块硬盘故障的存储异常恢复案例一则

关键词

  • 华为存储、硬盘域、LUN
  • 热备冗余、重构、预拷贝
  • oracle rac、多路径

     There are many things that can not be broken!

     如果觉得本文对你有帮助,欢迎点赞、收藏、评论!

一、问题现象

近期遇到的一个案例,现象是一套oracle rac数据库双节点全挂了,原因是后端存储无法识别;然后运维人员登录到华为存储上,是不看不知道,一看吓一跳。存储日志记录显示,从20年开始,同一个硬盘域下,陆续坏了有8块盘!!在第8块盘坏的时候,硬盘域已经没有多余空间进行数据重构,硬盘域处于故障状态,下面所有LUN无法读写;显然这台存储是一直处于无人管理的状态下啊,几年里的坏盘都无人问津。

二、问题处理

针对这一情况,以前遇到过类似情形,只是同时坏2-3块盘的raid掉线,本次虽然有8块盘异常,本质上情形还是一样,只是这台存储使用的空间不多,有足够的冗余空间够磁盘多坏几块。前期写过一篇关于这类故障情况华为存储的处理建议,参考如下:

https://vincentwong.blog.csdn.net/article/details/135291665

本次故障介入处理时,运维已经备新盘到现场,准备进行更换,更换前拔除了最后一块坏的硬盘。此时查看硬盘域处于重构过程中挂了,担心最后一块盘上还有数据,故让插回该硬盘,准备手动去拉起下该硬盘看下。

结果,硬盘插回后,存储又重新正常识别了该硬盘,并标记成good状态,说明硬盘可能只是存在部分坏块,还没有彻底坏掉。因为老硬盘上数据还在,存储硬盘域的重构也很快完成,硬盘域立马恢复正常状态,LUN组也恢复成正常可用状态。

紧接着就是依次对存储其他坏盘进行更换,恢复硬盘域的冗余保护。

存储恢复正常后,业务oracle rac集群未能自动恢复,原因是存储异常时,rac集群触发了系统重启,重启后的磁盘识别一直不正常,当存储恢复后,没法自动恢复。此时对两台主机节点再次重启系统后,数据库实例均恢复正常,数据未丢失,不幸中万幸。

三、结论总结

1、存储硬盘域的好处就是可以把所有硬盘空间混在一起,热备的冗余可以不只是某几块固定硬盘的空间,只要存储使用不够多,剩余空间都可以用来冗余。

2、遇事不要慌,按步骤进行去恢复尝试,遇到不清楚的地方也可以再去找下官方售后技术支持,总能找到解决的办法。

3、日常运维过程中,第一步还是要对你所运维的对象做个盘点,一个也不能少,不然说不定哪天给你捅个大篓子啊!

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-15 13:08:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-15 13:08:04       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-15 13:08:04       82 阅读
  4. Python语言-面向对象

    2024-03-15 13:08:04       91 阅读

热门阅读

  1. js手写实现 Promise.all

    2024-03-15 13:08:04       46 阅读
  2. Babel 7.24.0 出来了!

    2024-03-15 13:08:04       35 阅读
  3. go生成terraform .tf配置

    2024-03-15 13:08:04       40 阅读
  4. 程序员如何选择职业赛道?

    2024-03-15 13:08:04       43 阅读
  5. docker套娃实践(待续)

    2024-03-15 13:08:04       42 阅读