ZFS-RAIDZ-1は本当にそんなに悪いのですか?


18

RAID10構成の4x 2TB WD RE4-GPドライブを備えたNASサーバーがあります(4TB使用可能)。スペースが不足しています(使用可能なスペースが1 TB未満です)。私は、より大きな/より多くのドライブ/エンクロージャーに費やす$ 0を持っています。

ZFSのデータ整合性機能について読んだものが気に入っています。それだけで、既存のXFS(ソフトウェア)RAID10から切り替えるのに十分です。次に、ZFSのRAID5の優れた実装について読んだので、RAIDZ-1を使用すると、最大2TBの使用可能スペースを掘り出し物にすることができると考えました。

しかし、私は読み続け、よりより多くの ポストはほとんどちょうどRAIDZ-1を使用しないと言って。RAIDZ-2 +のみが、「現実の」ドライブ障害を処理するのに十分な信頼性があります。もちろん、私の場合、RAIDZ-2は意味をなしません。単一のプール(RAID10)で2つのミラー化されたvdevを使用することをお勧めします。

4x 2TBドライブにRAIDZ-1を使用したいのですか?

2つのミラー化されたvdev(基本的にRAID10)のプールを使用し、圧縮によって十分な追加スペースが得られることを期待する必要がありますか?

いずれにしても、圧縮を使用する予定です。RAMは最大8GBしかありませんので、重複除去はオプションではありません。

これは、ZFS-on-Linuxの安定性の問題を回避するために、FreeNASサーバー(現在のUbuntu OSを置き換えようとしている)上にあります。


これがどのようにトピック外であるかわからない。サーバーの適切なファイルシステム構成に関するアドバイスを求めています。
アンドリューエンスリー14年

また、RAID10と比較してRAIDZ1or2の書き込み速度が遅くなります
JamesRyan 14

2
速度を落とさずにパリティを計算するのに十分なCPUがある場合、ほとんどの書き込みでRAIDZはRAID10と同じかそれよりも速いはずです。RAIDZはすべてを完全なRAIDストライプに書き込みます。RAID5のような読み取り-変更-書き込みサイクルはありません。そのため、より多くのディスク帯域幅(より多くのデータ、より少ないオーバーヘッド)が得られ、書き込みはRAID10よりも高速になります。ただし、これには読み取りが遅くなることが多いという欠点があります。「毎回フルストライプを書き込む」と断片化が発生し、多くの小さな読み取りでディスクのサブセットのみを読み取る利点が得られません。これは、意識的な設計上の決定でした。
ダンプリッツ14

上で言ったことは部分的にしか真実ではありません。データベースサーバーなどの小規模な同時書き込みがある場合、RAID10ははるかに高速になります。RAIDZでは、すべてのディスクがすべての書き込みに対してアクティブです。RAID10はそれらを分割します。私が理解しようとしていたポイントは、RAIDZがRAID5のパフォーマンスを低下させ、潜在的に安全でない読み取り-変更-書き込みサイクルを排除することでした。
ダンプリッツ

RAIDZ2はRAID10よりも信頼性があります。RAIDZ2を使用すると、任意の2つのディスクに障害が発生しても、データを保持できます。RAID10では、2台のディスク(4台のディスクアレイ)で障害発生すると、データが失われる可能性があります。
クロー

回答:


21

詳細を説明する前に、ユースケースを検討してください。写真、MP3、DVDリッピングを保存していますか?その場合、アレイから単一ブロックを永久に失うかどうかは気にしないかもしれません。一方、重要なデータである場合、これは災害になる可能性があります。

RAIDZ-1が「現実世界の障害には十分ではない」という声明は、再構築の時期が来たときに、生き残ったディスクの1つで潜在的なメディアエラーが発生する可能性があるためです。同じロジックがRAID5にも適用されます。

