SUSE Linux 11下用系统自带多路径连接华为OceanStor存储(iSCSI实战)
SUSE Linux 11下用系统自带多路径连接华为OceanStor存储iSCSI实战在企业的存储架构中iSCSI技术因其成本效益和部署灵活性而广受欢迎。特别是对于仍在使用SUSE Linux Enterprise 11SLES 11这类较旧系统的企业如何高效稳定地连接现代存储设备如华为OceanStor系列成为运维团队面临的实际挑战。本文将深入探讨在不依赖厂商专用工具的情况下如何利用系统自带的多路径功能实现这一目标。1. 环境准备与基础配置在开始配置前确保服务器与存储之间的网络连接正常。建议使用独立的网络接口用于iSCSI通信避免与业务流量产生冲突。华为OceanStor存储的业务IP需要与服务器在同一子网内并确保已正确配置网关。验证网络连通性的基本命令ping 192.168.1.100 # 替换为存储的业务IP traceroute 192.168.1.100对于SLES 11系统首先需要确认必要的软件包是否已安装rpm -qa | grep -E open-iscsi|multipath-tools若未安装可通过YaST工具进行安装运行yast命令进入管理界面选择Software → Software Management搜索并安装open-iscsi和multipath-tools包2. iSCSI启动器详细配置2.1 初始化iSCSI服务启动iSCSI服务并设置开机自启/etc/init.d/open-iscsi start chkconfig open-iscsi on配置iSCSI启动器名称至关重要它将在存储系统中唯一标识该主机。编辑配置文件vi /etc/iscsi/initiatorname.iscsi文件内容应类似InitiatorNameiqn.1996-04.de.suse:01:unique-host-identifier保存后重启服务使更改生效/etc/init.d/open-iscsi restart2.2 发现与登录存储目标执行发现命令将192.168.1.100替换为存储的业务IPiscsiadm -m discovery -t st -p 192.168.1.100成功发现目标后登录所有发现的存储节点iscsiadm -m node -l为确保故障转移时自动重连修改配置文件vi /etc/iscsi/iscsid.conf将node.startup manual改为node.startup automatic3. 多路径配置与优化3.1 基础多路径设置启用并配置多路径服务/etc/init.d/multipathd start chkconfig multipathd on创建多路径配置文件/etc/multipath.conf针对华为OceanStor存储的推荐配置devices { device { vendor HUAWEI product XSG1 path_grouping_policy group_by_prio path_checker tur features 0 hardware_handler 1 alua prio alua failback immediate no_path_retry 30 } }3.2 多路径验证与故障排查查看多路径设备状态multipath -ll典型输出示例mpathb (360002ac0000000000000005200016e53) dm-2 HUAWEI,XSG1 size1.0T features0 hwhandler1 alua wprw -- policyservice-time 0 prio50 statusactive |- 5:0:0:1 sdb 8:16 active ready running - 6:0:0:1 sdc 8:32 active ready running常见问题排查命令dmesg | grep -i scsi # 查看SCSI层错误 iscsiadm -m session -P 3 # 查看iSCSI会话详情 multipathd -k # 进入交互式多路径调试模式4. 存储识别与持久化挂载4.1 设备扫描与分区重新扫描SCSI总线以识别新设备echo 1 /sys/class/scsi_device/*/device/rescan使用fdisk或parted对新发现的磁盘进行分区fdisk /dev/mapper/mpathb创建分区后建议使用XFS或ext4文件系统进行格式化mkfs.xfs /dev/mapper/mpathb-part14.2 配置持久化挂载获取多路径设备的UUIDblkid /dev/mapper/mpathb-part1编辑/etc/fstab文件添加挂载项UUID1234-5678 /mnt/data xfs _netdev 0 0关键参数说明_netdev指明这是网络设备确保网络就绪后再挂载文件系统类型根据实际选择xfs/ext4等建议使用UUID而非设备路径避免设备名变化导致挂载失败5. 性能调优与日常维护5.1 iSCSI参数优化调整内核参数提升iSCSI性能编辑/etc/sysctl.confnet.ipv4.tcp_timestamps 1 net.ipv4.tcp_sack 1 net.ipv4.tcp_window_scaling 1 net.core.rmem_max 4194304 net.core.wmem_max 4194304 net.ipv4.tcp_rmem 4096 87380 4194304 net.ipv4.tcp_wmem 4096 16384 4194304应用更改sysctl -p5.2 多路径监控策略设置定期多路径状态检查*/5 * * * * root /sbin/multipath -ll /var/log/multipath.status关键监控指标路径状态active/failedI/O错误计数路径切换频率设备延迟统计5.3 故障场景处理指南路径故障恢复检查物理连接和交换机状态验证IP连通性重启受影响的iSCSI会话iscsiadm -m node -p target_ip -R存储设备更换流程在存储端解除旧设备映射在主机端刷新设备信息multipath -F echo 1 /sys/class/scsi_device/*/device/delete iscsiadm -m node -U all iscsiadm -m node -l重新扫描并验证新设备在实际生产环境中我们曾遇到多路径自动切换不灵敏的情况后来发现是ALUA优先级设置不当所致。通过调整path_grouping_policy和prio参数最终实现了秒级故障切换大幅提升了存储可用性。