OpenSolarisで自宅NASを作りたい Vol.01
とりあえず、Mini-ITXでNAS作るのにOpenSolarisはどうなのかということで試した結果を書いてみようと思います。
勉強会でOpenSolarisでiSCSIやるのにMini-ITXは非力だよなんていっちゃったわけですが、用途によっては別に問題なさそうな気もしました。なので実際に試してみようと思ったわけです。性懲りも無くVol.01とか書いてますが、次があるかどうかはわかりません。
ディストリビューションとしてのOpenSolarisもそうですが、NexentaStorやEONもOpenSolarisのひとつなのでNASとして検証してみたいところです。
目的
TwitterのTL見てるとFC-SANを自宅に持っちゃってる人もなんか増えてきてるみたいなんですが、iSCSIで頑張ってみたいと思います(;・∀・)
とりあえず1GbpsでiSCSIでデータストレージ作って、windowsはSSDのシステムディスクとアプリパーティションだけにできないのか?などと考えてるんですがどうなんでしょうね。システムのバックアップもiSCSI側に吐き出してZFSでRAIDするなど。
とりあえずやりたいこと
- PT1で録画と視聴を同時に2チャネルしても問題ないレベル(4チャネルは多分自分の環境的にない)
- 動画の視聴でストレスのないレベル
- 常時起動するなら70W以内に収める
- 24時間つけっぱなしでも電気代1000円前後に収まるはず
- 容量・パフォーマンスを求めるなら、メインPCが停止時には電源OFF
- Wake-On-Lanで電源制御とか
- 自分の求める部分(iSCSIストレージ/データ保全性/コストパフォーマンス)においてQNAPよりいいものを
というわけでいろんな環境でベンチとってアップできればいいなーなどなど。
PT2欲しい。
今回の環境
NAS
OS | OpenSolaris 2009.06 |
---|---|
マザー | ZOTAC Geforce 6100-e-e |
CPU | DualCore Athlon2 x2 245 2.9GHz(ダウンクロック2.2GHz) |
メモリ | UMAX DDR2 800 4G |
HDD | ノート用100G2.5インチ(Fujitsu) WesterDegital Caviar Black WD5001AALS 500G x2 |
NIC | Intel intel Gigabit CT Desktop Adapter EXPI9301CT |
クライアント側
OS | Windows XP |
---|---|
マザー | ASUS P5Q-E |
CPU | Core2 Quad 9650 3.0GHz(オーバークロック3.76GHz) |
メモリ | UMAX DDR2 800 4G |
NIC | オンボード Marvell Yukon 88E8056 |
ベンチ結果
IOPS部分のみテキスト切り出し。
2.9GHz ストライプ 1000m zil_disable
Random Read 4KB (QD=1) : 12.219 MB/s [ 2983.2 IOPS] Random Write 4KB (QD=1) : 15.743 MB/s [ 3843.6 IOPS] Random Read 4KB (QD=32) : 114.942 MB/s [ 28062.0 IOPS] Random Write 4KB (QD=32) : 64.291 MB/s [ 15696.2 IOPS] |
|
2.9GHz RAID-Z 1000m zil_disable
Random Read 4KB (QD=1) : 11.421 MB/s [ 2788.4 IOPS] Random Write 4KB (QD=1) : 13.939 MB/s [ 3403.1 IOPS] Random Read 4KB (QD=32) : 115.223 MB/s [ 28130.7 IOPS] Random Write 4KB (QD=32) : 33.350 MB/s [ 8142.1 IOPS] |
|
2.2GHz ストライプ 1000m zil_disable
Random Read 4KB (QD=1) : 11.794 MB/s [ 2879.3 IOPS] Random Write 4KB (QD=1) : 14.823 MB/s [ 3618.8 IOPS] Random Read 4KB (QD=32) : 111.359 MB/s [ 27187.2 IOPS] Random Write 4KB (QD=32) : 37.188 MB/s [ 9079.1 IOPS] |
|
2.2GHz RAID-Z 1000m zil_disable
Random Read 4KB (QD=1) : 11.618 MB/s [ 2836.3 IOPS] Random Write 4KB (QD=1) : 12.584 MB/s [ 3072.3 IOPS] Random Read 4KB (QD=32) : 113.563 MB/s [ 27725.3 IOPS] Random Write 4KB (QD=32) : 20.531 MB/s [ 5012.4 IOPS] |
まとめ
考察とか
- readに関してはネットワークがボトルネックになってる
- writeはダウンクロック率に対してガクッと落ち込むわけでもない
- ストライプと比較するとRAID-Zは劣る。RAID-ZはRAID-Z(1,2,3)を使うならCPU性能はやはり必須
- その他
- あとからintel NIC(EXPI9301CT)でもだいたい同じ数値だったけど、なぜか4k書き込みだけすごく低い数値が出た。原因不明。
- Wake-On-Lanはうまく機能しなかった。マジックパケット送ってもキーボードでも起動するけど画面出力もSSHもできない状態になってた。OpenSolaris側の対応の問題なのか、設定が悪いのか。
- PT1で2チャネル同時録画と同時追っかけ再生しても全然I/Oで引っかかるところはなかった
次へ向けて
- コア数多い方が良さそう
- ディスクある程度積むならMini-ITXでは厳しい
次にMini-ITXで試すならAM3のMini-ITXマザーかな。今回はAM2+のもので廉価(5980円)。でもAM3だと15000円ぐらいするんで、スペースで妥協できるならばMicro-ATXで組んだ方がいいかなとも思う。TDP45WのAthlon2 X4 605e 2.3GHzと組み合わせてみたい。
QNAPと同じAtomD510でも検証したいけど、マザーがない。ASRockがSATA4ポートのD510マザー出してくれたら買います。お願いします。
[2010/05/23追記]
- ベンチマークのテキスト部分が画像と一部違っていたので修正
Thinkpad X60sのUbuntu9.10 をUbuntu10.04にアップデート
Ubuntu10.04 LTSの日本語remixがリリースされたのでアップデートしてみた。
基本的にアップデートより新規インストールがいいらしいけど、そんなにいじり倒してるわけでもなかったので、失敗したら新規に入れればいいかと思い、さくっとアップデートしてみた。
自分用備忘録。
ウインドウボタンの配置変更
10.04から左にボタンが配置されて自分的には使いにくくなったので元通り右に変更。
Ubuntu Tweakでウインドウマネージャの項目で簡単に変更できるので問題無し。
Thinkpadの設定
設定していたトラックポイントが無効になっていたので、新たに設定しなおす必要がある。この場合9.10とは違う設定になるので注意。
ここの通りに、/usr/lib/X11/xorg.conf.d/20-thinkpad.confを作成して以下を追記。
Section "InputClass" Identifier "Trackpoint Wheel Emulation" MatchProduct "TrackPoint" MatchDevicePath "/dev/input/event*" Driver "evdev" Option "EmulateWheel" "true" Option "EmulateWheelButton" "2" Option "Emulate3Buttons" "false" Option "XAxisMapping" "6 7" Option "YAxisMapping" "4 5" EndSection
この後ログアウトするかXの再起動で無事使えるようになる。
感想
起動がさらに早くなるとのことだったけど、思ったほどではなかった。SSD(X25-V)だから期待してたんだけど、ログイン後にも読み込みが続いてデスクトップの壁紙がすぐにでなかったりとトータルではそんな変わらない気がする。アップデートしたからかな?
とりあえず問題なさそうなので使いつづけてみる。問題があれば新規インストールすればいいでしょう。
Iperfのインストール
自分用メモ。ネットワークパフォーマンス測定ツールのインストールと使い方。
Netpref使ってたけど、試しに使ってみた。
OpenSolarisにインストール
gccとgmakeがない場合は先にインストールしておく(自分の環境の場合)。
$ pfexec pkg install SUNWgmake SUNWgcc
あとはダウンロードして普通にconfigureしてmakeしてmake installするだけ。
$ ./configure --prefix=/opt/iperf $ make $ pfexec make install
サーバとして起動する場合は
$ /opt/iperf/bin/iperf -s
で待ち受ける。
OpenSolaris 勉強会 for Admin(仮) 2010.04でCOMSTARについて話してきた
表題の通り、OpenSolaris勉強会でスピーカーやってきました。
今回はfor Admin(仮)ということで管理者向けということでしたが、最後まで(仮)のままでした。
いつもは自分はびぎなーずに参加してるんですが、びぎなーずの主催者の方(塚本さん)がお忙しいらしくしばらくそちらは休止のようです。
for Adminは坂上さんが提唱したとのことで今回が第1回だったわけです。その一発目の内容を自分が担うことになりました。なんという冒険。
以下概要
今回の勉強会用に作った資料 - Googleドキュメント
間違いのあった場所は気づいた限り修正しておきました。
[10/04/26追記]
同時開催で通称無印の勉強会もありました。こちらはいつも通りコアなお話だったようです。
- 東京 OpenSolaris 勉強会 2010.04 - OpenSolaris Japan Wiki - wikis.sun.com
- OpenSolaris 勉強会 2010.04 - 彷徨えるフジワラ
概要
- 13:00 - 13:50 for adminの説明,自己紹介
- 13:50 - 15:20 COMSTAR の紹介(仮)
- 15:20 - 15:30 休憩
- 15:30 - 17:00 SMF徹底活用(仮)
というスケジュールでしたが、今回はCOMSTAR Dayとなりました。。。予定より早く開始しておきながら予定時間を大幅にオーバーすることに。しかもCOMSTARと銘打っておきながCOMSTARの核については50%も時間つかってないという釣りっぷり。資料を見ていただければわかると思います。
まあ一応理由があって、COMSTARだけで技術的な話しても
「で、それができて何がうれしいの?」
状態になるとつまらないなーと思ったんです。目的があって参加してる方だけならいいんですが、とりあえずどんなのか聞いてみようという方には魅力が伝わらないかなと。なので今回は「なぜOpenSolarisでiSCSI(COMSTAR)をやるに至ったかの経緯と事例」、「自作する場合に困るパーツ選び」をどうしても盛り込みたかったわけです。
また、iSCSIすることでZFS上でLinuxなりWindowsなりを動かすことができるわけですが、このあたりの魅力をもっと語りたかったんですが、足りませんでした。ZFSのセッションとCOMSTARのセッションが別の2部構成ならもっといい形になっていたかもしれません。
結果、ひとりで3時間弱しゃべってしまって、坂上さんのSMFのお話を次回以降へお流れにしてしまいましたorzすいません。自分自身、SMFの話は楽しみにしてたので自分で自分の首を締めてしまったわけです。
というわけで今回がこういう場所での初めてのプレゼンだったわけですが、思っていたよりかは緊張しませんでした。ただ資料の内容、進め方、喋り方は色々反省点があるなと。大体雰囲気はつかめたので次回またこういう機会がどこかであればもうちょいうまくやれると思います。多分。
勉強会自体の感想としては、自分が仮想化の共有ストレージとしての実例を出しながらだったのでそちらの質問が多かったです。このあたりは実例がたまれば情報を出していければなーと思います。
次は瀧さんにじっくり使いこなす術を話て欲しいなーなんて思ってます。この前日のhbstudy(インフラエンジニア勉強会)でOpenSolarisの話にZFSへの食付きがよかったですし、ストレージの仮想化はもっと上手に語れる人がやればもっと面白くなると思いました。
懇親会
今回は3次会までありました。3次会まで参加したのは初めてだったんですが、楽しい話を色々聞けたのでよかったです。Twitterでフォローしたりされたりしていた人にたくさん会えたがよかったかなー。顔とアカウント名が一致しました。
OpenSolaris関係はTwitterでユーザーグループの方々が結構つぶやいているので、情報追っかける人は必須だと思います。まだ登録してない方は是非参加しましょう。
次回の勉強会も楽しみです。
OpenSolarisナイトセミナー 2010/04/16に途中から参加してきた&勉強会のお知らせ
タイトルがアレですが、途中から参加してきました。仕事のトラブルで予定時間で会社を出れずに20時過ぎから参加。
なのでひよこ組最終回ということで楽しみにしていたんですが、最後を逃してしまいました。残念。Crossbowの話聞きたかったなー。
毎回参加したセミナーや勉強会についてはなるべく自分なりの簡単なレポートを書いているんだけど、今回は内容は無い・・・。
セミナーの感想とか
「新入社員の OpenSolaris 奮闘記」Crossbow への道 最終章 - Project Crossbow 入門
というわけで今回は途中参加でこのセッションは不参加でした。あとで資料と公開されるであろう(?)動画を見ます。
Solaris 3 分クッキング レシピ第18巻「プリンターで日本語印刷 (続編)」
このセッションの途中から参加しました。なのでここもよくわからなかった。
Free Talk (Q&A)
ほぼここだけでの参加。色々質問が出ていましたが、Crossbow関係がやはり多かった。
一番面白い質問だったのが
- 新人が自分で環境をつくるという今回の企画でどれぐらい時間がかかったのか?
というものです。新人教育ということを考えて、自分で調べて理解しながらやってみるということにどれぐらい費やすのかという糸だと思います。もちろん今回のひよこ組の方はUNIXやサーバ周りの知識が皆無の部分からスタートしていると思うので、何かしらのサーバOSを触ったことのある経験者とはスタートラインが違うと思いますが、こういう視点の質問は面白いなーと思いました。
この後の懇親会というか飲み会でもこの質問は良い質問だとおっしゃてる方がいましたし、自分も同感です。
というわけで、今回は全然まとめにもなんにもなってないけどここまで。
飲み会
今回は同僚と参加していたので誘って一緒に参加。総勢15,6人だったと思います。今回は来週の勉強会でスピーカーをするので、その部分をどうするかっていう打ち合わせ?みたいな目的もありました。
んで今、社内で進めているiSCSIのストレージの冗長化についてのアドバイスとかを求める意味もあり。
色々面白い話を聞けました。ストレージ周りの話もアドバイスをいただけました。このあたりは自分の方で進捗があれば追々公開していきたいと思ってます。
セミナー後に残ってたら自由に参加できるみたいなので、中の人やつっこんだ話をしたい方は是非。参加した人だけが聞ける面白い話なんかもたくさんあります。
しかし、Twitterで知らない間にフォローしたりされたりしていたのでなんか面白いなーと思いました。OpenSolarisの最新の動向を追っかけたい人はTwitterをオススメします。毎日面白い話がTL上で飛び交ってます。
2次会
さとかずさん(OpenSolarisエバンジェリストのお一人)と家が近いらしく、家の近くまでタクシーで返ってきてそのまま近くで明け方まで飲んでました。来週の勉強会の話とかその他OpenSolarisのお話を少々。
来週COMSTARについて勉強会で話すんですが、こういう場で発表したことがないので結構不安だったり、どういう部分にスポットをあてて話をすればいいのかわからなかったんですが、助言を頂いてちょっと気が楽になりました。
とりあえず自分がネタを提供するので足りない部分を色々他の方に補ってもらって、情報交換・参加者の知識の向上ができればいいかなーと。セミナーじゃないので気楽にさせていただきます。
というわけで来週の勉強会の告知。
自分はCOMSTAR(Common Multiprotocol SCSI TARget)についてお話します。といってもこのブログで書いてきた内容のおさらいが中心になると思います。ストレージ周りは未知の領域でまだまだ手探り状態。iSCSI?ナニソレ美味しいの?的な状態でOpenSolarisと出会ったわけで。Solarisも触ったことない中、ZFSの黄色本を手に入れ試行錯誤してきました。なので技術的に突っ込んだ話はできないので、実際に業務で使っている環境の紹介やいくつか取っているベンチマーク結果の紹介、操作のデモをやるつもりです。
COMSTARについての突っ込んだ情報って日本語のものがほとんどないので、自分が調べてきたことを伝えることで使うきっかけになればいいなーと思います。
タイトルにはfor Adminとありますが、「勉強会」なのでスピーカーを含めた参加者みんなが何かを得る場になればいいですね。うん。
XenServerから接続したSRのサイズ変更(iSCSI by COMSTAR)
うちの会社ではXenServerを使った仮想化を現在運用しているわけですが、SR(ストレージレポジトリ)として登録したLUのサイズが足りなくなったときにどうするか。
当然容量に余裕があれば増やすわけで、その手順をメモしておく。
ストレージの環境はOpenSolaris 2009.06
COMSTARとはなんぞ?というかたは以下を参照のこと。
COMSTAR Administration - OpenSolaris Information Resources - wikis.sun.com
具体的な使い方は以前のエントリを参照してください。
OpenSolaris 2009.06でCOMSTARを試す - tokuhy’s fraction
手順
概要
まずXenServerのSRのLUのサイズを変更するには、まず一度SRの接続を解除しないとダメです。なので手順としては以下の流れになります。
- 対象のSR上で動いているVMを一度全部シャットダウン
- XenCenterからもしくはコマンドでSRの接続を解除
- ZFSコマンドでボリュームのリサイズ
- SBD(SCSI Block Disk)のリサイズ
- XenCenterもしくはコマンドでSRに再接続
こんな感じの流れです。
具体的な操作
では順番に具体的な操作をSRの解除後から。
を行ってみます。
まずZFSでボリュームを確認。
$ zfs get volsize iscsi/share NAME PROPERTY VALUE SOURCE iscsi/share volsize 100G -
拡張します。
$ pfexec zfs set volsize=200g iscsi/share $ zfs get volsize iscsi/share NAME PROPERTY VALUE SOURCE iscsi/share volsize 200G -
これでZFS上では拡張されているのがわかります。ただこのままではSBDに反映されていないので、こちらもサイズ変更を行います。
まずは現状のサイズ確認。
$ pfexec sbdadm list-lu Found 1 LU(s) GUID DATA SIZE SOURCE -------------------------------- ------------------- ---------------- 600144f0229d010000004bb1e07c0002 107374116864 /dev/zvol/rdsk/iscsi/share
200Gにしたので2倍の値をセットします。
書式はsbdadm modify-lu -s <変更後サイズ>
$ pfexec sbdadm modify-lu -s 214748233728 600144f0229d010000004bb1e07c0002 $ pfexec sbdadm list-lu Found 1 LU(s) GUID DATA SIZE SOURCE -------------------------------- ------------------- ---------------- 600144f0229d010000004bb1e07c0002 214748233728 /dev/zvol/rdsk/iscsi/share
これでサイズ拡張がされたので、XenServerでSRに再接続すれば容量が増えています。
ちなみに使用量以上のサイズであれば縮小もできることも確認しました。
まとめとか感想とか
ここからはCOMSTARというよりXenServerの運用上の話。
サイズ変更は結構簡単にできるんですが、VMがオンライン状態での拡張ができません。これはXenServerの仕様ですが。
これができないと大量のVMが稼働している場合、変更するためにはすべてダウンさせなければならないので結構な手間かなーと。
- LUを作るときは用途別もしくはグループ別にある程度のサイズで分ける。グループ1はSR-1、グループ2はSR-2上にそれぞれVMを作成する、みたいな。
- これによりVMを作成するSRを分けることでメンテナンスの際にダウン対象を限定できる
のようなことをした方がよいのだろうか。このあたりの運用ノウハウがよく分からない。LUでなくストレージ側でストレージプール毎わけるのがいいのかな?誰か教えてください。XenServerの運用で共有ストレージを使う場合、こんな感じでSR作るのがいいんだろうか。
運用しながら環境に見合ったやりかた考えるしか無いか・・・。
Ubuntu9.10 on X60sの設定メモ(自分用)
ThinkPad X60sにUbuntu入れたときのメモ。自分用初期設定。随時更新。
とりあえずこれだけあればまずはなんとかなりそう。細かなカスタマイズは使いながら。
インストール
- Ubuntu9.10。日本語環境に最適化された下記のものを使う方がよい。
- Ubuntuの入手 | Ubuntu Japanese Team
- インストールISOからUbuntu上でUSBにインストールしたものを持っておくと色々便利(書き込みもできる)
- X25-V(40G)のうち30Gにパーティションを切ってインストール。10Gは一切使わずに未使用領域のまま残しておく(性能劣化対策)
設定
カスタマイズ
Thunderbird3の導入
9.10のデフォルトパッケージでは2系なので、3.0を落としてきてインストールする。パッケージ管理ができないので、/optディレクトリにインストールしておく。
1.ダウンロードディレクトリに落とす
2.解凍して/opt以下に移動させホームディレクトリに設定ファイル保存用のディレクトリの作成
sudo mv thunderbird /opt mkdir ~/.thunderbird
3.パネルにランチャを追加する
-
- [パネルへ追加]-[カスタム・アプリケーションのランチャ]で/opt/thunderbird/thunderbirdを追加して、アイコンを/opt/thunderbird/chrome/icons/defaultから選択
プリンタ
会社のプリンタで出力できるように設定
- imagio mp c2800 rpcs
- ユーザー登録してダウンロードしたファイルを展開
- [システム]-[システム管理]-[印刷]
- 新規追加からネットワーク上のプリンタを検索
- 一覧に出てくるので選択して接続をクリック
- IPP network printer via DNS-SIDを選択
- PPDファイルを提供からダウンロードしたドライバを選択
これでOK
その他
- 日本語入力の設定(IBUS-Anthy)
- 半角/全角で起動
- 全般タブでフォーカスアウト時の振る舞いを「保持」
- キー割り当てでショートカットタイプを「ATOK」(WindowsでGoogle日本語入力を使っていると操作性が近く?なる)
- convert_to_half:F8のみに
- convert_to_latin:ctrl+atを削除してctrl+Oを追加
- [設定]-[外観の設定]で視覚効果で色々カスタマイズ
- [システム管理]-[日本語環境セットアップヘルパ]で必要な日本語環境のアプリを入れる