ZFSはこの障害をある程度緩和します。RAID5デバイスを再構築できない場合、ほとんど運がありません。(残りの)データをコピーし、ゼロから再構築します。一方、ZFSを使用すると、不良チャンク以外はすべて再構築され、管理者はエラーを「クリア」できます。ファイル/ファイルの一部は失われますが、アレイ全体は失われません。そしてもちろん、ZFSのパリティチェックは、エラーがあることを確実に通知されることを意味します。そうしないと、複数のエラーによって再構築が明らかに成功する可能性はありますが、不正なデータが返される可能性はありますが(考えられませんが)。

ZFSは「Rampant Layering Violation」であるため、どの領域にデータがないかを認識し、再構築でそれらをスキップできます。したがって、配列が半分空の場合は、再構築エラーが発生する可能性が半分になります。

アレイの定期的な「zpool scrubs」または「mdadmチェック」を実行することにより、任意のRAIDレベルでこれらの種類の再構築エラーの可能性を減らすことができます。他のRAIDにも同様のコマンド/プロセスがあります。たとえば、LSI / dell PERC raidカードはこれを「パトロールリード」と呼びます。これらはすべてを読み取り、ディスクドライブが障害のあるセクターを見つけ、それらが永続的になる前に再割り当てするのに役立ちます。永続的な場合、RAIDシステム(ZFS / md / raidカードなど)がパリティからデータを再構築できます。

RAIDZ2またはRAID6を使用している場合でも、定期的なスクラブが重要です。

最後の注意点-RAIDはあらゆる種類のバックアップに代わるものではありません-偶発的な削除やランサムウェアなどから保護することはできません。通常のZFSスナップショットはバックアップ戦略の一部ですが、


その説明をありがとう。これは非常に理にかなっており、これまでにZFSについて学んだことと一致しています。私は実際にサーバーにFreeNASをリロードし、RAIDZ-1構成を使用しました。月に1回スクラブするように設定しています。これで十分だと思いますか、それとももっと頻繁にスクラブすることをお勧めしますか?
ramp延する

1
さまざまな年齢の7つのコンシューマードライブでraidz1を実行しています。2週間ごとにスクラブします。多くの場合、エラーを見つけて修正します。私は最近ドライブを失い、潜在的なエラーがあったファイルを失いました。幸いなことに、これは簡単に置き換えることができるメディアファイルでした。私の重要なデータについては、もちろんバックアップがあります。
ダンプリッツ14

私は指摘します-「ホーム」ドライブは、「エンタープライズ」グレードに対して2乗すると、回復不能なビットエラー率が2桁悪化します。RAID-5の複合故障率がまともなFC / SASドライブで許容できることは今でも非常に嬉しいです。ただし、SATAでは実行しません。
Sobrique

1
2つのシーゲイトドライブを比較する1桁のみ:Seagate ST2000DM001:10E14に1つ。ST2000NM0033:10E15に1つ。しかし、実際には、駆動機構が異なるかどうかを確実に言うのは難しいです。信頼できる情報源が反対の答えを与えると聞いた
ダンプリッツ14

2
システムで不良なSATAケーブルを発見しました-交換されてから、スクラブでエラーがゼロになりました。
ダンプリッツ

4

ここでは少し誤解があります。あなたが見ている多くのアドバイスは、真実でないかもしれない仮定に基づいています。具体的には、ドライブの回復不能なビットエラー率。

安価な「ホームユーザー」ディスクには、10 ^ 14の回復不能エラーレートごとに1つあります。

http://www.seagate.com/gb/en/internal-hard-drives/desktop-hard-drives/desktop-hdd/#specs

これは、RAIDの再構築中に回復不可能なエラーが発生する可能性が高いレベルにあるため、実行しないでください。(迅速で汚れた計算では、5TBの2TBディスクRAID-5セットが実際にこれの約60%の可能性があることを示唆しています)

ただし、これより高価なドライブに当てはまりませんhttp : //www.seagate.com/gb/en/internal-hard-drives/enterprise-hard-drives/hdd/enterprise-performance-15k-hdd/#specs

