« Ubuntuのiscsi(tgt)を使ってMacのディスクにしてみたメモ | メイン | FriioのTSをmacやLinuxのffmpeg/mp4boxで処理するメモ »

SheevaPlugをtgtでiscsi targetにしてみたメモ

SheevaPlugにLinux SCSI target framework (tgt)をインストールしてiscsiのtarget(サーバ)にしてみたのですが、ちょっと問題があったのでメモ。

上にあるSheevaPlugにiscsiを入れる記事ですが、そのままだとインストールはできるもののtgtadmするとどうもサーバが落ちてしまってうまく動きません。適当にgdbで落ちてる箇所を特定してパッチを当ててみると無事動いている模様。

インストール手順
  1. SheevaPlug自体に開発ツールその他が入っていること
  2. sudo apt-get install libconfig-general-perl
  3. Linux SCSI target framework (tgt) projectからtgt-1.0.7.tar.gzをダウンロード
  4. 適当なディレクトリで展開
    tar xvfz tgt-1.0.7.tar.gz
  5. cd tgt-1.0.7
  6. usr/util.cの145行目 (str_to_open_flags()の頭のあたり)に以下の2行を追加
    if (!buf)
        return 0;
  7. make ISCSI=1 && sudo make install
  8. tgt-adminにMOIMOIさんのパッチ適用
    gist: 459680 - GitHub

これでインストール完了。

動作確認
  1. sudo tgtd
  2. sudo tgtadm --lld iscsi --op new --mode target --tid 1 -T iqn.2010-08.com.yourdomain.plugserver:storage.fserver.data
  3. sudo tgtadm --lld iscsi --op new --mode logicalunit --tid 1 --lun 1 -b /dev/sda
  4. sudo tgtadm --lld iscsi --op show --tid 1
  5. なにやらディスクの情報が見えるはず
これで適当にクライアントからつないでみると動いていると思います。この時点ではiqn...はもっと短い適当な名前でもOK。
 
設定ファイル作成
tgtadmでの設定はサーバを落とせば消えてしまうのでconfigファイルを以下のように作成。
 
file: /etc/tgt/targets.conf
 
default-driver iscsi

<target iqn.2010-08.com.yourdomain.plugserver:storage.fserver.data>
  driver iscsi
  backing-store /dev/sda
  incominguser <user-name> <your password>
</target>
 
ちなみにiqnから始まるディスクの名前っぽいのはiscsiネームというもので世界的にユニークな必要があるらしい。iqn.取得日付.domain.server:disk...という感じのネーミングとのことらしい。ローカルオンリーなら問題なさそうだが一応それっぽく書いておくのがいいかもしれません。
起動時に有効になるように
initスクリプトを自分で書けばいいのだが手抜き。/etc/rc.localに以下の二行を追加

tgtd
tgt-admin -e --ready ALL

ベンチマーク
前のエントリーと同じ条件/同じディスクを使い同じMacBook Airからxbenchのdiskテストを行った結果の抜粋。値はスコアです。
 
Disk Test 7.97
Sequential 4.72
Random 25.69

前エントリーで測ったeeepc901より若干いい結果ですがほぼ誤差と思われます。SheevaPlugの1.2GhzのARMもそれなりに速いですがATOMよりは遅いでしょうからUSBディスクとネットワークの方で頭打ちになっている模様(予想の範囲)。1Gbpsの有線イーサで比べると実力差が出るかもしれません。いずれにせよカジュアルな使い方ではそれなりな性能が出ているようです。
 
注意点
 
iSCSIディスクは基本固定ディスクの扱いですので、アンマウントせずにサーバのリブート・シャットダウンやネットワークの切断などを行うとMac側も動作がおかしくなったり最悪データが失われたりします。サーバからONにしてクライアントからOFFにしていくという昔ながらの基本手順は必須。
 
また上で当てたパッチはかなり適当なので我ながら少し不安。いずれちゃんと追っかける予定。とりあえず数日TimeMachineディスク+データディスクにしていますが今のところ問題ない模様。

トラックバック

このエントリーのトラックバックURL:
http://blog.browncat.org/cgi-bin/mt/mt-tb-abc.cgi/893


コメントを投稿

(お書きになったコメントはすぐには表示されません。ご了承ください。)


About

2010年08月08日 00:12に投稿されたエントリーのページです。

ひとつ前の投稿は「Ubuntuのiscsi(tgt)を使ってMacのディスクにしてみたメモ」です。

次の投稿は「FriioのTSをmacやLinuxのffmpeg/mp4boxで処理するメモ」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

           

カテゴリー

Powered by
Movable Type 3.36

Twitter


最近のエントリー

デル株式会社ads

注目エントリー