Ubuntuでiscsi-targetをサーバにしてMacのglobalSAN iSCSIを使ってみたのですが、(どちらが悪いかはわからないが)余り安定しているとは言えないのでtarget(サーバ)側を"tgt"に換えてみたのでメモ。本当はMacOSX側で環境設定が32bitしかなくてイマイチ動きが良くないglobalSAN iSCSIから有料のATTOのInitiatorにしてみたいのだけれど$195もするのでさすがにパス。
サーバはUbuntu 10.04.1で"tgt"の設定は以下のリンクを参考に、というかそのまま。
target(サーバ)のインストールは"apt-get install tgt"。既にiscsi-targetが動いている場合は停止させる。余談ですがDebian/Ubuntu系のパッケージ名"tgt"は余りに短いと思います。fedoraではscsi-target-utilsとわかりやすいので同じようにもうちょっと何とかして欲しいですね。
MOIMOIさんのところの設定やパッチも含め丸ごといただいて参考にし、/etc/tgt/targets.confでmacでフォーマットしたhfs+のディスクを丸ごと指定。
Mac側でglobalSAN iSCSIから"+"で"Portal"、IPアドレスかホスト名を指定するとディスクが見えます。私は当初ディスクが見えなかったのですが、一度FedoraのQuickStartに従い手動で設定して試したところ無事問題なく接続でき、それ以降はなぜかOK。原因は未追求。
まだ使い込んではいませんが、MacBookAirのTimeMachineのバックアップを半日程度取らせていみましたが、今のところ問題なさそうです。同じディスクにXcode4等も入れてあるのですが、無事使用できているようです。安定性はこれからチェックです。(TMをONにしたまま2日程度放置。問題なくバックアップが取られているようです)
最近は500-750GBもの容量がある2.5inch HDD搭載のノートPCと違い1.8inch HDDのMacBook Airは容量を増やすのにやたらお金がかかるので、うまく外部ディスクを使いたいところです。いくつか方法がありますが、外付けディスクはじゃまになるため結構不便、ファイル共有は悪くないが制限もある。その点iSCSIはちゃんと動くと普通に外付けディスクとして使えてキャッシュが効くため速度もまあまあ速いのがいいところ。(と思ったのですが...)
これだけでは何なのでxbenchで少しベンチマーク。サーバはEeePC901+USB2.0/2.5inch/320GB HDD。クライアントはMacBook Air。AirMac Expressに接続。LANは100Mbps。
SSD | tgt+wifi | tgt+lan | USB | |||
Disk Test | 61.94 | 4.45 | 7.34 | 28.94 | スコア | |
Sequential | 43.16 | 2.97 | 4.4 | 34.25 | ||
Uncached Write [4K] | 32.02 | 2.51 | 4.73 | 23.2 | MB/S | |
Uncached Write [256K] | 14.06 | 2.17 | 3.2 | 21.44 | MB/S | |
Uncached Read [4K] | 11.12 | 0.52 | 0.67 | 6.18 | MB/S | |
Uncached Read [256K] | 72.48 | 1.83 | 3.05 | 30.35 | MB/S | |
Random | 109.67 | 8.87 | 22.09 | 25.05 | ||
Uncached Write [4K] | 6.88 | 1.44 | 3.59 | 0.94 | MB/S | |
Uncached Write [256K] | 19.72 | 1.19 | 3.64 | 19.23 | MB/S | |
Uncached Read [4K] | 3.35 | 0.55 | 0.74 | 0.43 | MB/S | |
Uncached Read [256K] | 67.89 | 1.94 | 3.44 | 13.75 | MB/S |
上の表の真ん中tgtで始まる2列がiscsiの結果。tgt+wifiはサーバもwifi接続。tgt+lanはサーバはLAN接続。相手がWifi経由のUSBディスクのせいか結構遅いですね。以前MacMini+Linux Boxで有線のGB EtherにSATA 3.5inch HDDで試したときには内蔵2.5inchより速いくらいでしたが。
使用感的にはクライアント側でのキャッシュが効きやすいので2回目以降はまあまあ普通に使えます。(Dockのバウンス回数からみると内蔵SSDの1/2-1/3程度の速度)。デメリットとしては接続中にサーバを停止させたりネットワークを切断したりするとキャッシュ中のデータが失われたりする可能性があるので要注意。
とはいえ眠っているNetbookをサーバにすれば安上がり。うっとうしいケーブルを差さなくていい。iSCSIで使用するディスクをUSBの外付けHDDにしておくとUSBとiSCSIで可換な使い方が出来るので(ちゃんとtargetもinitiatorも止めて)サーバから抜けばそのまま持ち出しも出来て便利です。
SheevaPlugでもtgtが使えているようなのでそのうち試してみよう。
- >NIL:'s Techno Feats: Using the SheevaPlug as an iSCSI target for Vista
- SheevaPlugでやってみましたがちょっと問題があったのでエントリ追加しました
Ubuntuのiscsi(tgt)を使ってMacのディスクにしてみたメモ (blog@browncat.org)