我们有一台 Debian 服务器,带有 3Ware 9650SE 8 驱动器 RAID 控制器,带有 5 个磁盘 RAID6 阵列,充当虚拟机主机,全部为 Linux。问题不断发生,我怀疑未检测到损坏的磁盘。
我们现在有几次崩溃,主机和所有客人都说 IO 系统阻塞了 120 秒或更长时间。我们怀疑 RAID 控制器有问题,但我们将其更换为具有相同固件的相同控制器,但没有修复。我不认为它会,因为第二个 RAID1 阵列保持正常工作。
大约一周前(周日),当这种情况发生时,自动验证为 66%。昨晚(星期五早上)是 67%。在启动之前和之后,以及在遇到问题时。当我用 关闭验证时tw_cli /c0/u0 stop verify
,事情又变得响应了。
我怀疑它卡在大约 66% 的磁盘故障上。周六开始自动验证:
# tw_cli /c0 show verify
/c0 basic verify weekly preferred start: Saturday, 12:00AM
Run Code Online (Sandbox Code Playgroud)
并且通常会在周五之前完成。看到周日是 66%,周五是 67%,这不太可能是巧合。
所有驱动器上的“smartctl -a -d 3ware,0 /dev/twa0”和“smartctl -t long”(长时间的智能自检)都没有显示任何错误。也不行tw_cli /c0 show alarms
。
我怀疑磁盘以难以检测的方式损坏,但我将每个驱动器一个一个地从阵列中取出,从中创建了一个“单个”阵列,并添加了完整的零。没有磁盘显示错误。
或者有什么其他建议?
编辑:
这是布局:
# tw_cli /c0 show
Unit UnitType Status %RCmpl %V/I/M Stripe Size(GB) Cache AVrfy
------------------------------------------------------------------------------
u0 RAID-6 OK - - 256K 5587.9 RiW OFF
u1 SPARE OK - - - 1863.01 - OFF
u2 RAID-1 OK - - - 1862.63 RiW ON
VPort Status Unit Size Type Phy Encl-Slot Model
------------------------------------------------------------------------------
p0 OK u0 1.82 TB SATA 0 - ST32000542AS
p1 OK u0 1.82 TB SATA 1 - ST32000542AS
p2 OK u0 1.82 TB SATA 2 - ST32000542AS
p3 OK u0 1.82 TB SATA 3 - ST32000542AS
p4 OK u0 1.82 TB SATA 4 - ST32000542AS
p5 OK u1 1.82 TB SATA 5 - WDC WD2002FYPS-02W3
p6 OK u2 1.82 TB SATA 6 - WDC WD2002FYPS-02W3
p7 OK u2 1.82 TB SATA 7 - WDC WD2002FYPS-02W3
Name OnlineState BBUReady Status Volt Temp Hours LastCapTest
---------------------------------------------------------------------------
bbu On Yes OK OK OK 0 xx-xxx-xxxx
Run Code Online (Sandbox Code Playgroud)
有问题的单位是 u0。
编辑2:
tw_cli /c0 show diag 显示了一些有趣的东西(edit3:这是无害的,我发现它是由调用smartctl -a -d 3ware,X /dev/twa0
where X 是无效端口引起的):
QueueAtaPassthrough() called with invalid TargetHandle: 0x17, portHandle: 0xFF
Legacy opcode=0xB1 error=0x10E
E=010E T=14:15:51 : Invalid operation for specified port
E=010E T=14:15:51 U=0 : Return error status to host
Error, Unit 23: Invalid operation for specified port
(EC:0x10e, SK=0x05, ASC=0x24, ASCQ=0x00, SEV=01, Type=0x70)
No additional sense data
Error, Unit 23: 0x10E OVERRIDDEN due to invalid sense buffer descriptor
sense buffer: len=0, address=0x414ca2c7c
Send AEN (code, time): 0031h, 06/21/2013 14:26:16
Synchronize host/controller time
(EC:0x31, SK=0x00, ASC=0x00, ASCQ=0x00, SEV=04, Type=0x71)
Run Code Online (Sandbox Code Playgroud)
我得到了很多这些。我不知道这意味着什么。我什至无法弄清楚它是哪个单元或端口。(edit3:我现在知道了,它是无害的)。
鉴于我的edit3,我又回到了第一个。除了验证在 66% 时挂起并导致阵列挂起外,没有任何迹象表明磁盘已损坏,这有时也会随机发生。我希望验证会发现错误......
小智 0
只是为了确定一下,您的固件版本是什么?
当满足以下要求时,我遇到了一个问题 - 听起来很像您所描述的问题:
当时没有可用的固件修复,因此我从 256k 迁移到 64k 条带大小,这也解决了该问题。您可以尝试作为解决方法,尽管这肯定需要几天时间才能完成。
后来我尝试了 256k 的新固件(* 4.10.00.021 我认为已经修复)并且工作得非常顺利。4.10.00.027 是最新版本。
归档时间: |
|
查看次数: |
2726 次 |
最近记录: |