忘却めも

iSCSIは、SCSIプロトコルをTCP/IPネットワーク上で使用する規格である。
プラットフォーム間のファイル共有を目的とするsambaと違い、ネットワークを利用しストレージそのものを提供する。
環境:ubuntu server 11.04 64bit

ターゲット

ハードディスクを提供する側を iSCSI ターゲットと定義され、ubuntuでは、"iscsitarget"パッケージとして提供されている。

"iscsitarget"パッケージのインストール

"apt-get"コマンドから、"iscsitarget"パッケージをインストール
$ sudo apt-get install iscsitarget

設置されたファイル

起動スクリプトは、"/etc/init.d/iscsitarget"ファイルに設置される。中身の12〜14行目に設定ファイル等の格納先が記述されている。21行目に"ISCSITARGET_ENABLE"変数の有効無効にするファイル格納先が記述されている。
 12 PID_FILE=/var/run/ietd.pid      <----プロセスIDを記録するためのファイルパス。停止時に使用
 13 CONFIG_FILE=/etc/iet/ietd.conf  <----設定ファイル
 14 DAEMON=/usr/sbin/ietd           <----実行ファイル
 15
 …
 20 ISCSITARGET_ENABLE=false        <----"ISCSITARGET_ENABLE"変数は、サービスの有効で初期設定では無効になっている。
 21 ISCSITARGET_DEFAULTS_FILE=/etc/default/iscsitarget <----ここのファイルに"ISCSITARGET_ENABLE"変数の記述あり

"/etc/default/iscsitarget"ファイル

"ISCSITARGET_ENABLE"変数の値を"true"にしてiSCSIターゲットを有効にする。
$ cat /etc/default/iscsitarget
#ISCSITARGET_ENABLE=false
ISCSITARGET_ENABLE=true

ターゲットにするファイルの作成

ターゲットにするストレージは、ddコマンドを使いファイルを作成する。
ここでは、"/var/iscsi/iscsi1gb.img"ファイルに1GBを作成する。
$ sudo dd if=/dev/zero of=/var/iscsi/iscsi1gb.img bs=1024 count=1000000
1000000+0 records in
1000000+0 records out
1024000000 bytes (1.0 GB) copied, 8.29981 s, 123 MB/s

ddコマンドについて
入力から出力へコピーするコマンドでデバイスのバックアップに使われる。
"bs"オプションは、入出力のブロックサイズを指定
"count"オプションは、コピーするブロック数を指定

iSCSIターゲットの設定

"/etc/iet/ietd.conf"ファイルの末尾に追記。Targetセクションを記述して、Targetセクション内に論理ユニット番号(LUN)を定義する。TargetセクションのiqnはiSCSIのターゲットの識別子で、iqnの命名規則より「iqn.年-月.ドメイン名:任意の名前」となる。
Target iqn.2011-10.aabbcc:ubuntu.disk1
        Lun 0 Path=/var/iscsi/iscsi1gb.img,Type=fileio
参考
ttp://gihyo.jp/admin/serial/01/ubuntu-recipe/0128?page=1

iscsitargetの再起動

iSCSIターゲットの設定が終わったら、iscsitargetを再起動する。
$ sudo /etc/init.d/iscsitarget restart
 * Removing iSCSI enterprise target devices:                             [ OK ]
 * Starting iSCSI enterprise target service                              [ OK ]
                                                                         [ OK ]
$

イニシエータ

イニシエータ、iSCSIターゲットからデータを読み出す。ubuntuでは、「Open-iSCSI」があり"open-iscsi"パッケージで提供されている。ここでは、Windows7を利用する。

Windows7のiSCSIイニシエーター

Windows7には、iSCSIイニシエーターが標準搭載されているので、iSCSI ターゲットに接続しiSCSIディスクをマウントできる。

コントロール パネル\システムとセキュリティ\管理ツール から "iSCSI イニシエーター"を実行


iSCSIサービスを起動する。


iSCSIイニシエーターのプロパティで、"ターゲット"にIPを記述する。


利用可能なiSCSIディスクが検出される。


iSCSI ディスクのマウント操作は完了。あとは、物理HDDのようにディスク管理でフォーマットすると使用できる。

備考

Windowsのイニシエーター

Windows Vista / Windows Server 2008 も標準でiSCSIイニシエーターを搭載している。
Windows 2000/2003/XPについてもMicrosoftから無償でダウンロードできる。
2011-10 時点で最新のバージョンはVersion 2.08

Microsoft iSCSI Software Initiator Version 2.08
ttp://www.microsoft.com/download/en/details.aspx?DisplayLang=en&id=18986

大きなファイル作成

iSCSI用のイメージファイル400GBを作成するのに、131分かかった。
$ sudo dd if=/dev/zero of=/var/iscsi/iscsi4gb1.img bs=1024 count=400000000
400000000+0 records in
400000000+0 records out
409600000000 bytes (410 GB) copied, 7879.63 s, 52.0 MB/s
..

カウンタ

カウンター

管理人/副管理人のみ編集できます