targetcli搭建iscsi
介绍
linux中,使用targetcli搭建iscsi
假设使用磁盘分区或者逻辑卷,/dev/sdb1 /dev/sdb2,并且
一台机器为服务器,两台机器为客户端
服务器:192.168.0.3
客户端:192.168.0.4 192.168.0.5
如果只有两台机器,那么需要一台机器既为服务端又为客户端。
内容
1、下载安装软件
Centos下:
yum -y install targetcli
其他自行下载
或
https://pkgs.org/
自行下载
下载安装后需要在服务端保证服务启动,执行如下命令:
systemctl start target
或
systemctl start tgt.service
服务端保证iSCSI正常启动,执行如下:
systemctl status iscsi
systemctl start iscsi
防火墙或者开放端口,主要是3260端口,自行设置。
2、服务端配置
执行如下进入targetcli界面
targetcli
首先创建要使用的逻辑卷,如下命令:
/backstores/block/ create xendata1 /dev/sdb1
/backstores/block/ create xendata2 /dev/sdb2
如图:
然后配置ISCSITarget命名,即创建 IQN (Iscsi Qualified Name) ,执行如下命令:
iscsi/ create iqn.2024-05.com.smile:smile1
创建完成后开始下面的配置:
cd iscsi/iqn.2024-05.com.smile:smile1/tpg1/
创建lun(target块设备的逻辑单元):
luns/ create /backstores/block/xendata1
luns/ create /backstores/block/xendata2
后续我们的客户端都会共享到这两个逻辑卷,如果更多配置请自行设置。
此处如果没有portals/,需要自行创建,大部分情况下已经存在!
并且后续使用此端口:
portals/ create 0.0.0.0 3261
创建ACL允许ISCSI客户机连接:
acls/ create iqn.2018-06.com.xenserver:client
此处的 “iqn.2018-06.com.xenserver:client” 应该去客户端上看,
位于 /etc/iscsi/initiatorname.iscsi 下,应该和此文件中的名称一致
创建用户和密码,执行如下:
cd acls/
cd iqn.2018-06.com.xenserver:client/
set auth userid=ye
set auth password=123456
info
如果需要多台机器共享,重复创建acls即可
3、客户端配置
安装:
yum -y install iscsi-initiator-utils
或
yum -y install iscsi-initiator-utils
配置ISCSIInitiator名称(此处InitiatorName须与服务端配置的ACL允许ISCSI客户机连接的名称一致),如下:
InitiatorName=iqn.2018-06.com.xenserver:client
最好不要修改这个文件!!!!!!
修改ISCSIInitiator配置文件:
vim /etc/iscsi/iscsid.conf
添加:
node.session.auth.authmethod = CHAP
node.session.auth.username = ye
node.session.auth.password = 123456
查找、连接ISCSI设备,如下:
iscsiadm --mode discovery --type st --portal xxxx:xx
iscsiadm --mode node --targetname xxx --portal xxxx:xx --login