ISCSI

提供: Wikinote
移動: 案内検索

RHEL6 (CentOS 6) 環境で iSCSI を使う。

前に試した際の記録 を参考に、再設定してみる。

ターゲットの設定

  • ディスクにするファイルかデバイスを用意する
[root@courier ~]# lvs
  LV          VG    Attr   LSize   Origin Snap%  Move Log Copy%  Convert
  disk01      iscsi -wi-a-  10.00g   
  • scsi-target-utils パッケージを導入する

可能な限り新しいバージョンにアップデートしておくこと。 こういうマイナーなパッケージは、しょうもないバグがあったりするため。

[root@courier ~]# rpm -q scsi-target-utils 
scsi-target-utils-1.0.24-2.el6.x86_64
[root@courier ~]# service tgtd start
SCSI target daemon を起動中:                               [  OK  ]
  • iSCSI ターゲット名を決める
iqn.2012-04.org.hagio.courier:iscsi-disk01
  • /etc/tgt/target.conf に設定を追加する
[root@courier ~]# vi /etc/tgt/targets.conf
...
<target iqn.2012-04.org.hagio.courier:iscsi-disk01>
    backing-store /dev/mapper/iscsi-disk01
    initiator-address 192.168.122.60
</target>
  • 設定を再読み込みして、確認する
[root@courier ~]# service tgtd reload
Updating SCSI target daemon configuration:                 [  OK  ]
[root@courier ~]# tgtadm --mode target --op show
Target 1: iqn.2012-04.org.hagio.courier:iscsi-disk01
    System information:
        Driver: iscsi
        State: ready
    I_T nexus information:
    LUN information:
        LUN: 0
            Type: controller
            SCSI ID: IET     00010000
            SCSI SN: beaf10
            Size: 0 MB, Block size: 1
            Online: Yes
            Removable media: No
            Prevent removal: No
            Readonly: No
            Backing store type: null
            Backing store path: None
            Backing store flags: 
        LUN: 1
            Type: disk
            SCSI ID: IET     00010001
            SCSI SN: beaf11
            Size: 10737 MB, Block size: 512
            Online: Yes
            Removable media: No
            Prevent removal: No
            Readonly: No
            Backing store type: rdwr
            Backing store path: /dev/mapper/iscsi-disk01
            Backing store flags: 
    Account information:
    ACL information:
        192.168.122.60
  • ポートを開ける

ポートを塞いでいる場合、開けるポートは TCP 3260 番である。

[root@courier ~]# netstat -anp | grep tgtd
tcp        0      0 0.0.0.0:3260                0.0.0.0:*                   LISTEN      3100/tgtd
tcp        0      0 :::3260                     :::*                        LISTEN      3100/tgtd
...

イニシエータの設定

  • iscsi-initiator-utils パッケージを導入する
[root@centos60 ~]# rpm -q iscsi-initiator-utils
iscsi-initiator-utils-6.2.0.873-2.el6.i686
  • discovery する
[root@centos60 ~]# iscsiadm -m discovery -t st -p 192.168.122.1
iscsid を起動中:                                           [  OK  ]
192.168.122.1:3260,1 iqn.2012-04.org.hagio.courier:iscsi-disk01

見つかった node を確認できるようになっている。

[root@centos60 ~]# iscsiadm -m node
192.168.122.1:3260,1 iqn.2012-04.org.hagio.courier:iscsi-disk01
[root@centos60 ~]# iscsiadm -m session
iscsiadm: No active sessions.

node の情報は以下の場所に保存されている。

[root@centos60 ~]# ls -l /var/lib/iscsi/nodes/
合計 4
drw-------. 3 root root 4096  4月  1 22:30 2013 iqn.2012-04.org.hagio.courier:iscsi-disk01
  • iscsi サービスを起動してすべての node にログインする

session が作成されていることが分かる。

[root@centos60 ~]# service iscsi start
iscsi を起動中:                                            [  OK  ]
[root@centos60 ~]# iscsiadm -m session
tcp: [1] 192.168.122.1:3260,1 iqn.2012-04.org.hagio.courier:iscsi-disk01
  • 特定の node のみにログインする場合
[root@centos60 ~]# iscsiadm -m node
192.168.122.1:3260,1 iqn.2012-04.org.hagio.courier:iscsi-disk01
192.168.122.1:3260,1 iqn.2012-04.org.hagio.courier:iscsi-disk02
[root@centos60 ~]# iscsiadm -m node -l -T iqn.2012-04.org.hagio.courier:iscsi-disk02
Logging in to [iface: default, target: iqn.2012-04.org.hagio.courier:iscsi-disk02, portal: 192.168.122.1,3260] (multiple)
Login to [iface: default, target: iqn.2012-04.org.hagio.courier:iscsi-disk02, portal: 192.168.122.1,3260] successful.
[root@centos60 ~]# iscsiadm -m session
tcp: [5] 192.168.122.1:3260,1 iqn.2012-04.org.hagio.courier:iscsi-disk02
  • ディスクが認識されたことを確認する
[root@centos60 ~]# cat /proc/partitions 
major minor  #blocks  name

 252        0   12582912 vda
 ...
   8        0   10485760 sda ★
  • ログアウトする

すべての node からログアウトする場合は、iscsi サービスを止めれば良い。

[root@centos60 ~]# service iscsi stop
iscsi を停止中:                                            [  OK  ]
[root@centos60 ~]# iscsiadm -m session
iscsiadm: No active sessions.

あるいは、node を指定せずに

[root@centos60 ~]# iscsiadm -m node -u

一部の node からログアウトする場合は、-T で指定する。

[root@centos60 ~]# iscsiadm -m session
tcp: [7] 192.168.122.1:3260,1 iqn.2012-04.org.hagio.courier:iscsi-disk01
tcp: [8] 192.168.122.1:3260,1 iqn.2012-04.org.hagio.courier:iscsi-disk02
[root@centos60 ~]# iscsiadm -m node -u -T iqn.2012-04.org.hagio.courier:iscsi-disk02
Logging out of session [sid: 8, target: iqn.2012-04.org.hagio.courier:iscsi-disk02, portal: 192.168.122.1,3260]
Logout of [sid: 8, target: iqn.2012-04.org.hagio.courier:iscsi-disk02, portal: 192.168.122.1,3260] successful.
[root@centos60 ~]# iscsiadm -m session
tcp: [7] 192.168.122.1:3260,1 iqn.2012-04.org.hagio.courier:iscsi-disk01
  • node 情報を削除する

全部クリア

[root@centos60 ~]# iscsiadm -m node
192.168.122.1:3260,1 iqn.2012-04.org.hagio.courier:iscsi-disk01
[root@centos60 ~]# iscsiadm -m node -o delete
[root@centos60 ~]# iscsiadm -m node
iscsiadm: No records found

一部クリア?

[root@centos60 ~]# iscsiadm -m node -o delete -p 192.168.122.1:3260

覚え書き

  • iscsi サービスは、既知の node に自動的にログイン・ログアウトする。個別に管理する必要がなく、全部まとめて行いたい場合はこれを利用するのが簡単。
  • iscsid サービスは、必要なモジュールの読み込みと iscsid デーモンの起動を行うサービスである。止めていても勝手に起動されるので、あまり意識する必要はない。間違って止めようとした場合は、警告が出力される。(バージョンによるかも)
[root@centos60 ~]# service iscsid stop
iscsid の停止なし: iscsi がまだアクティブです              [警告]

注意事項

  • iSCSI 上のファイルシステムを /etc/fstab に追加する場合、マウントオプションに _netdev を追加すること。