ISCSIを使用するように構成しようとしているCentOS 6.4マシンのトリオがあります。基本的に、2つの異なるイニシエーターが1つのホストサーバー上の2つの異なるターゲットと通信します。
1台のマシン「サーバー」で、2つのターゲットが/etc/tgt/targets.conf
で定義されています。各ターゲットは異なる論理ディスクを指します。構成スタンザはほとんど同じで、名前とinitiator-address
フィールドのみが異なります。
これらは、コメント化されていない/etc/tgt/targets.conf
の行です。
default-driver iscsi
<target iqn.2013-08.com.example.group:backup>
backing-store /dev/primary/backup
initiator-address <ip address>
incominguser username password
</target>
<target iqn.2013-08.com.example.group:migrations>
backing-store /dev/primary/migrations
initiator-address <ip address>
incominguser username password
</target>
tgt-admin -s
を実行すると、期待どおりに2つのターゲットが表示されます。ただし、1つのターゲットには1つのLUN(0コントローラー)しか表示されませんが、もう1つのターゲットには2つのLUN(コントローラーとディスク)が表示されます。これが重要かどうかはわかりません。
悲しいことに、最初のターゲット(ディスクLUNなし)はイニシエーターから到達でき、マシンはスペースをマウントでき、すべての桃とクリームです。イニシエーターが2番目のターゲット(ディスクLUNを含む)に到達できない。 iscsiadm -m discovery -t sendtargets -p <ipaddr>
を実行すると、iscsiadm: No portals found
が返されます。
さらに悪いことに、2番目のターゲットが他のアドレスからの接続を期待している場合、または構成のinitiator-address
部分を削除した場合でも、他のシステムは2番目のターゲットを認識していないようです。
エラー:
iscsiadm:ポータルが見つかりません。
問題:ACLの問題です。
解決策:iSCSIターゲットで以下のコマンドを実行します。
tgtadm --lld iscsi --op bind --mode target --tid 1 -I ALL #In Target
次に、以下のコマンドを実行します。
iscsiadm -m discoverydb -t st --p 192.168.1.5 #It will work... Enjoy.