web-dev-qa-db-ja.com

mdRAID6の再構築中に1つのディスクが他のディスクよりも多くアクセスされた

(「md」LinuxソフトウェアRAIDを使用して)8ドライブRAID6の1つのドライブを再構築していますが、おそらくドライブの1つが2回送信されているため、速度が遅くなっているように見えることに気付きました。他と同じように多くのIOPS:

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda             155.00     77252.00         0.00      77252          0
sdb             153.00     76736.00         0.00      76736          0
sdc             154.00     77248.00         0.00      77248          0
sde             154.00     77248.00         0.00      77248          0
sdf             164.00     77288.00         0.00      77288          0
sdd             154.00     77248.00         0.00      77248          0
sdg             287.00     83160.00         0.00      83160          0
sdh             146.00         0.00     74240.00          0      74240

(sdhは再構築中であり、sdgは私が予想するよりも多くのIOPSを取得しています)。

(mdadm/dev/md1 --add/dev/sdh4を使用して、既存のドライブに障害が発生/削除されたため、交換用ドライブを追加しました)。

(私が思うに)私が排除したもの:

  1. すべてのドライブのパーティションレイアウトは同じです(sgdiskを使用してコピー)。

  2. sda-sdgは、同じモデル番号の同一のドライブです(sdhは新しいものです)。

  3. すべてのドライブの先読み、ブロックサイズ、マルチカウントを確認しましたが、sdpが他のドライブと比較した場合の違いを見つけることができません。

  4. 同じマシンでの別の再構築でも同じ問題が発生したため(sdgへのアクセスが増える)、今回は事前に書き込みインテントビットマップを削除しましたが、それでも問題は解決しませんでした。

  5. ボード(ASRock P67 Extreme6)には、奇妙なことに異種のSATAプロビジョニングがあり、2つのSATA3ポートと6つのSATA6ポート(チップセットから2つ、オンボードのMarvell SE9120インターフェイスから4つ)があります。 sdgがeSATAソケットと共有されているポートにある可能性はありますが、他と同じようにUDMA6を使用していると主張しているため、どのような影響があるのか​​わかりません。

Sdgのtps(IOPS)が他の2倍である理由はありますか?

更新:さらなる説明:

  1. ドライブは3年前の3TBSeagate Barracudasです(私は通常、ドライブブランドの逸話には関与しませんが、8台のドライブの1つに障害が発生し、他の3台(sdgではない)が悪い兆候(回復不能なエラー、複数再割り当てされたセクター):これらは私が今まで使用した中で最も信頼性の高いドライブではありません) `それらはPMRを退屈させていると確信しています。

  2. RAIDが回復すると、アクセスはすべてのディスクに均等に分散され、各ドライブのIOPS数は同じになります。したがって、リンク速度が関連しているとしたら、私は驚きます(ただし、mdは奇妙な「最適化」を行っている可能性があります)。

  3. RAIDが回復を完了する前に、「iostat x」の出力を取得する機会がありませんでしたが、メモリから、sdgは100%使用率であり、要求キューのサイズが大きく(100秒)、他の使用率は50〜60%で、リクエストキューのサイズは1桁でした。

それがコントローラー/ mdであるかドライブであるかを完全に排除するには、sdgと別のドライブを交換する必要があると思います。

更新#2:異なる再構築、同じ問題

今回はsdbを再構築しています:

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda           13813.00     0.00  184.50    0.00    54.06     0.00   600.11    23.60  114.11  114.11    0.00   2.49  46.00
sdb               0.00 12350.50    0.00   97.50     0.00    48.62  1021.37     0.17    1.70    0.00    1.70   1.31  12.80
sdd           12350.00     0.00   98.00    0.00    48.62     0.00  1016.16     5.47   55.82   55.82    0.00   2.82  27.60
sdc           12350.00     0.00   98.00    0.00    48.62     0.00  1016.16     5.92   60.41   60.41    0.00   2.84  27.80
sde           12350.00     0.00   98.00    0.00    48.62     0.00  1016.16     6.11   62.39   62.39    0.00   3.02  29.60
sdf           12350.50     0.00   97.50    0.00    48.62     0.00  1021.37    14.56  149.33  149.33    0.00   3.92  38.20
sdg           12350.00     0.00   98.00    0.00    48.62     0.00  1016.16     7.18   73.31   73.31    0.00   3.16  31.00
sdh           12350.00     0.00   98.00    0.00    48.62     0.00  1016.16     5.27   53.80   53.80    0.00   2.88  28.20

ご覧のとおり、sdaは他のアクセスよりもはるかに多くのアクセスを取得しています(sdaが100%の使用率に達しないように調整していますが、そうでない場合はそうなります)。興味深いことに、sdaの「avgrq-sz」(平均リクエストサイズ)は低く、余分なアクセスがはるかに小さいことを示唆しています。今、私はそれらが何であるかを理解する方法を見つける必要があります!

2
jonny5532

私の最初の推測では、mdsdgの問題を特定し、それからデータを「より早く」プルして、それも置き換えることができるようにしようとしていました。

ただし、これはmdの動作方法ではありません(一部のハードウェアコントローラーがこれを実行する可能性があります-不明です)。

アレイ内の多くのドライブは再構築を遅くします pdf -rebuildの観点からは、アレイ内のドライブが少ないほど「優れています」。

さらなる調査は、考えられる結論といくつかの後続の質問の両方につながります。

  • ドライブのサイズは?
  • それらはどのタイプですか?エンタープライズまたはデスクトップですか?
  • wD、Seagate、Hitachi、その他、ミックスのブランドは何ですか?
  • アレイにはどのタイプのドライブがありますか(PMRまたはSMR)?

Seagateドライブのこの review から、SMR( denser-packed )ドライブを使用した再構築は、PMRの方が一貫しているのに対し、速度が異常に一貫していないようです。

私の暫定的な結論は

  1. 異なるSATAポート速度はここでは役に立ちません-それは、関係するすべての人にとって明らかなはずです:)
  2. アレイ内に異なるブランドのドライブがあるか、それらが非常に大きいか、再構築を処理するように設計されていない " better "(PMR)-または上記の組み合わせ
1
warren