ホーム > タグ > iSCSI
iSCSI
DomUのCentOS5.3 x86_64にiSCSI Enterprise Targetをインストール
- 2009-08-14 (金)
- 技術
DomUなCentOS5.3 x86_64でiSCSIターゲットを動かす必要があったのでやってみました。
最初はyumで簡単にインストールできるということで、scsi-target-utils(tgtd)を試してみたのですが、設定ファイルではなくコマンドで設定するその方法が気に入らず(まぁLinuxなんでシェルスクリプトを設定ファイルだと考えればいいのですが)、またMacのglobalSAN iSCSIイニシエータからどうやっても書き込み出来ません(接続は出来る)でした。
前者はともかく後者は致命的なので、scsi-target-utilsはあきらめて、scsi-target-utilsと同じくらいメジャーと思われるiSCSI Enterprise Target(以下IET)をインストールしてみました。
以下、IETのインストール方法です。
多分、DomUとかx86_64とかじゃなくても、影響のある部分を適宜読み替えることで対応可能かと思います。
1.必要なパッケージのインストール
2.カーネルソースパスの確認
うちでは”2.6.18-128.4.1.el5-xen-x86_64″だったので、以下それで書きます。
3.iscsi_trgt.koのパスの確認
4.カーネルモジュールディレクトリの確認
2.6.18-128.el5xen
と
2.6.18-128.4.1.el5xen
でした。
IETはmake時に短い方のディレクトリを使います。
5.カーネルモジュールの依存関係の確認
6.IETのダウンロード・インストール
7.iSCSIターゲットで利用するディスクを用意
といっても、今回はスパースファイルを使うので物理的には用意しません。
8.IETの設定
#Lun 0 Path=・・・の行のコメントを外し以下のように書き換える。
Lun 0 Path=/path/to/disk.img,Type=fileio
他の設定はとりあえずそのまま。ターゲット名は”iqn.2001-04.com.example:storage.disk2.sys1.xyz”となってるハズです。
9.ファイアウォールの設定
セキュリティを高めるには、上流にさらにファイアウォールを設けたり、ソースIPを制限したり、IETでパスワード認証するなりしてください。
これであとはその辺のiSCSIイニシエータで、サーバーのIPとターゲット名を指定すれば繋がるはずです。
最初はyumで簡単にインストールできるということで、scsi-target-utils(tgtd)を試してみたのですが、設定ファイルではなくコマンドで設定するその方法が気に入らず(まぁLinuxなんでシェルスクリプトを設定ファイルだと考えればいいのですが)、またMacのglobalSAN iSCSIイニシエータからどうやっても書き込み出来ません(接続は出来る)でした。
前者はともかく後者は致命的なので、scsi-target-utilsはあきらめて、scsi-target-utilsと同じくらいメジャーと思われるiSCSI Enterprise Target(以下IET)をインストールしてみました。
以下、IETのインストール方法です。
多分、DomUとかx86_64とかじゃなくても、影響のある部分を適宜読み替えることで対応可能かと思います。
1.必要なパッケージのインストール
yum install kernel-xen-devel gcc openssl-devel
2.カーネルソースパスの確認
ls /usr/src/kernels/これで出てきたディレクトリの中で自分のアーキテクチャ・バージョンにあったものを使います。
うちでは”2.6.18-128.4.1.el5-xen-x86_64″だったので、以下それで書きます。
3.iscsi_trgt.koのパスの確認
updatedbうちでは、”/lib/modules/2.6.18-128.4.1.el5xen/kernel/iscsi/iscsi_trgt.ko”だったので、以下それで書きます。
locate iscsi_trgt.ko
4.カーネルモジュールディレクトリの確認
ls /lib/modules/自分のバージョン・アーキテクチャに合ったディレクトリが2種類見つかると思います。うちでは
2.6.18-128.el5xen
と
2.6.18-128.4.1.el5xen
でした。
IETはmake時に短い方のディレクトリを使います。
5.カーネルモジュールの依存関係の確認
vi /lib/modules/2.6.18-128.el5xen/modules.depこのファイルにiscsi_trgt.koのパスが無いときは3で確認したパスを末尾に追加する。うちでは”/lib/modules/2.6.18-128.4.1.el5xen/kernel/iscsi/iscsi_trgt.ko:”と追加しました。
6.IETのダウンロード・インストール
cd /usr/srcKSRCには2で調べたカーネルソースディレクトリを指定します。
wget http://sourceforge.net/projects/iscsitarget/files/iscsitarget/0.4.17/iscsitarget-0.4.17.tar.gz/download
tar zxvf iscsitarget-0.4.17.tar.gz
cd iscsitarget-0.4.17
make KSRC=/usr/src/kernels/2.6.18-128.4.1.el5-xen-x86_64
make KSRC=/usr/src/kernels/2.6.18-128.4.1.el5-xen-x86_64 install
7.iSCSIターゲットで利用するディスクを用意
といっても、今回はスパースファイルを使うので物理的には用意しません。
dd if=/dev/zero of=/path/to/disk.img bs=1G seek=1 count=0
8.IETの設定
vi /etc/ietd.confこの設定ファイルが無いときはIETのソースディレクトリで”cp etc/ietd.conf /etc/”とする。
#Lun 0 Path=・・・の行のコメントを外し以下のように書き換える。
Lun 0 Path=/path/to/disk.img,Type=fileio
他の設定はとりあえずそのまま。ターゲット名は”iqn.2001-04.com.example:storage.disk2.sys1.xyz”となってるハズです。
9.ファイアウォールの設定
iptables -I RH-Firewall-1-INPUT -m state –state NEW -p tcp –dport 3260 -j ACCEPTiSCSIはポート3260を使うらしいのでそこを空けます。
セキュリティを高めるには、上流にさらにファイアウォールを設けたり、ソースIPを制限したり、IETでパスワード認証するなりしてください。
これであとはその辺のiSCSIイニシエータで、サーバーのIPとターゲット名を指定すれば繋がるはずです。
トップページ > タグ > iSCSI
- 検索
- フィード
- メタ