きっかけは、
http://forums.microsoft.com/technet-ja/ShowPost.aspx?PostID=3286005&SiteID=36 で、Windows Server 2008がパラレルSCSIによるフェールオーバークラスタを構築できない点からでした。 インターネット上で類似情報をすでにご存知の方もいらっしゃると思いますが、自分自身でiSCSIターゲットをLinux(CentOS 5.2)にインストールしてみた結果をまとめます。 iSCSIは、記憶装置のSCSIをTCP/IPでラップし、ネットワーク上で記憶装置にアクセスできる仕組みです。→ http://ja.wikipedia.org/wiki/ISCSI より抜粋 具体的な手順等は、以下のとおりです。 1.tarボールのダウンロード http://iscsitarget.sourceforge.net/ 経由、http://sourceforge.net/project/showfiles.php?group_id=108475 から、tarボールのダウンロードします。 本稿執筆時点では、iscsitarget-0.4.16.tar.gz が最新版でした。 2.展開 以下のコマンドで展開します。 tar -zxvf iscsitarget-0.4.16.tar.gz 3.make 注意点があります。コンパイル時にKernel Sourceを使います。Kernel Sourceが必要なため、/usr/src/kernelなど、ファイルがインストールされているか確認してください。また、カーネルを新しくした場合は、makeおよびmake installをやり直す必要があります。 展開したディレクトリ(本稿の場合は、iscsitarget-0.4.16ディレクトリ)にcdし、makeコマンドを実行します。 4.make install ひとつ注意点があります。depmodが通常ユーザの環境変数pathに含まれていません。結果、suやsudoにてmake installした際にdepmodを実行できず、make installは失敗します。 ・PATH=$PATH:/sbin;export PATH を実行して、sudoやsuでmake install ・Makefileのdepmodの箇所をフルパス(depmod→/sbin/depmod)としてmake install ・rootで入りなおしてmake installします。 このやり方は、ローカルのコンソールにアクセスできる場合のみ推奨です。sshのPermitRootLogin noの場合など、リモートの場合は、推奨できません。 そうすると、以下のようにファイルがインストールされます。 ----- # make install `usr/ietd' -> `/usr/sbin/ietd' `usr/ietadm' -> `/usr/sbin/ietadm' `etc/initd/initd.redhat' -> `/etc/init.d/iscsi-target' `doc/manpages/ietadm.8' -> `/usr/share/man/man8/ietadm.8' `doc/manpages/ietd.8' -> `/usr/share/man/man8/ietd.8' `doc/manpages/ietd.conf.5' -> `/usr/share/man/man5/ietd.conf.5' `ChangeLog' -> `/usr/share/doc/iscsitarget/ChangeLog' `COPYING' -> `/usr/share/doc/iscsitarget/COPYING' `README' -> `/usr/share/doc/iscsitarget/README' `README.vmware' -> `/usr/share/doc/iscsitarget/README.vmware' `kernel/iscsi_trgt.ko' -> `/lib/modules/2.6.18-92.1.1.el5/kernel/iscsi/iscsi_trgt.ko' Running depmod 6.ietd.confの編集 ietd.confファイルの編集は、suやsudoを使い、管理特権を取得してから行ってください。 ここでは、必要最低限のパラメータのみ設定しています。 ----- #iSCSIターゲットに接続する際の認証(CHAP認証)で使用します。 IncomingUser iscsi hogeinhogein OutgoingUser iscsi hogeoutoutho #[IncomingUser | OutgoingUser] ターゲットアクセス時のユーザ名パスワード #なお、パスワードは、12文字とすることが必要です。 #匿名アクセスを行う場合は、ユーザ名とパスワードを省略できます。 Target iqn.2008-06.jp.co.itfrontier.hogehoge:storage.disk2 #iqn.YYYY-MM.ドメイン名を逆に記載したもの:識別子は自由に設定 というようにtargetを命名します。 Lun 0 Path=/dev/sdb,Type=fileio # Logical Unit definitionを指定します。 Alias usehostfoc #ターゲットの別名を指定します。 Target iqn.2008-06.jp.co.itfrontier.hogehoge:storage.disk3 Lun 1 Path=/dev/sdb,Type=fileio Alias usehostfoc 7.IPアドレスによるアクセス制御を設定 initiator.allowおよびinitiators.denyファイルの編集は、suやsudoを使い、管理特権を取得してから行ってください。なお、initiator.allowおよびinitiators.denyへの、設定方法は、hosts.allowおよびhosts.denyファイルと同様です。 まずは、initiator.allowを設定します。 ----- #Targetに対して、許可するIPアドレス等を設定します。 #w.x.y.z:IPアドレスや、IPサブネットを指定します。 iqn.2008-06.jp.co.itfrontier.hogehoge:storage.disk2 w.x.y.z iqn.2008-06.jp.co.itfrontier.hogehoge:storage.disk3 w.x.y.z ----- 続いて、initiators.denyを編集します。 ----- #initiator.allowで許可されたもの以外をすべて拒否します。 ALL ALL 8.手動で起動 シェルのプロンプトで、"service iscsi-target start"と入力し、Enterキーを押して実行します。 以下のように、 [ OK ]が表示されれば問題ありません。 # service iscsi-target start Starting iSCSI target service: [ OK ] もしくは、以下でもOK。 # /etc/init.d/iscsi-target restart 9.自動起動するために、ランレベルを設定 chkconfig --level 345 iscsi-target on "chkconfig --list"コマンド等で、上記の内容が反映されているか確認しましょう。 10.Linuxのファイアウォール設定を変更 860/tcp,860/udp,3260/tcp,3260/udpが通過できるよう、Linuxのファイアウォール設定を変更します。 /etc/servicesにポートの一覧があるので、そこからiSCSI関連を確認しておいてください。 11.接続テストの準備 Windows XPおよびWindows Server 2003は、iSCSIイニシエータをダウンロードし、管理特権でインストールする必要があります。 http://www.microsoft.com/downloads/details.aspx?FamilyID=12cb3c1a-15d6-4585-b385-befd1319f825&DisplayLang=en なお、Window VistaやWindows Server 2008以降は、コントロールパネルにiSCSIイニシエータのアプレットがあります。 12.接続テスト iSCSIイニシエータは、Windows Server 2008およびVistaで標準装備です。Windows Server 2003およびXPは、ダウンロードする必要があります。 いずれのWindowsでも、概ね以下の手順でできると思います。 ----- 管理特権でiSCSIイニシエータのアプレットを起動します。 Discoveryタブへ移動し、 Addボタンを押します。 iSCSIターゲットのIPアドレス(DNS名でも可)とポート番号を設定します。 認証を行うので、「Advanced...」ボタンを押します。 CHAP Logon Informationをチェックし、User Nameにietd.confで設定したIncomingUserのユーザ名を、Target Secretにietd.confで設定したIncomingUserのパスワードを設定し、OKボタンを押します。 Targetタブへ移動し、 Log onボタンを押します。 接続先を確認し、問題がなければ、OKボタンを押します。[Automatically resotre this connection when the system boots]にチェックしておくと、次回起動時に自動で接続してくれます。 コンピュータの管理]の[ディスクの管理]で接続されているか確認します。 ディスクのプロパティを表示させます。 12.考察 Linuxの管理経験、makeの経験があれば、容易に構築できると思います。特に、デバイスファイルとして、LUNを指定するため、OSで認識しているディスクであればなんであろうと、iSCSIのターゲットとして提供できるでしょう。 iSCSIターゲットは、パスワードやIPアドレスによるアクセス制御で保護できますが、それでも不十分な場合は、IPSec等の利用を検討すべきでしょう。 13.参考 Virtual Server 2005上のフェイルオーバークラスタ構成について: http://forums.microsoft.com/technet-ja/ShowPost.aspx?PostID=3286005&SiteID=36 http://ja.wikipedia.org/wiki/ISCSI Welcome to the iSCSI enterprise target project Wiki: http://iscsitarget.sourceforge.net/wiki/index.php/Main_Page A Quick Guide to iSCSI on Linux: http://www.cuddletech.com/articles/iscsi/index.html iSCSI Enterprise Targetをセットアップしよう: http://srvhat09.anaheim-eng.com/modules/tinyd6/index.php?id=11 (現在、アクセスできないようです。。。) iSCSIを入れてみた(2): http://www.rottarte.net/blog/2007/08/iscsi2.html iSCSI Enterprise Target: http://bougaidenpa.org/wanatabe/entry/iscsi_enterprise_target by sashiz | 2008-08-10 08:59 | Linux
|
カテゴリ
以前の記事
2010年 03月
2010年 02月 2010年 01月 2009年 12月 2009年 11月 2009年 10月 2009年 09月 2009年 08月 2009年 05月 2009年 04月 2009年 03月 2009年 02月 2009年 01月 2008年 11月 2008年 10月 2008年 09月 2008年 08月 2008年 07月 2008年 06月 2008年 05月 2008年 04月 2008年 03月 2007年 12月 2007年 11月 2007年 10月 2007年 09月 2007年 08月 2007年 06月 2007年 05月 2007年 04月 お気に入りブログ
最新のコメント
最新のトラックバック
検索
ネームカード
おすすめキーワード(PR)
ファン
| ||||||||||||||||||||||||||||||||||||||||||||