CentOS7.2配置ISCSI-targetcli---Linux
一、准备工作
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 ext4defaults,_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和端口之间有一个空格
最后配置fstab实现自动挂载
vim /etc/fstab
/dev/sdb1 /disk xfs _netdev 0 0