web-dev-qa-db-ja.com

3Ware RAID6アレイが時々ハングします。検出されていない壊れたディスク?

3Ware 9650SE 8ドライブRAIDコントローラーと5ディスクRAID6アレイを備えたDebianサーバーがあり、すべてLinuxの仮想マシンホストとして機能します。問題が発生し続けており、ディスクの破損が検出されていない可能性があります。

ホストとすべてのゲストの両方がIOシステムが120秒以上ブロックされた」と言っているクラッシュがいくつか発生しました。RAIDコントローラーの障害が疑われましたが、同じものと交換しました。同一のファームウェアで修正されませんでした。2番目のRAID1アレイが正常に動作し続けたため、修正されるとは思いませんでした。

約1週間前(日曜日)、これが機能していたとき、自動検証は66%でした。昨夜(金曜日の朝)は67%でした。起動前と起動後の両方、および問題が発生している間の両方。 tw_cli /c0/u0 stop verifyで検証をオフにすると、再び応答するようになりました。

約66%でディスク障害でスタックしたと思われます。自動検証は土曜日に始まります:

# tw_cli /c0 show verify
/c0 basic verify weekly preferred start: Saturday, 12:00AM

そして通常は金曜日までに長い間行われるでしょう。日曜日が66%、金曜日が67%だったことを考えると、偶然ではないでしょう。

すべてのドライブで「smartctl-a-d 3ware、0/dev/twa0」および「smartctl-tlong」(long SMARTセルフテスト))はエラーを明らかにしませんでした。tw_cli /c0 show alarmsも同様です。 。

ディスクが検出しにくい方法で壊れているのではないかと思いましたが、各ドライブをアレイから1つずつ取り出し、そこから「単一の」アレイを作成し、ゼロでいっぱいにしました。エラーを示したディスクはありませんでした。

または他のアドバイスはありますか?

編集:

これはレイアウトです:

# 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

問題の単位はu0です。

edit2:

tw_cli/c0 show diagは何か面白いものを示しています(edit3:これは無害です。Xが無効なポートであるsmartctl -a -d 3ware,X /dev/twa0を呼び出すことが原因であることがわかりました):

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)

たくさん食べますそれが何を意味するのか私にはわかりません。それがどのユニットやポートなのかさえわかりません。 (edit3:私は今知っています、それは無害です)。

私のedit3を考えると、私は正方形に戻ります。ベリファイが66%でハングし、アレイがハングすることを除いて、ディスクが壊れていることを示すものはありません。検証で障害が見つかるといいのですが...

13
Halfgaar

これまでに取り上げられなかった2つのこと:

  1. これはSATARAIDコントローラーですか?その場合、SATAケーブルは経年劣化する傾向があり、ケーブルを交換すると、このような問題を簡単に解決できる可能性があります。ほとんどの場合、これはディスクエラー、ラグ、タイムアウトが発生したときに試すことができますが、SMART値はすべて問題なく、ドライブはすべてのセルフテストに合格します。残念ながら、適切なSATAケーブルベンダーを見つけるのは困難です。
  2. 3Ware RAIDコントローラーは古く、最近はサポートされていません。ファームウェアのアップグレードもスペアパーツも入手できません。コントローラが故障した場合、一致するコントローラとファームウェアがないとRAIDを回復できない可能性があります。その場合、費用のかかるデータ復旧が必要になります。
1
flohack

以前は3wareコントローラーとSeagateドライブに問題がありました。微妙なファームウェアの非互換性があります。私はSamsungドライブに切り替えました、問題は解決しました。

0
Zdenek

念のため、ファームウェアのバージョンを教えてください。

次の要件が満たされたときに、私が経験した問題がありました。これは、あなたが説明していることとよく似ています。

  • 3ware 96xxシリーズコントローラ
  • RAID 6
  • 256kストライプサイズ
  • ファームウェアバージョン<v4.10.00.021 *

当時、利用可能なファームウェアの修正がなかったので、256kから64kのストライプサイズに移行しました。これも問題を解決しました。回避策として試すこともできますが、完了するまでに数日かかることは確かです。

後で256kの新しいファームウェア(* 4.10.00.021で修正されたと思います)を試しましたが、魅力的に動作しました。 4.10.00.027が最新バージョンです。

0
Acrklor

この問題は、読み取りエラーが発生し、セクターを再割り当てするか、RAIDコントローラーがドライブが停止していると想定してアレイから起動し、「劣化」とマークするまでアレイ全体をブロックしているディスクが原因である可能性があります。 (これは完全に問題のコントローラー次第です)。これは、ディスクが停止し始めてもSMARTを通過する場合によく発生する可能性があります。ほとんどのコンシューマディスクは、永久に読み取りを試行し続けます。

この問題は、 エラー回復制御 と呼ばれるものを使用してRAID宛ての一部のドライブで解決されます。 WDはこれをTLERと呼んでいます。サイトから:

RAID-specific time-limited error recovery (TLER) - Pioneered by WD, this feature prevents drive fallout caused by the extended hard drive error-recovery processes common to desktop drives.

基本的に、セクターを読み取れない場合は、x秒後にあきらめるようにディスクに指示します。データは別のディスクから復元できるため、これはRAIDに最適です。

私が読んだことから、ST32000542ASは、ERCのいかなる形式も実装していないため、それらのすべてがアレイ全体をブロックする可能性があります。 WD2002FYPSは実際にはWDのTLERを実装しているため、この問題は発生しません。

0