HOME / 日記 / ノートPCをZFSのミラー機能で幸せにする

Date: 2010/02/14 |  このエントリーをはてなブックマークに追加  |  Tags: Solaris, OpenSolaris, Howto, 利用法

ノートPCをZFSのミラー機能で幸せにする

ZFSのいろんな便利な機能は多々ありますが、ノートで使うメリットも色々あります。

たとえば、ZFS自体のSoftRAIDが、事実上、RAIDでも防げないファイルシステムレベルでのデータ破損を回避してくれたりとか・・・。一般にSATAでは15Tビットデータ転送につき1ビット、SASでは150Tビット転送につき1ビットのデータ化けが起きているそうです。ノートPCの2.5inchのSATAはもっと壊れやすい気もします。

ZFSは冗長性が全くなくてもファイルの破損を検出します。SoftミラーやSoftRAID(RAIDZやRAIDZ2)をする場合は、この冗長性を使って修復します。一般的なRAIDはファイルシステムは保証せず、ディスク単位の破損しか耐えることは出来ません。ZFSのファイルシステムレベルの修復は、「RAIDはハードの方が良いに決まってる!」と思っていた僕のようなハードRAID信者の心を揺さぶり、「そうとも言い切れないかなぁ・・・」とどちらが良いか論になってしまったりしました。SSDをZILに使ったりすると、さらに。

さて。いまさらZFSの話をかくほどのことでもないのですが、ノートで利用するメリットがあります。

以前、ディスク1台しか使っていないのに、ディスクのリプレースが出来ますよというのをこちらで書いたわけですが、これもあまり見ない仕様ですよね。この機能などは、うまく使うと、物理的に振動などで壊しやすいノートのHDDのリプレースにむいてるわけですが、ZFSがどうしてこんなことが出来るかと言えば、やっぱりサーバ利用でも有用なのでしょう。たとえばSAN接続されたストレージの上に乗ったファイルシステムを止めずに収容機の差し替えができますよね。

ほかにも普通のストレージ感覚だと見慣れない機能があります。

たとえば通常、ミラー化されたディスクでは、同期が破損すると「1から同期のやり直し」になることが大半です。ディスクを強制的に抜いたりした場合、再び全部の同期が始まります。

ところが、ZFSのミラーでは、「変更された部分だけ」同期が走ります。便利ですよね?これが何が便利かというと、2つのSANストレージからもらったボリュームをFSの層で束ね、どちらか2つが「一時的に」死んでも、ファイルシステムを維持出来るからです。SANのクラスタリング技術は色々あるし、OpenSolarisでもHA Clusterや、COMSTARを使えば出来るのですが、ディスクの量さえ許せば割とシンプルな実装が出来ます。

これをノートPCに応用すると、こんなことができます

  • 会社(や自宅)にはUSBの外付けHDD
  • そのUSBの外付けHDDと内蔵のディスクをミラーにしておく。
  • 出先ではそのディスクを外す。

こうしておくと、会社に戻って接続するたびに「差分だけミラー同期」が掛かります。ノートPCのHDDが貧弱なのは、皆さんもご存じかと思いますが、ある時期はノートにしか無い情報があったりして、どきどきしたりすることもあるとは思います。ああ、さっさとバックアップ取らないと・・・・みたいな。

実は、これ、何も考えずに普通にRAIDするだけで出来ます

  • 変更点の差分しか再同期(resilvering, zpool status -vで見る)しない。
  • USBディスクはいきなり外しても、まぁ大丈夫。念のためzpool offline 〜する方法もあるが、しばしば忘れてるが、問題が起きたことは今のところ無い。
  • USBディスクを付けると、さっさと同期をはじめる。
  • ZFSの書き込みプロセスの特性上、USBディスクと内蔵SATAディスクの速度の解離があっても、まぁまぁ気にならない速度で利用出来る。勿論強烈に速度差があると引っ張られますが、ZILとL2ARCをつければ更に・・・。
  • 3面ミラーも可能。拠点A、拠点B、ノートPCの同期もOK。
  • ノートは割とUSBストレージから起動出来る(内蔵HDDが死んでも、外付けUSBHDDから起動して内蔵HDDを復元することが可能)

などなど、実はこれはネット越しにアレコレとか、色々、エッジーな利用方法があるのですが、これはまた今度書きます。

コレのお陰で、データのロストはほぼ無くなりつつあります。USBのHDDの替わりにiSCSIのボリュームを使う方法もあるのですが、これは別の理由で、ちょっと面倒なオペレーションが必要になります。

ZFSは実運用の工夫で、案外いろんなことが出来るのが嬉しいですよね。

予定にあるデータ暗号がつけば、もっとノートでも安心出来るわけですが・・・。

今回は、具体的なコマンドラインを示さなかったので、またいずれ。



日記

Recent Updates