前回から長いこと放置してしまったわけですが、そろそろ本格的にZEVOを導入したくなってきたのでちゃんと検証してみようかと。
そんなこんなしてる間にZFS on Linuxもstableになったり長らく休眠してたMacZFSも更新されてたりしますが、ZEVOは相変わらず1.1.1のままなので特に取り巻く状況は前回から変わらず。
本格的に使っていくにあたって、検証しておきたいこととしては
・本家SolarisのZFSv28と比較し各機能(サブコマンド・Snapshot等)はどれだけ実装できているか?
・SolarisやZFS on Linuxとの相互利用はどれだけ可能か?(緊急時のサルベージを考慮して)
・現在使っているオレオレバックアップスクリプトは動くか?
・パフォーマンスは実用レベルか?
・不安定になったり、特定の操作でカーネルパニックになったりしないか?(重要)
・データ消えない?(最重要&しかし完全検証不可)
・リソースフォークや拡張属性、AppleDoubleの動作がどうなっているか
・大文字/小文字の区別やUnicode正規化など、HFS+と同様に扱えるか
といった点が挙げられますが、ZFS独自のメリットを享受する以前にHFS+で動いていたものが動かなくなると大変なので、まずは後ろ2つについて検証してみる。
2013/07/30
2013/02/06
ICONIA W510Dを買った。
タイトルそのまんま。土日特価で63kだったので飛びついてしまった。
昨年書いたアレで熱望したとおり、個人的な本命はClover Trail(Atom Z2760搭載)のUMPCだったわけだが、待ちきれずにタブレットに手を出すことに。
そう遠くないうちにUMPC出るんじゃないかなーと思っていたものの、CESでも特に(タブレット以外の)Clover Trail機に関する噂が全然無かったため近いうちに出ないであろうということ、夏以降に出るようだと年末のBay Trail(Clover Trail後継)が見えてきてしまう、といった状況を鑑みた結果でもある。
だったら単純に買い控えろよ、というところなのだが、MacBook Air→VAIO Duoで若干大型化&ヘビー化した分だけサブでもっと軽いモバイルPCが欲しかったのと、色々あってiPad2を手放すことになったのでどうせRetina iPadやiPad miniを買うくらいならWindows 8タブレットにしてやろうということに。
それと、店頭でたまたま見かけたARROWS Tab Wi-Fiが「これがWindows!?」と思うほど小さくて薄くて軽かったため衝撃を受けたというのもある。もっと軽いUMPCを使ってたりもしたんだけど、ノートPCを凝縮したようなUMPCと、iPadがそのままWindows機になったようなタブレットとでは衝撃のベクトルが違った感じ。
そしてWindows 8タブレットとなると大量に出ているわけだが、じゃあどれを買うかとなるとどれもIntelリファレンス準拠なので似たり寄ったり。
http://pc.watch.impress.co.jp/docs/column/ubiq/20130131_585848.html
ここで非常に良くまとまっているのであえて各種タブレットを比較する必要は無いのだが、自分の場合選定基準となったところとしては
・液晶サイズ:11.6型以外(Duoと被るため&小さくて軽い方が良い)
・重量:600g未満
くらい。フルサイズUSB・HDMIとかも気にしない。デジタイザーとかもDuoにあるし別にいいやという感じ。
とはいっても600g未満のモデルも限られるので
・ASUS VivoTab Smart ME400C・Acer ICONIA W510/W510D
・富士通 ARROWS Tab Wi-Fi
・Lenovo ThinkPad Tablet 2
この4つのどれか、という感じになった。
まずは高い割に個人的にはツボになる要素が無かったThinkPad Tablet 2が脱落。
富士通好きなのでARROWS Tabかなーと最初は思ったものの、特徴が防水くらいで、風呂で使えるのはいいが実際電波弱くてテレビとか見られんだろうしと思って脱落。
あとはとかく安いVivoTab Smartかキーボードドック付きモデルがあるICONIA W510のどちらかという感じに。
キーボード無しならどちらも同じようなものなので安いVivoTab Smartでいいのだが、+10kで拡張バッテリー兼キーボードが付いてくるのはお得な気がしたのでICONIA W510Dに決定。
実際のところキーボードを付けるとDuoよりもの凄くバッテリーが持ってもの凄く性能が低くてほんの少し軽い残念なノートPCになってしまうのだが、最初からキーボード頼りではなく豪勢なドックだと思えばまあいいかなと。
Ultrabookクラスの性能になると「画面だけ取り外しても使える」のは結局キーボードごと持ち歩くことが常態化し荷物を重くするだけだが、Atomクラスだと「キーボードを付けても使える」くらいで基本的にはキーボード不要の作業が中心になると考えられるため、キーボードが足かせになることは多分無いだろう。
というわけで今日(5日)届いて夜遅く帰ってきてようやく触れているわけだが、BIOSアップデート後のトラブルに巻き込まれ悪戦苦闘中で全然遊べていない・・・
思えば今まで自分用PCはAppleかソニーか富士通だったので、Apple以外の海外製PCは初めてである。ある程度のトラブルは覚悟する必要があるだろう。
とはいっても、W510Dにチープな感じはまったくなく、Appleっぽい丁寧な梱包にVAIOじゃ数千円オプションになりそうな洒落たケース(本体のみ・ドッキング時両対応)も付いてたりと持つ喜びを感じさせてくれる。最近は変わったかもしれないが、直販モデルだと素っ気ない段ボール箱に一式ぶっ込んでくる富士通はちょっと見習ってほしいw
就活真っ只中なのでこんなオモチャで遊んでいる場合ではないのだが、これから色々と楽しませてくれそうなPCである。
昨年書いたアレで熱望したとおり、個人的な本命はClover Trail(Atom Z2760搭載)のUMPCだったわけだが、待ちきれずにタブレットに手を出すことに。
そう遠くないうちにUMPC出るんじゃないかなーと思っていたものの、CESでも特に(タブレット以外の)Clover Trail機に関する噂が全然無かったため近いうちに出ないであろうということ、夏以降に出るようだと年末のBay Trail(Clover Trail後継)が見えてきてしまう、といった状況を鑑みた結果でもある。
だったら単純に買い控えろよ、というところなのだが、MacBook Air→VAIO Duoで若干大型化&ヘビー化した分だけサブでもっと軽いモバイルPCが欲しかったのと、色々あってiPad2を手放すことになったのでどうせRetina iPadやiPad miniを買うくらいならWindows 8タブレットにしてやろうということに。
それと、店頭でたまたま見かけたARROWS Tab Wi-Fiが「これがWindows!?」と思うほど小さくて薄くて軽かったため衝撃を受けたというのもある。もっと軽いUMPCを使ってたりもしたんだけど、ノートPCを凝縮したようなUMPCと、iPadがそのままWindows機になったようなタブレットとでは衝撃のベクトルが違った感じ。
そしてWindows 8タブレットとなると大量に出ているわけだが、じゃあどれを買うかとなるとどれもIntelリファレンス準拠なので似たり寄ったり。
http://pc.watch.impress.co.jp/docs/column/ubiq/20130131_585848.html
ここで非常に良くまとまっているのであえて各種タブレットを比較する必要は無いのだが、自分の場合選定基準となったところとしては
・液晶サイズ:11.6型以外(Duoと被るため&小さくて軽い方が良い)
・重量:600g未満
くらい。フルサイズUSB・HDMIとかも気にしない。デジタイザーとかもDuoにあるし別にいいやという感じ。
とはいっても600g未満のモデルも限られるので
・ASUS VivoTab Smart ME400C・Acer ICONIA W510/W510D
・富士通 ARROWS Tab Wi-Fi
・Lenovo ThinkPad Tablet 2
この4つのどれか、という感じになった。
まずは高い割に個人的にはツボになる要素が無かったThinkPad Tablet 2が脱落。
富士通好きなのでARROWS Tabかなーと最初は思ったものの、特徴が防水くらいで、風呂で使えるのはいいが実際電波弱くてテレビとか見られんだろうしと思って脱落。
あとはとかく安いVivoTab Smartかキーボードドック付きモデルがあるICONIA W510のどちらかという感じに。
キーボード無しならどちらも同じようなものなので安いVivoTab Smartでいいのだが、+10kで拡張バッテリー兼キーボードが付いてくるのはお得な気がしたのでICONIA W510Dに決定。
実際のところキーボードを付けるとDuoよりもの凄くバッテリーが持ってもの凄く性能が低くてほんの少し軽い残念なノートPCになってしまうのだが、最初からキーボード頼りではなく豪勢なドックだと思えばまあいいかなと。
Ultrabookクラスの性能になると「画面だけ取り外しても使える」のは結局キーボードごと持ち歩くことが常態化し荷物を重くするだけだが、Atomクラスだと「キーボードを付けても使える」くらいで基本的にはキーボード不要の作業が中心になると考えられるため、キーボードが足かせになることは多分無いだろう。
というわけで今日(5日)届いて夜遅く帰ってきてようやく触れているわけだが、BIOSアップデート後のトラブルに巻き込まれ悪戦苦闘中で全然遊べていない・・・
思えば今まで自分用PCはAppleかソニーか富士通だったので、Apple以外の海外製PCは初めてである。ある程度のトラブルは覚悟する必要があるだろう。
とはいっても、W510Dにチープな感じはまったくなく、Appleっぽい丁寧な梱包にVAIOじゃ数千円オプションになりそうな洒落たケース(本体のみ・ドッキング時両対応)も付いてたりと持つ喜びを感じさせてくれる。最近は変わったかもしれないが、直販モデルだと素っ気ない段ボール箱に一式ぶっ込んでくる富士通はちょっと見習ってほしいw
就活真っ只中なのでこんなオモチャで遊んでいる場合ではないのだが、これから色々と楽しませてくれそうなPCである。
2013/01/25
ZFSの障害発生をメールで自動通知
ほったらかしにしてたら1ヶ月経ってしまった。
筆が遅くて数十分でブログネタ一本書いたりとかできないタイプなので、
ちょーっと忙しくなると(優先順位が低いだけに)放置しがちである。
というわけで(?)今回は軽いネタ。
表題の通りZFSが動いてるサーバーでディスクが逝ったなどの障害が起こった際に指定したメールアドレスへ障害発生通知を送ってもらいましょう。それだけ。
「ん?mailコマンドで送って終了だろ?」で終了といえば終了だが、サーバーが動いている家のプロバでは(多分)OP25Bとやらでローカルからメールが送れないので、OP25Bを回避するためにGmailアドレスから送信する。
これもmailなりsendmailを色々いじればいけるんだろうけど、知らんのでRubyになんとかしてもらう。
これやるためにサーバーにRubyするのは限りなく不毛(他のやり方があるはず)だと思われるので元からRuby入れてる人向け。いちおう1.9でやってます。
筆が遅くて数十分でブログネタ一本書いたりとかできないタイプなので、
ちょーっと忙しくなると(優先順位が低いだけに)放置しがちである。
というわけで(?)今回は軽いネタ。
表題の通りZFSが動いてるサーバーでディスクが逝ったなどの障害が起こった際に指定したメールアドレスへ障害発生通知を送ってもらいましょう。それだけ。
「ん?mailコマンドで送って終了だろ?」で終了といえば終了だが、サーバーが動いている家のプロバでは(多分)OP25Bとやらでローカルからメールが送れないので、OP25Bを回避するためにGmailアドレスから送信する。
これもmailなりsendmailを色々いじればいけるんだろうけど、知らんのでRubyになんとかしてもらう。
これやるためにサーバーにRubyするのは限りなく不毛(他のやり方があるはず)だと思われるので元からRuby入れてる人向け。いちおう1.9でやってます。
2012/12/20
UMPCは死んだのか?(5)
2012/12/11
ZFSで「マスターの無い共有ストレージ」は作れるか?
こんな記事がありました。
↓
遠隔地のHDD内のデータを自動同期、クラウドストレージより高速に使用可能な「トランスポーター」とは?
http://gigazine.net/news/20121209-transporter/
どうやら、マスターとなるストレージが(ユーザから見て)存在せず、自動的に同期が行われるネットワークストレージみたいなものらしい。
普通のファイル共有はマスターとなるサーバーがあって、そのマシンがある場所以外からはネットワーク越しのアクセスになってしまうところを、この「トランスポーター」では全機器にローカルデータが
存在しているからアクセスが速いぜ、ということらしい。これは確かに嬉しい。
似たようなものとしてDropboxがあるけど、こっちだとずっと使用料払わなきゃならんしデータがマスターとなるDropboxに置かれるクラウドサービスだからなんか嫌だよねと。これもわかる。
自分も実際クラウドストレージとか便利なのはわかるけどなんか好きじゃない、という理由で自鯖立ち上げて外から繋いでいるわけだし。
で、(自称)ZFS教徒のb00tとしては「これZFS snapshotをうまくゴニョれば似たようなものができねーかな?」と思ってしまったわけだ。
もちろんこの「トランスポーター」をdisっているわけではなく、このサイズでオールGUIで設定できて同期できるネットワークストレージというものは市場には無いし価値があると思う。が、PC1台分のサイズ食ってオールCUIで同期できる偽物を作れるなら面白そう。
実際、「AppleのTimeMachine便利だわー」と思ってPC1台分のサイズでオールCUIでZFS rolling snapshot+send/recvを行うスクリプトを動かすTimeMachineの偽物を面白がって作っていたりする。まぁこれの話は別の機会に。
にしても、「ストレージ」と聞くとすぐ「ZFS!」と思ってしまうこの哀れな思考回路、別にZFS関係無く似たようなものが作れそうな気もするのでちょっと考えてみる。
・基本方針
物理的に離れたところにある2つのNASをマスター/スレーブの区別なく同期させる。
USB-HDDなどのローカルストレージとしなかったのは、ソフトウェアだけで実現するとなるとストレージを繋ぐ先のPCで何らかの同期スクリプトを走らせなければならず、クロスプラットフォームで動かすには厳しいから。NASならば、NASのOS構成を決めうちにしてその上でSamba/Netatalk等を動かせば良い。NASに対してLAN経由で繋げばGbEなのでローカルストレージに近い速度は出せる。マシンに一台ではなく(物理的な)一家に一台で良いし。
とまぁそれなりに大規模なシステムになることが想定されるので、Dropboxでは厳しいTBクラスのストレージを同期させて、バックアップも兼ねるということを目標にする(じゃないと意味が無い)。
・双方向rsync
「ストレージ」「同期」と聞いて誰もが(?)すぐ思いつくのはやっぱり大正義rsyncだろう。
ssh経由で動かすこともできるので遠隔地のマシンと同期を取ることも可能。
とは言ってもrsyncはA→Bの片方向同期(Aの更新をBに反映)しかできず、Bの更新をAに反映するにはA側だけではなくB側でもrsyncを動かす必要がある。この点はZFS snapshotも同じことではあるが。
双方向で--updateと--deleteオプション付きでrsync動かせばできそうな気がする。
また、lsyncを使って更新チェックすればほぼリアルタイムで同期が行えそう。
・Unison
異なるコンピュータ間の同期ツールとしてUnisonがある。最初から双方向同期をするためのツールとして開発されているので、rsyncを双方で動かすとかよりもトラブルが起きにくそう。一方、lsyncみたいなツールはないので自動同期を行うにはcronとかで定期実行する必要がある。
・ZFS snapshot
ZFS本来の機能として備わっているのはsnapshot生成機能とsnapshotのsend/recvによる転送機能(sshは経由できる)だけである。というわけで同期スクリプトは自前で作る必要がある。
まずは任意の1台でsnapshotを生成し、それを各マシンへsendによってコピーして全てのマシンに共通のsnapshotを持たせることから始める。
次に全マシンでcronを動かし同時刻にsnapshotを生成し、一番前回との差分が大きいsnapshotをマスターとして他のマシンにsendする(他のマシンのsnapshotは上書きされる)という感じだろうか。「一番前回との差分が大きいsnapshotを調べる」という動作をどのマシンがやるかという問題はあるが(1台に固定するとマスターが存在することになってしまう)。
この方法だと、前のsnapshotを生成してから同期を行うまでの間に複数のマシンでデータが更新されると、更新したデータ量が少ないsnapshotは問答無用で消されるという問題がある。
inotifyあたりを上手く使って、ファイル更新に合わせてsnapshot生成が動けばほとんど回避できる気はする。
ZFSを使うメリットとしては、古いsnapshotを即時削除しなければ世代バックアップもついでに行えるという点だろうか。
とまぁちょっと(本当にちょっと)調べた限りだと双方向rsyncが安定して動くなら一番便利そうではある。次点はUnisonだろうか。ZFSはsnapshot同期で安定しなさそう、双方で編集してた場合にデータが保全される保証がない、など一番イケてないように思える。そりゃそうだ。rsyncとUnisonは同期のために設計されたちゃんとしたツールだし、一方ZFSの方は思いつきで考えた方法を書いただけだ。
というわけで実際に「トランスポーターもどき」を作ろうと思ったらZFSを利用してというのは選択肢に入らない。が、「rsyncで双方向同期!」なんて普通にやられてる(「rsync 双方向」でググれば色々出てくる)し、rsync素人の自分が導入してみました、じゃネタにもならない。Unisonも同じく。
なのでZFSで遊んでみよう。でもってrsyncやUnisonと比べてみる。検証してるフリして結論ありきだなオイ!
まぁ、UMPC話もZEVO検証もオチまで辿り着いてないのにブログネタ増やしても仕方ないんだが・・・
あとがき inotifyについて
この手の同期を行う上でキモとなるのがファイル更新検知である。これができないとcronで定期チェックとかになってしまうが、cronを用いずにファイル更新検知による動作ができるならコンフリクトの可能性はかなり減らせる。大人数でガンガン編集する共有領域ならそれでも問題となるが、個人で拠点毎にそれぞれストレージを置くならコンフリクトはまず起きなくなるはず。
rsyncの場合、lsyncdを使えばそれが実現できるが、他のツールに転用はどうやら無理そう。
lsyncdが使ってるのはinotifyというLinuxのイベント監視機能なので、UnisonやZFSでファイル更新検知を実現するならinotifyの機能を使おうということになる(多分)。
で、inotifyを使うツールとなると何やら色々存在する。inotify-tools、incron、fsniper、gamin・・・名前的に用途に一番近そうなのはincronだが、なんだかよくわからないので調べたり試す必要がありそうである。
登録:
投稿 (Atom)