news 2026/5/30 23:32:03

保姆级教程:在CentOS 7上用targetcli配置iSCSI Target,并让另一台Linux客户端挂载

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
保姆级教程:在CentOS 7上用targetcli配置iSCSI Target,并让另一台Linux客户端挂载

企业级iSCSI存储配置实战:从服务端部署到客户端高可用挂载

在数据中心和云计算环境中,网络存储的可靠性和性能直接关系到业务连续性。iSCSI作为IP SAN的核心技术,相比传统FC SAN具有成本低、扩展性强和易于管理等优势。本文将基于CentOS 7环境,通过targetcli工具链演示如何构建生产级iSCSI存储解决方案,涵盖服务端配置、安全加固、客户端多路径优化等企业级特性。

1. 环境准备与基础架构设计

1.1 硬件与网络规划

典型的iSCSI部署需要至少两台服务器:

  • Target服务器:建议配置16GB+内存,RAID控制器配备BBU缓存,使用SSD或高性能SAS硬盘
  • Initiator服务器:根据业务负载配置,建议万兆网络接口

网络拓扑建议采用双交换机冗余架构:

[Target Server] ├── [Switch A] (10Gbps) └── [Switch B] (10Gbps) ├── [Initiator 1] └── [Initiator 2]

1.2 操作系统调优

在开始配置前,需对双方服务器进行内核参数优化:

# 禁用NUMA平衡(大数据量场景) echo 0 > /proc/sys/kernel/numa_balancing # 增加TCP窗口大小 echo 'net.ipv4.tcp_rmem = 4096 87380 16777216' >> /etc/sysctl.conf echo 'net.ipv4.tcp_wmem = 4096 65536 16777216' >> /etc/sysctl.conf # 优化SCSI超时设置(防止网络抖动导致误判) echo 180 > /sys/block/sdX/device/timeout

2. 服务端高级配置

2.1 targetcli核心组件详解

targetcli的层次结构包含以下关键对象:

对象类型作用生产环境建议
backstores物理存储资源定义使用block模式获得最佳性能
iscsiiSCSI目标配置规范命名IQN便于管理
TPG目标门户组(含ACL、LUN等子对象)为不同业务创建独立TPG
LUN逻辑单元映射启用ALUA支持多路径

创建企业级iSCSI目标的完整流程:

# 进入交互式配置界面 targetcli # 创建高性能存储池 /backstores/block create ssd_pool /dev/mapper/ssd_raid0 # 规范命名目标(推荐域名反写+日期) /iscsi/ create iqn.2023-08.example.com:storage.primary # 配置CHAP双向认证 cd /iscsi/iqn.2023-08.example.com:storage.primary/tpg1/ set attribute authentication=1 generate_node_acls=0 acls/ create iqn.2023-08.example.com:client.web01 cd acls/iqn.2023-08.example.com:client.web01 set auth userid=prod_chap_user set auth password=KX9#mZ2p$vR1! set auth mutual_userid=mutual_chap set auth mutual_password=dQw4w9WgXcQ!

2.2 高可用性配置

为确保服务连续性,需要配置:

  1. 多路径支持

    # 在Target端启用多个门户 /iscsi/iqn.../tpg1/portals/ create 192.168.100.201 /iscsi/iqn.../tpg1/portals/ create 192.168.100.202
  2. 持久化配置备份

    # 定期备份配置 targetcli saveconfig /etc/target/backup_config.json # 灾难恢复时使用 targetcli restoreconfig /etc/target/backup_config.json

3. 客户端专业级配置

3.1 多路径I/O优化

企业环境必须配置multipathd防止单点故障:

# 安装多路径工具 yum install -y device-mapper-multipath # 基础配置模板 cat > /etc/multipath.conf <<EOF defaults { user_friendly_names yes path_grouping_policy multibus failback immediate no_path_retry 10 } devices { device { vendor "LIO-ORG" hardware_handler "1 alua" path_selector "round-robin 0" path_checker tur prio alua } } EOF # 启用服务 systemctl enable --now multipathd

3.2 自动化挂载最佳实践

生产环境推荐使用systemd mount单元替代fstab:

# 创建挂载单元 cat > /etc/systemd/system/iscsi.mount <<EOF [Unit] Description=Mount iSCSI Storage After=network-online.target iscsid.service Requires=network-online.target [Mount] What=/dev/mapper/mpatha Where=/mnt/iscsi Type=xfs Options=_netdev,noatime,nodiratime,allocsize=1g TimeoutSec=300 [Install] WantedBy=multi-user.target EOF # 启用并测试 systemctl daemon-reload systemctl enable --now iscsi.mount

