0

0

multipath -ll 显示 active 但实际 IO 走单路径的常见配置错误

冷漠man

冷漠man

发布时间:2026-01-18 19:42:32

|

144人浏览过

|

来源于php中文网

原创

multipath -ll 显示路径 active 不代表真正负载均衡或冗余生效,常见因 pgpolicy 为 failover、ALUA 未启用、udev/内核参数干扰或存储侧 zoning/LUN masking 不完整导致实际 I/O 仍走单路径。

multipath -ll 显示 active 但实际 io 走单路径的常见配置错误

运行 multipath -ll 显示路径状态为 active,不代表 I/O 真正负载均衡或冗余生效——常见问题出在底层配置未对齐,导致内核仍走单一路径。

路径组策略(pgpolicy)与选择器(selector)不匹配

即使所有路径都显示 active,若 pgpolicy 配置为 failover(默认值),系统只会启用一个优先路径,其余仅作备用。此时 multipath -ll 仍显示所有路径为 active,但实际 I/O 全部走第一组中的第一个路径。

  • 检查方式:multipath -t | grep -A5 "policy" 或查看 /etc/multipath.confdefaultsdevices 段的 path_grouping_policy
  • 建议:如需负载分担,显式设为 multibusgroup_by_prio,并确保配套使用 service-timequeue-length selector
  • 注意:group_by_prio 需配合存储端 ALUA 的优先级标记(如 0x80 表示 active/optimized),否则可能退化为 failover

ALUA 状态未正确识别或未启用

多数企业存储(如 Dell EMC, NetApp, HPE 3PAR)依赖 ALUA(Asymmetric Logical Unit Access)通告路径服务状态。若 multipathd 无法读取或解析 ALUA 信息,会将所有路径视为同级,但实际底层驱动或固件可能只响应某条路径的 I/O。

Autoppt
Autoppt

Autoppt:打造高效与精美PPT的AI工具

下载
  • 验证 ALUA 是否生效:sg_rtpg -d /dev/sdX(需安装 sg3_utils),观察返回中是否含 implicit transitionexplicit transition 及各 target port 的 state(如 Active/optimized
  • 常见错误:未在 /etc/multipath.conf 中启用 hardware_handler "1 alua",或设备未列入已知 ALUA 支持列表(vendor/product 匹配失败)
  • 补救:添加对应 device 段,明确指定 hardware_handler "1 alua"path_selector "service-time 0"

udev 规则或内核参数干扰路径发现

某些 udev 规则(如强制设置 scsi_id 格式)或内核启动参数(如 rd.multipath=0scsi_mod.use_blk_mq=0)可能导致 multipathd 启动时路径初始化异常,表现为“假 active”——路径可见但未真正加入 mpath 设备的请求队列。

  • 排查:执行 systemctl status multipathd 查看是否有 warning(如 “path already in use”、“failed to get path priority”)
  • 检查 /run/multipathd/bindings 是否存在对应 WWID 条目;对比 lsblk 中 mpathN 下挂载的 sdX 设备数是否与 multipath -ll 列出路径数一致
  • 关键点:确认 /sys/block/mpathN/device/holders/ 下是否存在多个 sdX 目录——若只有一个,说明仅一条路径被真正绑定到该 mpath 设备

存储侧 zoning 或 LUN masking 配置不完整

主机侧 multipath 看似正常,但存储交换机 zone 或存储控制器 LUN mask 仅对部分 HBA 口放行了读写权限(例如只允许 Active Path 对应的 WWPN 有 write 权限),其余路径虽能登录(login)、查询 INQUIRY,却在 SCSI WRITE 命令阶段被拒绝(返回 CHECK CONDITION + ASC 0x2A),导致上层重试后始终 fallback 到单路径。

  • 证据:用 dd if=/dev/zero of=/dev/mapper/mpathN bs=4k count=100 oflag=direct 测试时,iostat -xm 1 显示仅一个 sdX 有持续 r/w,其余路径无 IO
  • 定位方法:开启 multipathd debug 日志(echo 2 > /sys/kernel/debug/multipathd/log_level),观察路径切换日志是否频繁出现 path failedchecker failed
  • 协同排查:联系存储管理员确认所有 HBA WWPN 均被正确映射至同一 LUN,且 zone 内无遗漏端口

相关专题

更多
if什么意思
if什么意思

if的意思是“如果”的条件。它是一个用于引导条件语句的关键词,用于根据特定条件的真假情况来执行不同的代码块。本专题提供if什么意思的相关文章,供大家免费阅读。

749

2023.08.22

counta和count的区别
counta和count的区别

Count函数用于计算指定范围内数字的个数,而CountA函数用于计算指定范围内非空单元格的个数。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

197

2023.11.20

length函数用法
length函数用法

length函数用于返回指定字符串的字符数或字节数。可以用于计算字符串的长度,以便在查询和处理字符串数据时进行操作和判断。 需要注意的是length函数计算的是字符串的字符数,而不是字节数。对于多字节字符集,一个字符可能由多个字节组成。因此,length函数在计算字符串长度时会将多字节字符作为一个字符来计算。更多关于length函数的用法,大家可以阅读本专题下面的文章。

920

2023.09.19

css3transition
css3transition

css3transition属性用于指定如何从一个CSS样式过渡到另一个CSS样式,本专题为大家提供transition相关的文章、相关下载和相关课程,大家可以免费体验。

230

2023.06.27

vb中怎么连接access数据库
vb中怎么连接access数据库

vb中连接access数据库的步骤包括引用必要的命名空间、创建连接字符串、创建连接对象、打开连接、执行SQL语句和关闭连接。本专题为大家提供连接access数据库相关的文章、下载、课程内容,供大家免费下载体验。

323

2023.10.09

vb连接access数据库的方法
vb连接access数据库的方法

vb连接access数据库方法:1、使用ADO连接,首先导入System.Data.OleDb模块,然后定义一个连接字符串,接着创建一个OleDbConnection对象并使用Open() 方法打开连接;2、使用DAO连接,首先导入 Microsoft.Jet.OLEDB模块,然后定义一个连接字符串,接着创建一个JetConnection对象并使用Open()方法打开连接即可。

398

2023.10.16

asp连接access数据库的方法
asp连接access数据库的方法

连接的方法:1、使用ADO连接数据库;2、使用DSN连接数据库;3、使用连接字符串连接数据库。想了解更详细的asp连接access数据库的方法,可以阅读本专题下面的文章。

120

2023.10.18

access和trunk端口的区别
access和trunk端口的区别

access和trunk端口的区别是Access端口用于连接终端设备,提供单个VLAN的接入,而Trunk端口用于连接交换机之间,提供多个VLAN的传输;Access端口只传输属于指定VLAN的数据,而Trunk端口可以传输多个VLAN的数据,并使用VLAN标签进行区分。想了解更多access和trunk端口相关内容,可以阅读本专题下面的文章。

327

2023.10.31

高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

72

2026.01.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Java 教程
Java 教程

共578课时 | 47.6万人学习

国外Web开发全栈课程全集
国外Web开发全栈课程全集

共12课时 | 1.0万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号