ホームページ » の仕方 » Linux用Zファイルシステム(ZFS)の紹介

    Linux用Zファイルシステム(ZFS)の紹介

    ZFSは、クラウドよりも自分自身の冗長ストレージシステムに信頼を置くことを好むデータ保有者、NAS愛好家、およびその他のオタクによって一般的に使用されています。複数のデータディスクを管理するために使用するのに最適なファイルシステムであり、いくつかの優れたRAID設定に匹敵します。.

    ケニー・ルイによる写真.

    ZFSとは何ですか?なぜそれを使用すべきなのか?

    Zファイルシステムは、Sun MicrosystemsがSolarisオペレーティングシステム用に開発した、フリーでオープンソースの論理ボリュームマネージャです。その最も魅力的な機能のいくつかは次のとおりです。

    無限のスケーラビリティ

    まあ、それは違います 技術的に 終わりはありませんが、それはゼタバイト(10億テラバイト)のデータを管理できる128ビットのファイルシステムです。ハードドライブの空き容量に関係なく、ZFSはそれを管理するのに適しています。.

    最高の完全性

    ZFSの内部で行うことはすべて、ファイルの整合性を保証するためにチェックサムを使用します。あなたのファイルとそれらの冗長なコピーがサイレントなデータ破壊に遭遇しないことをあなたは安心することができます。また、ZFSはデータの整合性を静かにチェックしている間はいつでも自動修復を実行します。.

    ドライブプール

    ZFSの作成者は、あなたがそれをあなたのコンピュータがRAMを使う方法に似ていると考えることを望みます。あなたがあなたのコンピュータのより多くのメモリを必要とするとき、あなたは別の棒を入れて、あなたは終わりました。 ZFSと同様に、もっと多くのハードドライブスペースが必要なときは、別のハードドライブに入れれば完了です。ディスクのパーティション分割、フォーマット、初期化、その他の作業に時間を費やす必要はありません。より大きなストレージ「プール」が必要な場合は、ディスクを追加するだけです。.

    RAID

    ZFSは、さまざまなRAIDレベルに対応しながら、ハードウェアRAIDコントローラに匹敵するパフォーマンスを提供します。これにより、コストを削減し、セットアップを容易にし、ZFSが改善した優れたRAIDレベルにアクセスできるようになります。.

    ZFSをインストールする

    このガイドでは基本を説明しているだけなので、ZFSをルートファイルシステムとしてインストールすることはしません。このセクションでは、ext4などのファイルシステムを使用していて、セカンダリハードドライブにZFSを使用することを想定しています。これは、最も人気のあるLinuxディストリビューションにZFSをインストールするためのコマンドです。.

    SolarisとFreeBSDにはすでにZFSがインストールされており、使用する準備ができているはずです。.

    Ubuntu:

    $ sudo add-apt-repository ppa:zfs-native / stable
    $ sudo apt-get update
    $ sudo apt-get install ubuntu-zfs

    Debian:

    $ su -
    #wget http://archive.zfsonlinux.org/debian/pool/main/z/zfsonlinux/zfsonlinux_2%7Ewheezy_all.deb
    #dpkg -i zfsonlinux_2〜wheezy_all.deb
    #apt-get update
    #apt-get install debian-zfs

    RHEL / CentOS:

    $ sudo yum localinstall --nogpgcheck http://archive.zfsonlinux.org/epel/zfs-release-1-3.el6.noarch.rpm
    $ sudo yum install zfs

    他のディストリビューションをお持ちの場合は、zfsonlinux.orgをチェックし、ZFSのインストール方法については、「パッケージ」リストの下のディストリビューションをクリックしてください。.

    このガイドを続けるうちに、Ubuntuを使用するつもりです。なぜなら、それがLinuxオタクにとって一番の選択だと思われるからです。 ZFSコマンドは異なるディストリビューションにまたがって変化しないので、あなたはまだ何に関係なく従うことができるはずです.

    インストールにはかなり時間がかかりますが、完了すると実行します。 $ sudo zfsリスト 正しくインストールされていることを確認するため。次のような出力が得られるはずです。

    現在、Ubuntuサーバーのフレッシュインストールを使用しています。ハードドライブは1台だけです。.

    ZFSを設定する

    それでは、さらに6台のハードドライブをコンピュータに取り付けたとしましょう。.

    $ sudo fdisk -l | grepエラー インストールしたばかりの6台のハードドライブが表示されます。それらはどんな種類のパーティションテーブルも含まないので、それらは現在使用不可能です。.

    前述したように、ZFSの優れた点の1つは、パーティションを気にする必要がないということです(ただし、必要に応じて可能です)。次のコマンドを実行して、3つのハードディスクを取り出し、それらをストレージプールに入れることから始めましょう。

    $ sudo zpool create -f geek1 / dev / sdb / dev / sdc / dev / sdd

    zpool create 新しいストレージプールを作成するために使用されるコマンドです。, -f 発生したエラーを上書きします(ディスクにすでにエラーがある場合など)。, オタク1 ストレージプールの名前です。 / dev / sdb / dev / sdc / dev / sdd プールに入れたハードドライブは.

    あなたがあなたのプールを作成した後、あなたはそれでそれを見ることができるはずです df コマンドまたは sudo zfsリスト

    ご覧のとおり、/ geek1はすでにマウントされており、使用する準備ができています。.

    プールに選択した3つのディスクを確認したい場合は、次のコマンドを実行します。 sudo zpoolステータス

    これまでに行ったことは、9 TBの動的ストライププール(事実上、RAID 0)を作成することです。それが何を意味するのかよくわからない場合は、/ geek1に3 KBのファイルを作成したとします。 1 KBは自動的にsdbに、1 KBはsdcに、そして1 KBはsddに自動的に送られます。それから、3 KBのファイルを読みに行くと、3つのドライブの速度を合わせて、各ハードドライブから1 KBが提示されます。これはデータの読み書きを高速にしますが、単一障害点があることも意味します。ハードドライブが1台だけ故障した場合、3 KBのファイルが失われます.

    データに素早くアクセスするよりも、データを保護することが重要であると想定して、他の一般的な設定を見てみましょう。まず、作成したzpoolを削除して、より冗長な設定でこれらのディスクを使用できるようにします。

    $ sudo zpoolがgeek1を破壊する

    バム、私たちのzpoolはなくなった。今回は、3つのディスクを使ってRAID-Zプールを作成しましょう。 RAID-Zは基本的にRAID 5の改良版です。コピーオンライトを使用することで「書き込みホール」を回避できるためです。 RAID-Zは最低3台のハードドライブを必要とし、RAID 0とRAID 1の間の妥協のようなものです。RAID-Zプールでは、依然としてブロックレベルストライピングの速度を得ることができますが、分散パリティもあります。プール内の1つのディスクが停止した場合は、そのディスクを交換するだけで、ZFSは他のディスクからのパリティ情報に基づいてデータを自動的に再構築します。ストレージプールのすべての情報を失うには、2台のディスクが死ぬ必要があります。さらに冗長にするために、RAID 6(ZFSの場合はRAID-Z2)を使用し、二重パリティを使用することができます。.

    これを達成するために、私達は同じを使用することができます zpool create 前と同じコマンド Raidz プールの名前の後に:

    $ sudo zpool create -f geek1 raidz / dev / sdb / dev / sdc / dev / sdd

    ご覧のように, df -h 3 TBがパリティ情報を保持するために使用されているため、9 TBプールが6 TBに削減されたことを示しています。とともに zpoolステータス コマンド、私たちのプールは以前とほとんど同じであることがわかりましたが、現在RAID-Zを使用しています.

    ストレージプールにさらにディスクを追加するのがいかに簡単かを示すために、他の3つのディスク(別の9 TB)を別のRAID-Z構成としてgeek1ストレージプールに追加しましょう。

    $ sudo zpool add -f geek1 raidz / dev / sde / dev / sdf / dev / sdg

    私たちはに終わる:

    佐賀は続く…

    ZFSの表面とその機能についてはほとんど説明していませんが、この記事で学んだことを使用して、データの冗長ストレージプールを作成できるはずです。 ZFSに関する今後の記事については、私たちと一緒にチェックしてください。manページを見てください。そして、ZFS機能をカバーする無限のニッチ・ガイドやYoutubeビデオを探してください。.