轉至:https://www.linuxidc.com/Linux/2016-09/135655.htm
Linux下搭建iSCSI共享存儲
拓撲:
實驗步驟:
--------------------------------------------------------------
配置iscsi server:
方案1:(命令行配置,立即有效,重啟無效)
1、在target上添加兩塊磁盤設備,sdb,sdc
2、安裝程序包、啟動服務
# yum install -y scsi-target-utils
# service tgtd start
3、創建target
# tgtadm --lld /dev/sdb --mode target --op new --tid 1 --targetname iqn.2015-01.com.liaobin:i1.c2
4、創建lun
# tgtadm --lld iscsi --mode logicalunit --op new --tid 1 --lun 1 --backing-store /dev/sdb
# tgtadm --lld iscsi --mode logicalunit --op new --tid 1 --lun 2 --backing-store /dev/sdc
# tgtadm --lld iscsi --mode logicalunit --op delete --tid 1 --lun 1 #刪除lun的方法
5、授權
# tgtadm --lld iscsi --mode target --op bind --tid 1 --initiator-address 192.168.191.0/24 #限制只有192.168.191.0的網段可訪問
6、查看已經定義的信息
# tgtadm --lld iscsi --mode target --op show
方案2:(配置文件中定義,重啟有效)
1、編輯/etc/tgt/targets.conf
<target iqn.2015-01.com.liaobin:i1.c2>
backing-store /dev/sdb
backing-store /dev/sdc
initiator-address 192.168.191.0/24
</target>
2、重啟tgtd服務;
# service tgtd restart
--------------------------------------------------------------
配置iscsi客戶端initiator(節點1,2都需進行如下操作):
1、安裝程序包
# yum install -y iscsi-initiator-utils
2、配置initiator的名字(配置文檔:/etc/iscsi/initiatorname.iscsi)
# echo "InitiatorName=`iscsi-iname -p iqn.2015-01.com.liaobin`" > /etc/iscsi/initiatorname.iscsi (使用iscsi-iname命令生成隨機數)
3、啟動服務
# service iscsi start
# service iscsid start
4、使用iscsiadm實現target的發現
基本格式:iscsiadm -m discovery -d # -t sendtargets -p IP[:PORT]
# iscsiadm -m discovery -d 3 -t sendtargets -p 192.168.191.113:3260
#發現target -m模式 -d調試級別 -t類型(sendtargets可簡寫為st)-p服務端IP
5、登入,登出
基本格式:iscsiadm -m node [ -d debug_level ] [ [ -T targetname -p ip:port -I ifaceN ] [ -l | -u | -R | -s] ] [ [ -o operation ]
# iscsiadm -m node -d 1 -T iqn.2015-01.com.liaobin:i1.c2 -p 192.168.191.113:3260 -l #登入
# iscsiadm -m node -d 1 -T iqn.2015-01.com.liaobin:i1.c2 -p 192.168.191.113:3260 -u #登出
# iscsiadm -m node -d 1 -T iqn.2015-01.com.liaobin:i1.c2 -p 192.168.191.113:3260 -o delete #刪除指定條目
--------------------------------------------------------------
測試:
(節點上1操作)
1、查看有無磁盤設備
# fdisk -l #查看是否多出sdb,sdc,若有則說明登入成功,可分區並掛載使用
2、新建分區
# fdisk /dev/sdc #創建一個新分區
3、格式化文件系統
# mke2fs -t ext4 /dev/sdc1
4、掛載
# mount /dev/sdc1 /mnt #創建文件系統,並掛載到/mnt
5、創建一個測試文件,切換到另一個initiator節點掛載/dev/sdc1查看文件是否存在
# touch test.txt ; echo "this is test line"> test.txt
(節點2上操作)
1、查看有無磁盤設備,且掛載使用
# fdisk -l
2、直接掛載剛才節點1創建了文件系統的分區/dev/sdc1
# mount /dev/sdc1 /mnt
3、切換到/mnt目錄下查看文件是否正常
# cd /mnt;ls
# cat test.txt
顯示正常,說明創建iscsi共享存儲成功,測試完成。