无响应的mdadm

我有一个raid 5 mdadm RAIDarrays设置了6个驱动器和一个Ubuntu 11服务器上的热备份。 车上有几个桑巴股票,直到今天,他们工作的很好。

几个小时前,用户开始注意到他们的共享正在爬行或者根本不连接,花了许多分钟来列出当前的文件。 试图复制文件会冻结大部分时间的连接,并最终断开连接。 我能够通过ssh浏览挂载的目录上的共享,但是samba肯定有问题。 我尝试重新启动桑巴没有任何效果。

我跑了mdadm –detail / dev / md2和…什么也没有。 它没有输出任何东西或返回我的提示,我不得不控制它来让我的提示回来。 / proc / mdstat也是空的。 但由于某种原因,我仍然可以浏览装载的RAIDarrays,一切都很好。 回想起来,我应该尝试通过terminal添加和删除文件…

检查进程监视器显示每个挂在D状态的用户的一堆smbd进程,我不能用kill命令来阻止它们。 我没有看到像这样的东西,而mdad​​m没有提供任何有用的信息,我尝试重新启动服务器。 那也挂了。 我越过我的手指,告诉数据中心的人打硬重置。

最后,袭击正在重build,所有的驱动器都起来了。 但是我仍然不确定会导致mdadm如何冻结,断开所有的samba连接,并且没有响应。

我对这一切都很陌生,所以希望得到一些帮助,从那些以前可能见过类似问题的人那里debugging问题。 你先看哪里?


编辑::以下ACASE的build议,这里是一些更多的诊断信息:

/ dev / md2(有问题的RAID驱动器)上的文件系统是ext3

这是我的内核信息

2.6.35-22-server #33-Ubuntu SMP Sun Sep 19 20:48:58 UTC 2010 x86_64 GNU/Linux 

查看/ var / log / messages显示在重新启动之前,我在这个时间段内通过samba无法访问驱动器时遇到了一堆这样的错误(每3秒钟可能有15次):

 kernel: [17343195.826943] mptbase: ioc0: LogInfo(0x31123000): Originator={PL}, Code={Abort}, SubCode(0x3000) 

通过一些Googlesearch, 看起来可能与通过SAS控制器运行SATA驱动器的SMART结果有关 。 服务器是带有SAS 6 / iR集成的戴尔t610,所以这很好,可能是什么原因导致我的问题 – MDADM尝试在驱动器上运行智能,然后冻结IO的所有错误。 这听起来正确吗? 你会运行什么testing来确认它? 如果可能的话,我宁愿不要把整个arrays放下来,因为它正在被使用(显然是过早的)。 该日志消息在重新启动后停止显示,然后samba再次运行,所以我很确定它们是相关的。 没有消息显示在那些之间 – 有没有办法打开更详细的内核日志logging到/ var / log / messages可能certificate他们是SMART相关?

再次感谢。

/var/log/messages/var/log/kernel查找错误。 这听起来像内核停止能够写入和/或读取到磁盘。 这将解释为什么它不会很好地重新启动。

  • 你使用什么磁盘格式(ext2,ext3,ext4,xfs等)? 日志式?
  • 你在用什么内核? 检查是否有任何内核错误。
  • 发生这种情况时,请检查哪些分区(md [0-9])是可读/可写的
  • 使用hdparm实用程序检查磁盘I / O速度和设置是否适当设置

我通常会build议你在发生这种types的文件系统后运行fsck。

另外,Linux有几个reboot选项,可以让你忽略某些磁盘问题,并强制系统重新启动,而不必打电话给你的DC家伙进行硬重置(按照最低严重程度):

  -f Force halt or reboot, don't call shutdown(8). -n Don't sync before reboot or halt. Note that the kernel and stor- age drivers may still sync. 

这些都是比硬重置更安全的select。

[编辑#1]:

检查smartctl -a /dev/sd[az]以查看是否有磁盘出现问题。

[编辑#2]:

我build议安排一些停机时间和升级固件。 它倾向于修复很多错误。 特别是SAS控制器和BIOS。 也许别人提出build议。

此外,由于这是一个T610它有一个DRAC接口? 如果出现硬件故障,您经常可以看到硬件相关的日志。