ISCSI
一、准備工作
1.1、(服務端和客戶端都需要設置)
系統使用的是CentOS7.2
禁用防火牆:
查看狀態:# systemctl status firewalld或者 firewall-cmd--state
停止:# systemctl stop firewalld
開機不啟動:# systemctl disable firewalld
SELINUX禁用:
vi /etc/selinux/config
SELINUX=disabled
1.2、說明:
服務器:
主機名--- servermwd;IP--- 192.168.13.30
客戶機:
主機名--- mwdinit;IP--- 192.168.13.31
注:# vi /etc/hostname
二、iSCSI Target(服務器端)
修改主機名和IP
# vi /etc/hostname
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
安裝targetcli
# yum -y install targetcli
啟動target服務
# systemctl start target
設置開機啟動服務
# systemctl enable target
新建分區
注意:(/dev/sdb1)第二塊硬盤(可自定義任何磁盤),fdisk -l查看磁盤信息,分區大小可自定義如在Last扇區后輸入【+7G】表示該分區分配大小為7G,注意不要格式化分區。
# fdisk /dev/sdb
n --- p --- 1 --- 回車幾次 ---p --- w
開始創建
進入targetcli
#targetcli
步驟1:建立一個塊存儲
注意:server1.disk(名稱server1可自定義),/dev/sdb1為上面新建的分區名稱。
/> /backstores/block create ib_vol1 /dev/sdb1
步驟2:配置ISCSITarget命名
注意:命名在同一子網內確保是唯一的,命名格式為:iqn.yyyy-mm.:自定義名稱(自定義名稱內不能有下划線)
/> /iscsi create iqn.2017-05.com.mwdserver:iscsimwd1
步驟3:創建ACL允許ISCSI客戶機連接
注意:iqn.2017-03.com.example:client1為客戶機ISCSI名稱。
/>/iscsi/iqn.2017-05.com.mwdserver:iscsimwd1/tpg1/acls createiqn.2017-05.com.mwdinit:initmwd1
步驟4:創建lun(target塊設備的邏輯單元)
/>/iscsi/iqn.2017-05.com.mwdserver:iscsimwd1/tpg1/luns create/backstores/block/ib_vol1
步驟5:創建ip與端口
/>/iscsi/iqn.2017-05.com.mwdserver:iscsimwd1/tpg1/portals create192.168.13.30
或
/>cd /iscsi/iqn.2017-05.com.mwdserver:iscsimwd1/tpg1/portals
/>create 192.168.13.30:3260
注:192.18.13.30為服務器IP;不指定端口默認為3260
步驟6:配置驗證用戶名和密碼(這里可以省略)
/>cd
/iscsi/iqn.2017-05.com.mwdserver:iscsimwd1/tpg1/acls/iqn.2017-05.com.mwdinit:initmwd1
/>set auth userid=test
/>set auth password=test
步驟7:配置完成后查看配置信息,並退出。
/>cd /
/>ls
/>exit
三、iSCSI Initiator(客戶端)
步驟1:安裝ISCSIInitiator
# yum -y install iscsi-initiator-utils
啟動iscsi服務
# systemctl start iscsi
設置開機啟動服務
# systemctl enable iscsi
步驟2:配置ISCSIInitiator名稱
注:此處InitiatorName必須與服務端配置的ACL允許ISCSI客戶機連接的名稱一致。
# vi /etc/iscsi/initiatorname.iscsi
iqn.2017-05.com.mwdinit:initmwd1
步驟3:修改ISCSIInitiator配置文件(上面服務端如果沒有設置有用戶和密碼這里不需要操作)
注意:
#node.session.auth.authmethod = CHAP---去掉注釋
node.session.auth.username為存儲服務端
set auth userid=username配置的username,
node.session.auth.password= password為存儲服務器端
set auth password=password配置的password。
# vi /etc/iscsi/iscsid.conf
步驟4:查找ISCSI設備
iscsiadm -m discovery -t sendtargets -p 192.168.13.30
步驟5:連接ISCSI設備
# iscsiadm -m node --login
步驟6:查看系統磁盤信息
lsblk
或 fdisk -l
步驟7:將共享磁盤掛載到指定目錄
將sdb1分區掛載到/mnt/iscsi目錄,使用df -hT命令可查看到/dev/sdb1已經掛載上並顯示其容量信息。
# mount /dev/sdb1 /home/test
步驟8:設置開機自動連接ISCSI設備
注意:iqn.2017-03.com.example:disk1為存儲服務端ISCSI名稱,192.168.**.**:3260為存儲服務端IP及端口號。
# iscsiadm -m node -T iqn.2017-05.com.mwdserver:iscsimwd1 -p192.168.13.30:3260 -o update -n node.startup -v automatic
步驟9:設置開機掛載網絡磁盤
開機掛載:采用寫入fstab方式開啟啟動掛載磁盤
獲取磁盤UUID:# blkid/dev/sdb1
編輯fstab:# vi/etc/fstab
添加配置:UUID=9f122014-071a-4416-b40f-ece882285b2b /mnt/iscsi ext4 defaults,_netdev 0 0
說明:
UUID=ba7925cc-9bfb-4238-984d-999e18d592e8:磁盤UUID,代表磁盤。
/mnt/iscs:代表掛載路徑,根據實際靈活變動。
ext4:代表文件系統,根據實際靈活變動。
_netdev:代表該掛載的磁盤分區為網絡磁盤分區。
四、備忘錄
4.1、客戶端查找不到服務端的ISCSI設備
報錯如下:
[root@mwdinit ~]# iscsiadm -m discovery -t sendtargets -p192.168.13.30
iscsiadm: cannot make connection to 192.168.13.30: Connectionrefused
iscsiadm: cannot make connection to 192.168.13.30: Connectionrefused
iscsiadm: cannot make connection to 192.168.13.30: Connectionrefused
iscsiadm: cannot make connection to 192.168.13.30: Connectionrefused
iscsiadm: cannot make connection to 192.168.13.30: Connectionrefused
iscsiadm: cannot make connection to 192.168.13.30: Connectionrefused
iscsiadm: connection login retries (reopen_max) 5 exceeded
iscsiadm: Could not perform SendTargets discovery: encounteredconnection failure
解決:因服務端未指定ip和端口
o-portals..................................................................................[Portals: 1]
| o- 192.168.13.30:3260
4.2、客戶端查找不到服務端的ISCSI設備2
iscsiadm: Could not perform SendTargets discovery: encounteredconnection login failure
解決:
lsof -i:3260發現tgtd服務也啟動了,這樣與target服務共用了端口,把tgtd服務關掉並設置為開機不啟動
停止:# systemctl stop tgtd
開機不啟動:# systemctl disable tgtd
4.3、Could not create NetworkPortal in configFS
原因:發現
portals..................................................................................[Portals: 1]
| o- 0.0.0.0:3260
已經存在了一個IP和端口,需要刪除
解決:/>cd /iscsi/iqn.2017-05.com.mwdserver:iscsimwd1/tpg1/portals
/>/iscsi/iqn.20.../tpg1/portals> delete 0.0.0.0 3260
注:ip和端口之間有一個空格