1. 前言
本文主要讲解如何在CentOS系统上创建iSCSI target服务。iSCSI是Internet Small Computer Systems Interface的缩写,基于IP的存储,通过在IP网络上携带SCSI信令,工作在互联网协议之上。iSCSI传输客户端iSCSI initiator和存储服务器iSCSI target之间的块级数据。
iSCSI存储在Redhat集群、VMware vSphere、Redhat Enterprise Virtualization Manager、Ovirt等场景中用作共享存储。
在本教程中,您将学习到以下知识:
如何在Linux系统上搭建一个iSCSI存储服务器。
实施准备工作:
-
- CentOS 7.X/8.X系统
-
- 具有root权限或者sudo权限
-
- 熟悉Linux基本命令行操作,比如安装软件、vi命令
软件工具清单:
-
- targetcli:安装在iSCSI协议服务器,用于共享块存储。
-
- 准备一块单独硬盘或者一个独立分区,用于共享。
您可以选择是否使用身份验证来完成本次任务。在本文中,您可以找到两种场景的步骤。由您来决定哪一个适合您的环境。
为了简化配置过程,本文将配置不需要CHAP认证的iSCSI target (服务器端)。
2. 在服务器上安装targetcli软件包
yum install targetcli -y
3. 配置iSCSI target服务
安装软件包后,执行下面的命令以获得一个iSCSI cli交互提示符。
targetcli
假设我们把vdb这块硬盘共享出去。
/> cd backstores/block
/backstores/block> create scsi_disk1_server /dev/vdb
输出结果:
Created block storage object scsi_disk1_server using /dev/vdb.
创建iqn:
/backstores/block> cd /iscsi
/iscsi> create iqn.2021-11.iscsi.linuxrumen.com:disk1
输出结果:
Created target iqn.2021-11.iscsi.linuxrumen.com:disk1.
Created TPG 1.
Global pref auto_add_default_portal=true
Created default portal listening on all IPs (0.0.0.0), port 3260.
为客户端机器创建ACL(它是客户端用于连接的IQN)。
/iscsi> cd /iscsi/iqn.2021-11.iscsi.linuxrumen.com:disk1/tpg1/acls
/iscsi/iqn.20...sk1/tpg1/acls> create iqn.2021-11.iscsi.linuxrumen.com:node1node2
在target下创建LUN,LUN应该使用前面提到的backing存储对象“scsi_disk1_server”。
/iscsi/iqn.20...er:disk1/tpg1> cd /iscsi/iqn.2021-11.iscsi.linuxrumen.com:disk1/tpg1/luns
/iscsi/iqn.20...sk1/tpg1/luns> create /backstores/block/scsi_disk1_server
输出:
Created LUN 0.
Created LUN 0->0 mapping in node ACL iqn.2021-11.iscsi.linuxrumen.com:node1node2
验证配置:
/iscsi/iqn.20.../tpg1/portals> cd /
/> ls
/> saveconfig
Configuration saved to /etc/target/saveconfig.json
/> exit
输出结果:
Global pref auto_save_on_exit=true
Last 10 configs saved in /etc/target/backup/.
Configuration saved to /etc/target/saveconfig.json
设置开机自启动,以及重启服务:
systemctl enable target.service
systemctl restart target.service
配置防火墙对外开放服务:
firewall-cmd --permanent --add-port=3260/tcp
firewall-cmd --reload
4. 总结
至此,iSCSI target服务器已经配置完毕。下一个教程,我们将学习如何配置客户端iSCSI initiator。
评论前必须登录!
注册