LinuxでSSD / NVMEフレンドリーなMD RAID1を再構成する

LinuxでSSD / NVMEフレンドリーなMD RAID1を再構成する

SSDとNVME RAID1アレイを使用して、ほとんどの仮想マシンディスクを保存します。データの75%以上が0です(事前に割り当てられた画像、空き容量)。

ディスクに障害が発生して交換されると、再構築時にすべてのデータが交換ディスクにコピーされ書き込まれ、NVMEに熱調整が発生し、SSD / NVMEにさらに摩耗が発生すると想定されます。まず、両方のディスクのデータを比較し、必要な場合にのみ新しいディスクに書き込むように再構築を構成する方法はありますか?

または、SSD / NVMEチップがデータがゼロであることを確認し、ターゲットブロックがまだ作成されていない場合(読み取り時にゼロが提供される)、書き込みサイクルを無駄にせずにデータを削除する必要がありますか?または、ターゲットデータがある場合は、ゼロが生成されるようにブロックを切り捨てる必要がありますか?

古いスレッドを見つけましたhttps://www.spinics.net/lists/raid/msg57529.html しかし、答えは与えません。

解決策を試しましたが、状況が悪いため、RAIDをオフラインにする必要があると思います。

mdadm --fail /dev/md0 /dev/sde
mdadm -r /dev/md0 /dev/sde

(/dev/sde 交換)

mdadm -S /dev/md0
ddpt if=/dev/sdd of=/dev/sde verbose=1 oflag=sparing
mdadm -C -v /dev/md0 --assume-clean -l 1 -n 2 /dev/sdd /dev/sde

書き込みとRAID1の再構築を比較することについてどう思いますか?ありがとうございます。

ベストアンサー1

最も簡単な答えは「いいえ」です。

mdドライバはパフォーマンスに合わせて調整されました。レイド1メンバーの同期を維持するための簡単なダーティマップがあります。

したがって、メンバーが失敗すると、マップ全体が汚れます。 md はブロックベースなので、ブロックの内容に気を使わずにブロックをコピーし、そのブロックのダーティビットをクリアします。

KISS原則_簡単にしてください。他のものはより高いレベルにあります。

必要に応じて、md raid1の代わりに2つのローカルメンバーでdrbdを使用できます。 DRBDは同期前の検証方法を提供します。

おすすめ記事