Menu Close

Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

25.15. iSCSI 相互接続のスキャン

iSCSI の場合、ターゲットが、新しいストレージが追加されたことを示す iSCSI 非同期イベントを送信すると、スキャンが自動的に行われます。
ただし、ターゲットが iSCSI 非同期イベントを送信しない場合は、iscsiadm ユーティリティーを使用してターゲットを手動でスキャンする必要があります。ただし、その前に、最初に適切な--targetname--portal 値を取得する必要があります。ご使用のデバイスモデルが、ターゲットごとに 1 つの論理ユニットおよびポータルのみに対応している場合は、以下のように iscsiadm を実行して、sendtargets コマンドをホストに発行します。
# iscsiadm -m discovery -t sendtargets -p target_IP:port
[5]

出力は以下の形式で表示されます。
target_IP:port,target_portal_group_tag proper_target_name

例25.11 iscsiadm を使用した sendtargets コマンドの発行

たとえば、 proper_target_nameiqn.1992-08.com.netapp:sn.33615311 で、target_IP:port10.15.85.19:3260 のターゲットでは、出力は以下のように表示されます。
10.15.84.19:3260,2 iqn.1992-08.com.netapp:sn.33615311
10.15.85.19:3260,3 iqn.1992-08.com.netapp:sn.33615311
この例では、ターゲットに 2 つのポータルがあり、それぞれ 10.15.84.19:3260 および 10.15.85.19:3260target_ip:port を使用しています。
各セッションで使用されるiface 設定を確認するには、-P 1 オプションを追加します。このオプションは、以下のように、セッション情報もツリー形式で出力します。
    Target: proper_target_name
        Portal: target_IP:port,target_portal_group_tag
           Iface Name: iface_name

例25.12 iface 設定の表示

たとえば、iscsiadm -m discovery -t sendtargets -p 10.15.85.19:3260 -P 1 を使用すると、次のような出力になります。
Target: iqn.1992-08.com.netapp:sn.33615311
    Portal: 10.15.84.19:3260,2
       Iface Name: iface2
    Portal: 10.15.85.19:3260,3
       Iface Name: iface2
つまり、ターゲットiqn.1992-08.com.netapp:sn.33615311は、iface 設定として iface2 を使用します。
デバイスモデルによっては、1 つのターゲットに複数の論理ユニットとポータルが存在する場合があります。まず、sendtargets コマンドを実行して、ターゲット上の新しいポータルを検索します。次に、以下を使用して既存のセッションを再スキャンします。
# iscsiadm -m session --rescan
また、以下のようにセッションの SID 値を指定して、特定のセッションを再スキャンすることもできます。
# iscsiadm -m session -r SID --rescan[7]
デバイスが複数のターゲットに対応している場合は、ホストにsendtargets コマンドを発行して、ターゲットの新しいポータルを検索する必要があります。--rescanオプションを使用して、既存のセッションを再スキャンし、既存のセッションで新しい論理ユニットを検出します。
重要
--targetname および --portal の値を取得するために使用される sendtargets コマンドは、/var/lib/iscsi/nodes データベースのコンテンツを上書きします。次に、/etc/iscsi/iscsid.conf の設定を使用して、このデータベースが再設定されます。ただし、セッションが現在ログインしており、使用中の場合は発生しません。
新しいターゲット/ポータルを安全に追加したり、古いターゲットを削除するには、それぞれ -o new オプションまたは -o delete オプションを使用します。たとえば、/var/lib/iscsi/nodes を上書きせずに新規ターゲット/ポータルを追加するには、以下のコマンドを使用します。
iscsiadm -m discovery -t st -p target_IP -o new
検出時にターゲットに表示されなかった/var/lib/iscsi/nodesエントリーを削除するには、次のコマンドを実行します。
iscsiadm -m discovery -t st -p target_IP -o delete
以下のように、両方のタスクを同時に実行することもできます。
iscsiadm -m discovery -t st -p target_IP -o delete -o new
sendtargetsコマンドは、次の出力を生成します。
ip:port,target_portal_group_tag proper_target_name

例25.13 sendtargetsコマンドの出力

たとえば、単一のターゲット、論理ユニット、およびポータルを持ち、target_name として equallogic-iscsi1 を使用するデバイスの場合、出力は次のようになります。
10.16.41.155:3260,0 iqn.2001-05.com.equallogic:6-8a0900-ac3fe0101-63aff113e344a4a2-dl585-03-1
proper_target_name および ip:port,target_portal_group_tag は、「iSCSI API」 の同じ名前の値と同じであることに注意してください。
この時点で、iSCSI デバイスを手動でスキャンするために必要な適切な --targetname および --portal の値が得られます。これには以下のコマンドを実行します。
# iscsiadm --mode node --targetname proper_target_name --portal ip:port,target_portal_group_tag \ --login 
[8]

例25.14 完全なiscsiadmコマンド

上の例 (proper_target_nameequallogic-iscsi1 である) を使用すると、完全なコマンドは以下のようになります。
# iscsiadm --mode node --targetname  \ iqn.2001-05.com.equallogic:6-8a0900-ac3fe0101-63aff113e344a4a2-dl585-03-1 	\ --portal 10.16.41.155:3260,0 --login[8]


[7] For information on how to retrieve a session's SID value, refer to 「iSCSI API」.
[8] This is a single command split into multiple lines, to accommodate printed and PDF versions of this document. All concatenated lines — preceded by the backslash (\) — should be treated as one command, sans backslashes.