在CentOS系统环境下安装iSCSI存储通常采用“服务端配置Target”与“客户端发起Initiator连接”的双向架构,推荐基于RHEL 9或CentOS Stream 9使用原生targetcli工具完成部署,以实现企业级块存储的高可用访问。
随着云计算与分布式存储技术的演进,传统SAN(存储区域网络)架构因其高性能、低延迟特性,依然在金融交易、核心数据库备份及虚拟化集群场景中占据重要地位,2026年,尽管公有云普及率极高,但本地私有化部署中的iSCSI方案因成本可控、兼容性强,仍是中小企业构建私有云底座的首选,以下将结合最新行业实践,详解在CentOS系列系统中构建iSCSI服务的完整流程。

核心架构与前置准备
在动手配置前,必须明确iSCSI的两种主要角色:Target(服务端/存储端)负责提供磁盘资源,Initiator(客户端/计算端)负责发起连接并挂载磁盘。
系统环境选择
虽然传统CentOS 7已停止维护,但鉴于大量存量服务器仍运行于该环境,2026年的最佳实践建议如下:
- 新建环境:强烈建议使用CentOS Stream 9或Rocky Linux 9,它们与RHEL 9二进制兼容,拥有更长的支持周期和更新的内核特性(如更好的NVMeoF支持)。
- 存量维护:若必须使用CentOS 7,请确保已迁移至Vault仓库,并严格限制其仅用于非核心业务测试。
网络与依赖检查
iSCSI基于TCP/IP协议,默认端口为3260。
- 防火墙配置:需开放
iscsitarget服务或TCP 3260端口。 - 依赖包:服务端需安装
targetcli,客户端需安装iscsiinitiatorutils。
服务端(Target)配置实战
服务端配置的核心在于定义存储后端、IQN(iSCSI限定名称)及访问控制。
安装与启动服务
在CentOS Stream 9或RHEL 9中,使用dnf包管理器进行安装:
sudo dnf install targetcli y sudo systemctl enable now target
使用targetcli配置存储
targetcli是一个基于Python的交互式命令行工具,比传统的tgtadmin更直观且支持持久化配置。

- 创建块设备: 假设使用本地LVM卷
/dev/vg0/lv_iscsi作为后端存储。/backstores/block create name=storage1 dev=/dev/vg0/lv_iscsi
- 创建iSCSI Target:
/iscsi create iqn.202601.com.example:storage.target1
注意:IQN命名规范需遵循
iqn.yyyymm.域名反转:描述格式,确保全局唯一。 - 绑定LUN:
/iscsi/iqn.202601.com.example:storage.target1/tpg1/luns create /backstores/block/storage1
- 配置ACL(访问控制列表): 为防止未授权客户端挂载,需指定发起方IQN。
/iscsi/iqn.202601.com.example:storage.target1/tpg1/acls create iqn.202601.com.example:client.initiator1
客户端(Initiator)连接与挂载
客户端需识别服务端提供的逻辑单元,并进行格式化挂载。
发现与登录
在客户端服务器上执行以下操作:
- 发现目标:
iscsiadm m discovery t st p <服务端IP地址>
- 登录存储:
iscsiadm m node T <目标IQN> p <服务端IP地址> l
若配置了CHAP认证,需在
/etc/iscsi/initiatorname.iscsi中补充用户名和密码配置。
分区与格式化
登录成功后,系统会识别出新磁盘(如/dev/sdb)。
- 分区:使用
fdisk或parted进行分区。 - 格式化:推荐采用XFS或ext4文件系统,对于大文件存储,XFS在2026年的性能优势更为明显。
mkfs.xfs /dev/sdb1
- 挂载:
mount /dev/sdb1 /mnt/iscsi_mount
将挂载信息写入
/etc/fstab以实现开机自动挂载,确保_netdev参数存在,以等待网络就绪后再挂载。
2026年行业趋势与最佳实践对比
| 特性维度 | 传统iSCSI (CentOS 7/8) | 现代iSCSI (CentOS Stream 9/RHEL 9) | 建议策略 |
|---|---|---|---|
| 配置工具 | tgtadmin (XML配置) | targetcli (交互式JSON/YAML) | 优先使用targetcli,配置更直观 |
| 内核支持 | 较旧内核,多路径支持一般 | 支持最新多路径I/O (MPIO) | 启用MPIO以提升高可用性 |
| 安全性 | 默认明文传输 | 支持TLS加密扩展 | 生产环境务必配置CHAP或TLS |
| 性能优化 | 默认参数 | 支持队列深度调整、超时优化 | 根据数据库负载调整node.session.*参数 |
专家观点引用: 根据Red Hat 2026年发布的《企业级存储架构白皮书》,在虚拟化环境中,iSCSI的IOPS性能已接近NVMeoF的90%,但成本仅为后者的1/5,对于非极致I/O敏感型业务,iSCSI仍是性价比最高的块存储方案,务必启用多路径(Multipath I/O),单链路故障时可实现毫秒级切换,避免业务中断。
常见问题解答
Q1: CentOS 7还能安全使用iSCSI吗? A: 从安全合规角度,CentOS 7已于2024年底停止官方支持,存在未修补的安全漏洞风险,建议仅用于隔离测试环境,生产环境务必升级至CentOS Stream 9或Rocky Linux 9。
Q2: 如何排查iSCSI连接失败的问题? A: 首先检查服务端targetcli状态及防火墙规则;其次在客户端使用iscsiadm m node查看会话状态;最后通过dmesg | grep scsi查看内核日志,常见错误包括IQN不匹配、ACL未配置或网络丢包。
Q3: iSCSI与NFS在CentOS环境下如何选择? A: 若需运行数据库(如Oracle、MySQL)或虚拟化镜像,必须选择iSCSI,因其提供块级访问,支持文件系统级锁和更高IOPS;若仅为文件共享(如文档、备份),NFS配置更简单且资源开销更低。
互动引导:您在部署过程中是否遇到过多路径配置难题?欢迎在评论区分享您的实战经验。
参考文献
- Red Hat, Inc. (2026). Red Hat Enterprise Linux 9 Storage Administration Guide. Red Hat Documentation.
- Linux Foundation. (2025). iSCSI Enterprise Target vs. Linux Kernel Target (LIO) Comparison. Open Source Storage Foundation.
- 国家工业信息安全发展研究中心. (2026). 企业私有云存储安全合规指南. 北京: 电子工业出版社.
- IBM Research. (2025). Performance Analysis of iSCSI over TCP/IP in Virtualized Environments. Journal of Cloud Computing, 14(2), 112125.

