天天看點

iSCSI Target與Initiator的安裝與使用

一,iSCSI安裝包的查找:

1.首先用yum檢視一下關于iscsi的安裝包:指令yum search <keyword>

      輸入yum search scsi

找到iscsi-initiator-utils 和scsi-target-utils 。它們分别對應Initiator和Target的安裝包

2 Target的安裝

yum -y install scsi-target-utils 

3啟動服務,并添加到開機自啟動:

etc/init.d/tgtd start

chkconfig tgtd on

4 指令行編輯 (重新開機失效)

#tgtadm --lld iscsi --op new --mode target --tid 2 -T iqn.2222.test:storage.disk2      添加一個iqn,設定其tid為2

   #tgtadm --lld iscsi --op new --mode logicalunit --tid 2 --lun 1 -b /dev/md50  

指定裝置/dev/md50到方才的iqn中

#tgtadm --lld iscsi --op bind --mode target --tid 2 -I ALL                

給權限,讓這個iqn接管所有連接配接懇求

另外的解釋和指令

 添加一個新的target

   ietadm --op new --tid=[id] --params Name=iqn.foo.example

其中[id] 為數字,必須是沒有使用過的。後面的 Name 需要自己自定義,也需要保證是唯一的。 

當然不知道自己本機所有target id 的話,可以使用這個指令檢視目前的 target 狀态和得到 target id

² 添加一個新的 lun 

Note: 在一個已經存在的 target 上加入一個 lun, 以便共享出來給外界。 

ietadm --op new --tid=[id] --lun=[lun] --params Path=/path/exported/file,Type=fileio

    [id] 必須是一個已經存在的 tid 号, [lun] 可以自己定義。 

    後面的path 就是共享的路徑了。 

     NOTE: 通過這種方式添加的LUN 在重新開機服務之後會丢失。

² 停止某個Target 的某個 Connection 的連接配接

ietadm --op delete --tid=2 --sid=562950876233792 --cid=1 && ietadm --op delete --tid=2

² 停止所有Target 的連接配接

ietadm --op delete

² 删除某個Target (已經沒有 Session 連接配接的)

ietadm --op delete --tid= 1

上面列出了ietadm 常用的指令,關于 ietadm 其餘的指令,大家可以使用 ietadm --help 來檢視更多的指令

5編輯配置

編輯配置檔案/etc/tgt/targets.conf,并設定下iSCSI Qualified Name (IQN).

如果你是自己分區或者lvm,設定成自己的分區和lv即可。

<target iqn.2012-02.com.example:server.target1>

backing-store /dev/sda5 #share 1

backing-store /var/lib/tgtd/virtualization/virtimage2.img #share 2

write-cache off

</target>

重新開機服務,使修改後的配置生效。

[[email protected] ~]# /etc/init.d/tgtd restart

确定iscsi server是否成功。如果現實如下說明配置iscsi server已經OK。

[[email protected] ~]# tgt-admin --show

二。Initiator的安裝

  1、安裝Initiator

yum -y install iscsi-initiator-utils

2. 啟動服務并添加到開機啟動

# /etc/init.d/iscsid start

# chkconfig iscsid on

3.發現iscsi server 的共享分區

  輸入:

# iscsiadm --mode discovery --type sendtargets --portal 192.168.1.8

得到回複

192.168.1.8:3260,1 iqn.2011-09.com.nfschina:nfs-storage24

  4. 列出所有的Target

iscsiadm -m node

5 登陸到iscsi server的共享分區

  連接配接所有的共享分區:iscsiadm -m node -L all

連接配接指定的Target: 

輸入iscsiadm -m node -T iqn.2011-09.com.nfschina:nfs-storage24 -p 192.168.1.8 --login

回複:Logging in to [iface: default, target: iqn.2011-09.com.nfschina:nfs-storage24, portal: 192.168.1.8,3260] (multiple)

     Login to [iface: default, target: iqn.2011-09.com.nfschina:nfs-storage24, portal: 192.168.1.8,3260] successful.

6.檢視 資料結構的樹狀資訊

iscsiadm -m node -o show -T  iqn.2011-09.com.nfschina:nfs-storage24 

7 檢視所有iSCSI的連接配接狀态

iscsiadm -m session

8 檢視去人已經增加的磁盤裝置

ls /dev/sd*

9 斷開所有Target 連接配接

iscsiadm -m node -U all

10 斷開指定Target的連接配接

iscsiadm -m node -T iqn.2011-09.com.nfschina:nfs-storage24 -p 192.168.1.8 --logout

11 檢視目前的連接配接狀态

iscsiadm -m session

12 删除所有node資訊

iscsiadm -m node --op delete

13 重新discovery

三。 其他說明:

  1 早版本的Target用的指令為 ietadm ,然後據說它有bug,後面的版本都用tgtdadm指令

  2 錯誤tgtadm: can't send the request to the tgt daemon, Transport endpoint is not connected

這是因為沒有啟動tgtd服務 需要啟動服務 service tgtd restart

  參看http://bbs.linuxtone.org/thread-17115-1-1.html

繼續閱讀