環境准備:
兩台RHEL虛擬機:
-
node21(192.168.4.21)target端( iSCSI服務端)
- client50(192.168.4.50)initiator端( iSCSI客戶端)
target端:
# firewall-cmd --set-default-zone=trusted
# setenforce 0
# lsblk
# fdisk /dev/vdc //划分出一個5G的主分區vdc1作為后端存儲。不需要格式化文件系統,因為文件系統不在target端
# partprobe //更新分區表
一、iSCSI配置
target端配置:
1.裝包targetcli
# yum -y install targetcli
2.運行targetcli
# targetcli
2.1 創建后端存儲
/> backstores/block create name=nsd dev=/dev/vdc1
2.2 創建target
/> iscsi/ create iqn.2019-01.com.example:node21
注意:IQN 的格式為:iqn.年份-月份.反向域名:自定義標識
,如:iqn.2018-05.com.example:desktop
;其中的字母均應為小寫,即使輸入時包含大寫,命令執行后,系統會自動轉換成小寫。
2.3 創建lun邏輯單元
/> iscsi/iqn.2019-01.com.example:node21/tpg1/luns create /backstores/block/nsd
2.4 配置acl訪問控制(設置訪問服務時客戶端聲稱的名字)
/> iscsi/iqn.2019-01.com.example:node21/tpg1/acls create iqn.2019-01.com.example:client50
//客戶端配置的名稱應與上面一致
2.5 配置客戶端IP地址及端口
注:必須先刪除系統默認的 0.0.0.0:3260 這個設置,否則無法添加新的 IP 和端口
/> iscsi/iqn.2019-01.com.example:node21/tpg1/portals delete 0.0.0.0 3260
/> iscsi/iqn.2019-01.com.example:node21/tpg1/portals create 192.168.4.50 //端口缺省值為3260
/> exit
3.重啟target服務,並設置開機自啟
# systemctl restart target
# systemctl enable target
initiator端配置:
1. 裝包iscsi-initiator-utils
[root@client50 ~]# rpm -q iscsi-initiator-utils
iscsi-initiator-utils-6.2.0.874-4.el7.x86_64
2.修改配置文件
# vim /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2019-01.com.example:client50 //名稱應與服務端acl配置的名稱一致
3.重啟服務 iscsid
# systemctl restart iscsid //更新IQN標識。注意是:iscsid
4.發現服務端IQN
可參考# man iscsiadm, 搜索 /examples
# iscsiadm --mode discoverydb --type sendtargets --portal 192.168.4.21 --discover //或 # iscsiadm -m discovery -t st -p 192.168.4.21
192.168.4.50:3260,1 iqn.2019-01.com.example:node21
5. 識別服務端共享
# systemctl restart iscsi //注意是:iscsi
# systemctl enable iscsi
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 4G 0 disk
...
6.分區、格式化、掛載
# fdisk /dev/sda
# mkfs.ext4 /dev/sda1
//開機自動掛載:
# blkid /dev/sda1 //獲取磁盤UUID
# vim /etc/fstab
UUID=9f122014-071a-4416-b40f-ece882285b2b /mnt/iscsi/ ext4 defaults,_netdev 0 0
# mount -a
二、iSCSI卸載
客戶端卸載iSCSI Target
# umount /mnt/iscsi/ //卸載
# vim /etc/fstab //刪除開機自動掛載配置
# iscsiadm -m node -T iqn.2019-01.com.example:node21 -u //登出
# iscsiadm -m session -P 3 | grep Attached //驗證是否還存在 iSCSI Session
# lsblk
# iscsiadm -m node -o delete -T iqn.2019-01.com.example:node21 //刪除發現iSCSI信息
# ll /var/lib/iscsi/nodes/
總用量 0
即在客戶端刪除了iSCSI Target
服務端刪除iSCSI Target和Backstores
按順序分別刪除portals、acls、luns、iSCSI Targets和后端存儲即可。