10 ^ 16あたり1つは100倍優れています。つまり、5倍の2TBは再構築に失敗する確率が1%未満です。(おそらく、エンタープライズでの使用には、600GBのスピンドルが一般的にはより便利だからです)。

個人的には-RAID-5とRAID-4の両方は、RAID-0がまだかなり一般的であるすべての理由から、非常に有用であると思います。忘れないでください-RAID-6の問題は書き込みのペナルティが大きいことです。多くのキャッシュでこれを部​​分的に軽減できますが、特に最初に低速のドライブで作業している場合は特に、いくつかの痛みが組み込まれています。

さらに基本的には、RAIDを信頼して完全な復元力を提供することは絶対にしないでください。ドライブの障害よりも「おっと」とデータが失われることが多いので、とにかくデータに関心がある場合は、適切なバックアップ戦略が必要です。


私は4台のWD RE4-GPドライブを使用していますが、これらのドライブには10 ^ 15個の回復不能な読み取りエラーがあります。
アンドリューエンスリー14

RAID6の書き込みペナルティは非常に現実的です。ただし、RAID-Z2はその影響を受けません。zfsはすべての書き込みをフルストライプにします。ただし、これには他の悪影響もあります。いくつかの理由により、読み取りパフォーマンスが低下する傾向があります。
ダンプリッツ

3

うーん、ここでいくつかの悪い情報。4つのディスクの場合、XFSに問題はありません。パフォーマンスと拡張性の理由から、ZFS RAIDZを避ける傾向があります(読み取り/書き込みが少ない、拡張できない)。可能であれば、ZFSミラーを使用します。ただし、4つのディスクがあり、OSを配置する場所がない場合、多くの容量が失われるか、OSとデータを同じ4つのディスクに合わせるために奇妙なパーティションゲームを行う必要があります。

おそらく、ユースケースにはZFSをお勧めしません。ここでXFSに問題はありません。


2
OSは別のドライブに存在することを忘れていました。ごめんなさい。XFS RAID10にないZFSに欲しいのは、サイレントデータエラーを検出(および透過的に修正)できるチェックサムデータ検証です(ドライブ上でビットが反転し、HDDにはわからない)。XFSでこれができるとは思わない。
アンドリューエンスリー14年

4つのディスクで、拡張する必要がある場合やパフォーマンスが重要な場合は、ZFSミラーを使用します。また、FreeNASを避けて、LinuxでストレートZFSを使用します。
ewwhite 14年

1
私自身はターミナルの男なので、GUIに切り替えることは絶対にありません。ほとんどの場合、保存されているファイルの整合性を(可能な限り)保証する安定したファイルシステムが必要です。そして、私はその過程でいくらかのスペースを獲得したいと思っていました。ZoLに関する多くの問題が報告されており、その多くはUbuntu OSのアップグレードに関連しています。groups.google.com/a/zfsonlinux.org/forum/#!searchin/zfs-discuss/…苦痛になろうとはしていません。考えていることを考える理由を説明するだけです。私は間違いなく修正を受け入れています。
アンドリューエンスリー14年

1
それはいいです。私はFreeNAS(FreeBSDではない)ではるかに多くの問題を見てきました。そこに情報があります。私はUbuntuのを使用していない、私はやる ZFSを知っています。Linuxでの私のZFSは通常RHELまたはCentOSを使用しています。ここだサンプルワークフローは
ewwhite

1
LinuxおよびCentos 6でZFSを使用しています。カーネルまたはZFSの自動更新を許可していません。ZFS / SCLボーキングに問題がありましたが、データが失われたことはありません。ちなみに、FreeBSDには同様のsolaris互換性ルーチンのセットがありますが、それらとZFSはディストリビューションに完全に統合されているため、すべてを連携させることが非常に簡単になります。ZFSとファイルサービスだけが必要な場合は、おそらくFreeBSDを実行するでしょう。実際、それは私が以前行っていたことですが、私はこのボックスを他のランダムなものに使用しているため、ZoLはより魅力的になりました。
ダンプリッツ14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.