多くの2 TBディスク、現在すべてLVM内にあるため、約10 TBの領域が生じます。ext4でこのすべての領域を使用します。パーティション、現在約8,8 TBのデータがあります。
問題は、ディスクでエラーが頻繁に発生することです。エラーが発生するとすぐに、ディスクを交換しても(つまり、古いディスクをddを使用して新しいディスクにコピーし、新しいディスクをサーバーに挿入します)、その上に破損したデータが約100 MBもよくあります。そのため、e2fsckは毎回狂ってしまい、ext4ファイルシステムを正常な状態に戻すのに1週間かかることがよくあります。
だから質問は次のとおりです:LVMでファイルシステムとして使用することをお勧めしますか?または代わりに何をお勧めしますか(実際にはLVMは必要ありません)。
私のファイルシステムのプロファイル:
主な問題はディスクの障害です。一部のファイルは失われる可能性がありますが、すべてを同時に失うわけにはいきません。
Ext4を使い続けると、小さいファイルシステムを作成して、なんとかして "マージ"するのが最善だと聞きましたが、方法がわかりません。
Btrfsはいいと聞きましたが、データがレプリケートされていない場合に、ディスクの一部(またはディスク全体)がどのように失われるかについての手がかりはありません(mkfs.btrfs -d single
?)。
質問に対するアドバイスは歓迎します、事前に感謝します!
これはファイルシステムの問題ではなく、ディスクの物理的な制限です。ここにいくつかのデータがあります:
SATAドライブは通常、10 ^ 14の回復不可能な読み取りエラー率(URE)で指定されています。つまり、ディスクが正常に動作しても、12 TBあたり1バイトが回復不能に失われます。
つまり、RAIDがないと、ドライブが故障していなくてもデータが失われます-RAIDが唯一のオプションです。
RAID5(総容量n-1、n =ディスク数)を選択しても、それでも十分ではありません。 6 TBの2 TB HDDで構成される10 TB RAID5を使用すると、1つのドライブが故障する確率が20%になり、単一のディスクが故障すると、UREにより50%の確率で正常に故障するRAID5を再構築し、データの100%を回復します。
基本的に、大容量のディスクと比較的高いUREを使用する場合、単一のディスク障害が発生しても、RAID6を保護する必要があります。
これを読んでください: http://www.zdnet.com/blog/storage/why-raid-5-stops-working-in-2009/162
自分の都合で、ディスクにRAIDを使用してください。mdadmを使用したソフトウェアRAIDも可能です。また、「ディスクでエラーが発生することが多い」理由についても考えてください。RAIDグレードのディスクの代わりに安価なデスクトップクラスのSATAドライブを使用する場合を除いて、これは正常ではありません。
その後、ファイルシステムはそれほど重要ではなくなりました。ext4、xfsはどちらも優れた選択肢です。
私はZFSで幸運を祈っています。使用しているディストリビューションで使用できるかどうかを確認できます。公正な警告、それはおそらくシステム全体を再構築することを意味しますが、それは本当に良いパフォーマンスとフォールトトレランスを提供します。
より大きなサイズの新しいディスクを徐々に追加します
LVMの使用に興味があり、複数のドライブを処理したい場合、簡単な答えは、LVMの一部であるミラー機能を使用することです。すべての物理ボリュームをLVMに追加するだけです。論理ボリュームを作成するときは、--mirrors
オプション。これはデータを複製します。
別のオプションは、いくつかのRAID1ペアをセットアップすることです。次に、すべてのRAID1ボリュームをPVとしてVGに追加します。その後、ストレージを拡張したい場合は、ディスクのペアを購入するだけです。
実際にはRAID 5、6、10、50、または60を使用している必要があります。ここに、始めるためのリソースをいくつか示します。
RAIDに関する背景情報
howto's&setup
その他のRAIDリンクについては、おいしいリンクを確認してください。 http://delicious.com/slmingol/raid
データの破損が本当に心配な場合は、zfsやbtrfsなどのチェックサムファイルシステムをお勧めします。ただし、btrfsはまだin-development本番環境ではありません。
ディスクから読み取られたデータ(正常に読み取られた場合でも)が正しいという保証はありません。ブロックにはチェックサムがありますが、それらは常にエラーをキャッチするわけではない単純なチェックサムです。 ZFSのような新しいファイルシステムは、より機能的なチェックサムをファイルに添付し、ハードディスクやRAIDコントローラーでは気付かれないデータエラーをキャッチして修復できます(報告されています)。
@ c2h5ohが言う のように、Unrecoverableは重要です-これは、ディスクがすでにセクターを再試行し、再読み取りに失敗したことを意味します。
私の経験では、ディスクが回復不可能な読み取りエラー(URE)を生成し始めると、一部のデータは永久に失われ、あなたの唯一の望みは GNU ddrescue を使用してすべてのデータをすぐにバックアップすることです。回復不可能なものはスキップしてください。
バックアップがあると仮定すると、UREが原因で失敗した可能性があり、ファイルが破損している可能性があるため、同じファイルシステムのさまざまなバックアップからデータの完全なセットをつなぎ合わせる必要があります。
ZFSを推奨するその他の回答は、継続的なデータスクラブとRAID機能が将来のデータの安全性を維持するのに役立つため、一読に値します。ただし、ユーザーや管理者のエラーから保護するバックアップの代わりにはなりません。
私はLVMを使用するのは、スナップショットが必要ない場合のみです。RAIDとはあまり統合されておらず、データスクラブ/データチェックサムが含まれておらず、それでもバックアップが必要なので、ZFSのようなものがおそらくより良いオプションです。詳細は LVMの問題とリスクに関するこの回答 を参照してください。