在CentOS 7系统中配置iSCSI目标(iSCSI Target)可以为网络存储提供高效、灵活的解决方案,iSCSI是一种基于IP存储网络协议,允许将存储设备作为本地块设备使用,适用于企业级虚拟化、高可用性集群等场景,以下将详细介绍在CentOS 7上部署和管理iSCSI目标的步骤及注意事项。

安装必要软件包
需要安装targetcli工具,这是管理iSCSI目标的常用命令行工具,通过以下命令安装:
sudo yum install targetcli
安装完成后,启动并启用target服务,确保开机自启:
sudo systemctl start target sudo systemctl enable target
配置iSCSI目标
使用targetcli进入交互模式,开始配置目标,创建一个后端存储设备,例如使用/dev/sdb(需确保该磁盘未挂载且数据可安全清除):
sudo targetcli /> backstores/block create disk1 /dev/sdb
创建iSCSI目标,指定唯一的Target ID(如iqn.2025-06.com.example:storage.target1):
/> iscsi/ create iqn.2025-06.com.example:storage.target1
将后端存储设备绑定到目标:
/> iscsi/iqn.2025-06.com.example:storage.target1/tpg1/luns create /backstores/block/disk1
配置访问控制
为确保安全性,需设置允许访问的 Initiator(客户端),在tpg1中添加ACL规则,例如允许 Initiator 的IQN为iqn.2025-06.com.client:client1:

/> iscsi/iqn.2025-06.com.example:storage.target1/tpg1/acls create iqn.2025-06.com.client:client1
若需要CHAP认证,可设置用户名和密码:
/> iscsi/iqn.2025-06.com.example:storage.target1/tpg1/acls/iqn.2025-06.com.client:client1 set auth username=user1 /> iscsi/iqn.2025-06.com.example:storage.target1/tpg1/acls/iqn.2025-06.com.client:client1 set auth password=password123
保存配置并退出
完成配置后,保存设置并退出targetcli:
/> saveconfig /> exit
配置文件将保存在/etc/target/saveconfig.json,重启服务后依然生效。
防火墙与SELinux设置
CentOS 7默认启用防火墙,需允许iSCSI端口(3260)的流量:
sudo firewall-cmd --permanent --add-port=3260/tcp sudo firewall-cmd --reload
若使用SELinux,需安装targetd包以避免权限问题:
sudo yum install targetd sudo setsebool -P iscsiadm_exec_t 1
监控与故障排查
可通过以下命令查看目标状态:

sudo systemctl status target sudo targetcli ls
若客户端无法连接,检查日志(journalctl -u target)及网络配置,常见问题包括防火墙阻拦、ACL规则错误或CHAP认证失败。
相关问答FAQs
如何删除已配置的iSCSI目标?
在targetcli中执行以下步骤:
/> iscsi/iqn.2025-06.com.example:storage.target1/tpg1/luns delete /backstores/block/disk1 /> iscsi/iqn.2025-06.com.example:storage.target1 delete /> saveconfig
确保客户端已断开连接,避免数据丢失。
如何调整iSCSI目标的性能?
可通过修改/etc/target/xtt_provider.conf启用iser(iSCSI over RDMA)以提高性能,或调整内核参数(如net.core.rmem_max)优化网络缓冲区,确保后端存储使用高性能磁盘(如SSD)并启用多队列调度器。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复