_・)Keep Smiling

モソモソと日々の雑感を書き溜めるというか書き殴るというか書き捨てるというか

_・)OmniOSとnetatalkでTimeMachine用に使えるAFP NASを作る

オープンソースカンファレンス 2014 Tokyo/Springで話したネタですけど、その時は15分しか時間が無かったので、今回Tokyo OpenSolaris 勉強会 2014.04にて1時間半ほどかけて実際に構築しながらプレゼンをやってきました。

内容は「Macユーザーに贈る!OmniOSで作るお手軽・カンタン・高性能なZFS-NAS!」というテーマで、仮想環境上にOmniOSをインストールしてnetatalkのセットアップ & OS Xからの利用までを一気になってしまおうというものでした。

途中で休憩を挟むつもりだったんですが、ちょっとのんびりやってしまったので結局ぶっ通しで話してしまいました。やや反省。

今回は初めて参加するっていう人も何人か居たのですが、感想を聞きそびれてしまったのでどうだったかなぁーと思ってみたり。初心者でも構築は出来るように説明したつもりなので、実際に一回くらい作って遊んで貰えると嬉しいなぁ。

以下はあまり今回の勉強会そのものとは関係ないオマケの駄文。VirtualBoxが不調で困ったという話です・・・。

発表自体は、藤原さんに発表順序を交代してもらう(すみません・・・)といった点以外は大きなトラブルもなくスムーズにいったんですが、実は朝6時に起きてから環境を確認した時点で僕のMacBoook Proの中のVirtualBoxさんがほぼ死んでいるという事実に直面しまして・・・その対応にバタバタの一日でした。うっかりアップデートかけちゃったのがアカンかった。

VirtualBox一旦削除して古いバージョンでインストールし直しても不調のままで、現在も何が原因かははっきりしていません。環境変数か特定のディレクトリのパーミッションの問題な気がしてるけど、単純に現在のバージョンのVirtualBoxのbugの可能性もあるのかないのか???

で、このままじゃ仕方ないのでプレゼン用のデモ環境を用意ししなきゃってことで、ParallelsVMware Fusionの試用版を急いでダウンロードしました。

まずParallelsの方なんですが、個人的には好みではあるもののOmniOS(というかOpenSolaris系?)とはどうも仮想SCSIコントローラ(アダプタ?)が合わないのか、SATAやSCSIのディスクが認識されないという罠。

IDEディスクなら認識できるものの、4本のHDDでは今回のデモ環境の内容に合わないのでNGという結果になりました。惜しい。

んで結局はVMware Fusionの方でデモを行ったんですが、これもスムーズには行きませんでした。

仮想マシンを作成してISOイメージを起動してShellからSSDパーティションを分割するって話までは問題なく行えたのですが、肝心のOmniOSのインストーラーの起動にコケる。

あー、こら詰んだかもーと思ってググってみたらあっさり回避策が見つかりました。どうもOmniOS側のbug(Bloody版では修正済みっぽい)で仮想マシン上に仮想フロッピードライブが存在しないとインストールにコケるみたいです。適当なパスに空ファイルをtouchして作り、それを仮想フロッピーとしてデバイスを追加してあげればインストーラーが無事に動くようになりました。よかった。

その後は大きな問題なくデモ実施できたのですが、実はクリティカルではないレベルの問題がもう一つあったりします。

VMwareの仮想化製品には仮想環境下でのゲストOSのパフォーマンスを改善するツール群として「VMware Tools」というものが用意されています。VMware Fusionにも当然用意されていて、これをゲストOSであるOmniOSにISOイメージマウントしてインストール作業を行います。

ですが、どうもこのVMware ToolsをOmniOSにインストールすると、シャットダウン時にPANICが出てOSがコアダンプしてしまうんですよねぇ・・・。そうすると結局、再起動を始めちゃうので「おいおいシャットダウンできねーじゃねーか」という事態に。

この現象は、ESXiのVMware Toolsなんかでも起こっている問題みたいで、今のところ明確な解決策はなさそうです。ただフォーラムで「vCPUコア数を2つに増やすと正常にシャットダウンできる」という書き込みがあったりして、「え?マジで?」と思いつつコアを増やしたら本当にシャットダウンできるようになりました。

ただ、コア数を増やしてもシャットダウン時のPANICが出るって書いている人も居たので、これで完全にOKとなるわけではなさそうですが、試してみる価値はアリかもしれませんね。

以上、今回のプレゼンそのものとはあまり関係ないところで苦労したっていう話でした。直前で環境を弄るのはやっぱり危険ですね。