4. 性能监控与故障排查

4.1 关键性能指标采集

使用iSCSI专用工具监控吞吐量和延迟:

# 实时监控会话状态 iscsiadm -m session -P 3 # 统计IOPS(需安装sysstat) iostat -xm /dev/mapper/mpatha 2 # 网络层监控 nstat -az tcpExtTCPSynRetrans # 重传统计

4.2 常见问题处理指南

问题现象:客户端突然失去存储连接

排查步骤:

  1. 检查网络连通性:

    ping -c 4 192.168.100.201 tcpping -x 5 192.168.100.201 3260
  2. 验证会话状态:

    iscsiadm -m session -o show multipath -ll
  3. 分析服务端日志:

    journalctl -u targetd --since "10 minutes ago"
  4. 必要时强制重连:

    iscsiadm -m node -R multipath -r

在真实生产环境中,我们曾遇到因交换机MTU不一致导致的性能骤降问题。通过以下命令验证后调整为统一9000字节帧:

# 检查实际MTU ping -M do -s 8972 -c 1 192.168.100.201
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/30 13:30:21

CoolProp开源热物理计算库:免费替代商业软件的终极解决方案

CoolProp开源热物理计算库&#xff1a;免费替代商业软件的终极解决方案 【免费下载链接】CoolProp Thermophysical properties for the masses 项目地址: https://gitcode.com/gh_mirrors/co/CoolProp 还在为昂贵的商业热物理计算软件发愁吗&#xff1f;想象一下&#x…

作者头像 李华
网站建设 2026/5/31 1:24:11

用Python实战斯皮尔曼相关系数:从手动推导到Pandas/Scipy一键调用

用Python实战斯皮尔曼相关系数&#xff1a;从手动推导到Pandas/Scipy一键调用在数据分析领域&#xff0c;理解变量间的关系往往比单纯计算数字更重要。想象你手头有一组学生的数学和物理成绩&#xff0c;想知道这两门学科的表现是否存在某种关联——是数学好的学生物理也普遍优…

作者头像 李华
网站建设 2026/5/31 1:23:45

树莓派Pico W调用ChatGPT API:嵌入式AI语音助手开发实战

1. 项目概述与核心价值最近在捣鼓一个智能语音助手的原型&#xff0c;核心想法是让一个巴掌大的树莓派Pico W板子&#xff0c;不仅能听懂人话&#xff0c;还能像ChatGPT一样“聪明”地回话。这听起来像是把大象塞进冰箱&#xff0c;但得益于如今成熟的云端AI API&#xff0c;这…

作者头像 李华
网站建设 2026/5/30 22:11:56

VMware里装CentOS 7.6,从镜像下载到分区配置的保姆级避坑指南

VMware虚拟机安装CentOS 7.6全流程实战指南在本地开发环境中搭建Linux系统是每个技术从业者的必修课。作为最稳定的企业级Linux发行版之一&#xff0c;CentOS 7.6至今仍是许多开发者和运维人员的首选。本文将带您从零开始&#xff0c;在VMware Workstation Pro中完成CentOS 7.6…

作者头像 李华
网站建设 2026/5/30 23:49:20

3PEAK思瑞浦 TPA6032-SO1R SOP8 运算放大器

特性 供电电压:2.5V至5.5V 低供电电流:每通道100安培 优异的电容负载驱动能力 偏移电压:3.5mV 偏移电压温度漂移:1V/C 轨到轨输入和输出 单位增益带宽:1.5MHz 峰值瞬态响应率:0.7V/us 优异的EMI抑制性能 低噪声:1kHz时为22nV/vHz 工作温度范围:-40C至125C

作者头像 李华
网站建设 2026/5/30 13:10:18

从CentOS Stream 8的坑说起:一次GitLab SSH克隆失败的完整排错实录

从CentOS Stream 8到GitLab SSH克隆&#xff1a;一次环境兼容性引发的深度排错最近在CentOS Stream 8上部署GitLab时&#xff0c;遇到了一个令人费解的问题&#xff1a;配置完SSH密钥后&#xff0c;执行git clone操作时系统不断要求输入密码&#xff0c;而无论输入什么密码都无…

作者头像 李华