ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

统信UOS配置iSCSI存储服务全指南

统信UOS配置iSCSI存储服务全指南

1. 统信UOS与iSCSI服务概述

统信UOS作为国产操作系统的代表产品,在企业级应用场景中越来越普及。iSCSI(Internet Small Computer System Interface)作为一种基于IP网络的存储区域网络(SAN)协议,能够将远程存储设备映射为本地磁盘使用。在统信UOS上配置iSCSI服务,可以实现以下典型应用场景:

  • 服务器集中存储管理:将多台服务器的存储资源集中到iSCSI存储设备
  • 虚拟化环境支持:为KVM等虚拟化平台提供后端存储
  • 数据备份与容灾:通过iSCSI实现跨机房存储镜像
  • 桌面云存储:为终端用户提供弹性存储空间

与传统的FC-SAN相比,iSCSI方案具有以下优势:

  1. 成本低廉:利用现有以太网基础设施,无需专用FC交换机
  2. 部署简单:基于TCP/IP协议,配置门槛低
  3. 扩展性强:存储容量可在线扩容,不影响业务运行

2. 统信UOS环境准备

2.1 系统版本确认

在开始配置前,首先需要确认统信UOS的版本信息。执行以下命令查看系统版本:

cat /etc/os-release lsb_release -a

统信UOS专业版V20及以上版本已内置iSCSI Initiator支持。对于较早版本,可能需要手动安装相关软件包。

2.2 网络配置检查

iSCSI对网络环境有较高要求,建议:

  1. 为iSCSI流量配置专用VLAN或物理隔离网络
  2. 确保MTU值设置为9000(巨型帧)以获得最佳性能
  3. 使用至少千兆网络环境,推荐10Gbps及以上

检查网络配置命令:

ip addr show ethtool <网卡名称> | grep -i mtu ping -M do -s 8972 <目标IP> # 测试巨型帧是否生效

2.3 防火墙配置调整

统信UOS默认启用防火墙,需要放行iSCSI相关端口:

sudo firewall-cmd --permanent --add-port=3260/tcp # iSCSI默认端口 sudo firewall-cmd --reload

3. iSCSI Initiator配置详解

3.1 安装必要软件包

统信UOS默认可能未安装iSCSI Initiator工具,执行以下命令安装:

sudo apt update sudo apt install open-iscsi

安装完成后启动服务并设置开机自启:

sudo systemctl start iscsid sudo systemctl enable iscsid

3.2 发现iSCSI Target

使用以下命令发现可用的iSCSI存储设备:

sudo iscsiadm -m discovery -t st -p <iSCSI服务器IP>

发现成功后,系统会输出类似以下信息:

192.168.1.100:3260,1 iqn.2020-08.com.example:storage.target

3.3 登录iSCSI Target

发现Target后,使用以下命令建立连接:

sudo iscsiadm -m node -T <Target名称> -p <服务器IP> -l

例如:

sudo iscsiadm -m node -T iqn.2020-08.com.example:storage.target -p 192.168.1.100 -l

3.4 自动挂载配置

为确保重启后自动连接,需要设置节点自动登录:

sudo iscsiadm -m node -T <Target名称> -p <服务器IP> --op update -n node.startup -v automatic

4. 存储设备管理与优化

4.1 设备识别与分区

连接iSCSI Target后,使用以下命令查看新增磁盘:

lsblk fdisk -l

对新磁盘进行分区和格式化(以ext4为例):

sudo fdisk /dev/sdX # 交互式分区工具 sudo mkfs.ext4 /dev/sdX1

4.2 挂载配置

创建挂载点并设置自动挂载:

sudo mkdir /mnt/iscsi_storage echo "/dev/sdX1 /mnt/iscsi_storage ext4 _netdev 0 0" | sudo tee -a /etc/fstab sudo mount -a

关键参数说明:

  • _netdev:标识为网络设备,确保网络就绪后再挂载
  • 文件系统建议使用ext4或xfs,避免使用对网络延迟敏感的btrfs

4.3 性能优化建议

  1. 多路径配置(适用于高可用环境):

    sudo apt install multipath-tools sudo systemctl start multipathd
  2. 调整队列深度提升IO性能:

    echo 64 > /sys/block/sdX/queue/nr_requests
  3. 启用SCSI命令队列:

    echo "1" > /sys/block/sdX/device/queue_depth

5. 常见问题排查

5.1 连接失败问题

现象:执行iscsiadm登录命令后提示"Connection refused"

排查步骤:

  1. 检查网络连通性:

    ping <iSCSI服务器IP> telnet <iSCSI服务器IP> 3260
  2. 验证Target配置是否正确:

    sudo iscsiadm -m discovery -t st -p <服务器IP>
  3. 检查防火墙规则:

    sudo firewall-cmd --list-ports

5.2 设备识别问题

现象:登录成功但lsblk看不到新磁盘

解决方法:

  1. 重新扫描SCSI总线:

    sudo rescan-scsi-bus.sh
  2. 检查内核日志:

    dmesg | grep -i scsi
  3. 确认iSCSI会话状态:

    sudo iscsiadm -m session -P 3

5.3 性能低下问题

现象:存储访问速度明显低于网络带宽

优化检查:

  1. 确认MTU设置:

    ip link show <网卡名称>
  2. 检查网络延迟:

    ping -s 8972 <iSCSI服务器IP>
  3. 调整TCP参数:

    echo 4096 > /proc/sys/net/ipv4/tcp_rmem echo 4096 > /proc/sys/net/ipv4/tcp_wmem

6. 高级配置与安全加固

6.1 CHAP认证配置

为iSCSI连接启用CHAP认证:

  1. 编辑配置文件:

    sudo nano /etc/iscsi/iscsid.conf
  2. 修改以下参数:

    node.session.auth.authmethod = CHAP node.session.auth.username = <用户名> node.session.auth.password = <密码>
  3. 重启服务:

    sudo systemctl restart iscsid

6.2 持久化绑定配置

防止设备名在重启后变化:

  1. 获取SCSI设备唯一标识:

    sudo /lib/udev/scsi_id -g -u -d /dev/sdX
  2. 创建udev规则:

    echo 'KERNEL=="sd*", SUBSYSTEM=="block", PROGRAM=="/lib/udev/scsi_id -g -u -d %N", RESULT=="<设备ID>", SYMLINK+="iscsi_disk1"' | sudo tee /etc/udev/rules.d/99-iscsi.rules
  3. 重新加载udev规则:

    sudo udevadm control --reload-rules

6.3 监控与告警设置

配置iSCSI服务监控:

  1. 安装监控工具:

    sudo apt install monitoring-plugins-basic
  2. 创建监控脚本:

    #!/bin/bash if ! iscsiadm -m session | grep -q "iSCSI session"; then echo "CRITICAL: No active iSCSI sessions!" exit 2 fi echo "OK: iSCSI sessions active" exit 0
  3. 设置定时任务:

    */5 * * * * /usr/local/bin/check_iscsi.sh
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进