Linuxマシンに3つの同一の内蔵7200RPMSATAハードディスクドライブがあります。私はこれらすべてを私に与えるストレージセットアップを探しています:
必須ではありませんが、便利です。
LinuxでZFSを試しましたが、制限は次のとおりです。
lVM2のext4はオプションのように見えますが、縮小、拡張、および新しいスピンドルRAIDタイプの論理ボリュームに再配布できるかどうかがわかりません(もちろん、多数のファイルでLVMを試すことができます)。私の知る限り、そこには便利なものがないので、もっと良いものがあるかどうか疑問に思いました。 LVMの危険性と警告 を見ましたが、繰り返しになりますが、完璧なシステムはありません。
あなたはあまりにも多くを求めています。これらは非現実的な要件です。特に、低速のコンシューマーディスクのトリオについて話している場合はそうです。何を計画していますか?
Linux上のZFS および4つのディスクを使用します。拡張について話している場合は、おそらく4つのデータディスク用のスペースがあります。 Linuxディストリビューションについては言及していませんが、CentOS6.xではアップグレードは問題になりませんでした。ミラーは拡張可能です。 RAID-Z1/2/3セットは単にそうではありません。ファイルシステムごとに圧縮を設定し、それで完了します。コピーすることでデータのバランスを取り直すことができます。しかし、より良い計画を立てれば、拡張の問題は制限にはなりません。これにより、圧縮、スナップショット、階層化、およびデータの整合性が得られます。 ZFSでの重複排除を忘れてください。あなたはおそらくそれを必要としないでしょう。その場合は、必要なリソース要件を計画する必要があります。
LinuxでのZFSの制限については、 ZFSストレージセットアップの計画の基本 を理解する必要があります。 ZILデバイスを使用して、書き込みIOPSを増やします。
HP Smart Arrayコントローラー ラインのようなハードウェアRAIDソリューションがあり、ドライブの単一グループでさまざまなRAID保護を可能にします...拡張中にデータを自動的に再バランス/再配布します。削減はできません。 HP論理ドライブをZFSのブロックデバイスとしてエクスポートできるため、ファイルシステムのメリットが得られますが、基盤となるハードウェアデバイスも賢く使用できます。以下の例では、zpoolsvol1およびvol2は、に対応する単一のデバイスで構成されています。 )logicaldrive 2およびlogicaldrive 3HP RAIDコントローラー出力から:
ZFSプール情報:
[root@ZFS-on-Linux ~]# zpool list
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
vol1 119G 48.2G 70.8G 40% 1.00x ONLINE -
vol2 99.5G 42.6G 56.9G 42% 1.00x ONLINE -
HP RAIDコントローラー出力:
Smart Array P400 in Slot 8 (sn: P61630G9SVN702)
array A (SAS, Unused Space: 609621 MB)
logicaldrive 1 (72.0 GB, RAID 1+0, OK)
logicaldrive 2 (120.0 GB, RAID 1+0, OK)
logicaldrive 3 (100.0 GB, RAID 5, OK)
physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 146 GB, OK)
physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 146 GB, OK)
physicaldrive 1I:1:3 (port 1I:box 1:bay 3, SAS, 146 GB, OK)
physicaldrive 1I:1:4 (port 1I:box 1:bay 4, SAS, 146 GB, OK)
physicaldrive 2I:1:5 (port 2I:box 1:bay 5, SAS, 146 GB, OK)
physicaldrive 2I:1:6 (port 2I:box 1:bay 6, SAS, 146 GB, OK)
physicaldrive 2I:1:7 (port 2I:box 1:bay 7, SAS, 146 GB, OK)
physicaldrive 2I:1:8 (port 2I:box 1:bay 8, SAS, 146 GB, OK)
上記の2つを組み合わせると、要件のほとんどが得られます。
それはあなたが持っているかなりのウィッシュリストです。
Linux md RAID( mdadm )+ LVMは、ほとんどの要件を満たしますが、便利なものはほとんどありません。
ディスクをパーティションに分割できます。異なるパーティション間で異なるレベルでmdRAIDを実行します。 md RAIDボリュームをLVMボリュームグループに配置し、VGから論理ボリュームを作成します。 LVにファイルシステム(ext4など)を配置します。 LVMがない場合は、mdRAID1を起動できます。したがって、/ bootにはLVMなしのRAID1を使用します。 md RAIDボリュームは縮小し、 grow ディスクの追加を購入します。 [〜#〜] lvm [〜#〜] および ext4 も同様です。
LVMはスナップショットを作成できます。ただし、これらはネイティブCOWではないため、スナップショットが同じ物理ディスクを使用している場合は パフォーマンスペナルティ が発生します。これらは、ZFSのような無制限のスナップショットではなく、バックアップへの特定の時点の一時キャプチャに最適です。
次のようになります。
sda1 + sdb1 + sdc1 = md0 RAID1
sda2 + sdb2 + sdc2 = md1 RAID10 (yes, you can do odd numbered RAID10)
sda3 + sdb3 + sdc3 = md2 RAID5
sda4 + sdb4 + sdc4 = md3 RAID0
md0 = no LVM, format as ext4, mount as /boot
md1 = LVM, divide into two LVs
Format one LV as ext4, mount as / (root)
Use other LV for swap
md2 = LVM, create one LV
make the LV is smaller than the VG, to leave space for snapshots
Format the LV as ext4, mount as /data
md3 = LVM, one LV taking the whole VG
Format as ext4, mounts as /stuff_i_want_to_lose