讲师中心 微信公众号

工具推荐

视频效率加速
Seko
Seko

AI短剧一键生成成片

Laper
Laper

剧本策划到成片协作

立刻MV
立刻MV

低成本歌曲 MV、视频生成

updream

一键生成高质量推广成片

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

云辰大大_7788

云辰大大_7788

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

|

344人浏览过

|

来源于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.conf 中 defaults 或 devices 段的 path_grouping_policy
  • 建议:如需负载分担,显式设为 multibus 或 group_by_prio,并确保配套使用 service-time 或 queue-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。

Web Accessibility (WCAG 2 AA))
Web Accessibility (WCAG 2 AA))

将 WCAG 2 AA 无障碍标准应用于设计系统、UI 组件和网页——通过可运行的验证器进行对比度计算,采用设计 token 模式使颜色天生可访问,设定排版和焦点状态规则,并提供语义检查清单。适用于构建或审查 UI。

下载
  • 验证 ALUA 是否生效:sg_rtpg -d /dev/sdX(需安装 sg3_utils),观察返回中是否含 implicit transition 或 explicit 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=0、scsi_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 failed 或 checker failed
  • 协同排查:联系存储管理员确认所有 HBA WWPN 均被正确映射至同一 LUN,且 zone 内无遗漏端口

热门AI工具

更多
切问学术

切问学术是一款AI论文写作工具,复旦大学NLP团队推出的AI学术智能体。

Loomy
Loomy Hot

一款AI工具,主要用于科大讯飞发布的桌面级 AI 助理,比 OpenClaw 更易用、更安全!,适合需要提升相关任务效率的用户。

火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

SkildArt
SkildArt Hot

SkildArt是一款AI文本写作工具,一站式 AI 视觉创作平台。

讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

Flowith
Flowith Hot

Flowith是一款基于画布和智能体工作流的 AI 协作工作空间。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

相关专题

更多
counta和count的区别
counta和count的区别

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

3828

2023.11.20

length函数用法
length函数用法

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

1987

2023.09.19

css3transition
css3transition

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

1990

2023.06.27

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

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

3067

2023.10.09

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

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

2993

2023.10.16

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

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

3193

2023.10.18

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

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

448

2023.10.31

access怎么导入数据
access怎么导入数据

access导入数据步骤:1. 选择数据源 2. 选择要导入的文件 3. 指定导入选项 4. 选择导入目标 5. 预览数据 6. 导入数据即可。想了解更多access的相关内容,可以阅读本专题下面的文章。

5185

2024.04.10

Postman身份认证怎么配置
Postman身份认证怎么配置

本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。

60

2026.11.06

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
uni-app从入门到实战教程
uni-app从入门到实战教程

共0课时 | 0人学习

uni-app x harmony开发指南
uni-app x harmony开发指南

共0课时 | 0人学习

uni-app鸿蒙运行和发行
uni-app鸿蒙运行和发行

共0课时 | 0人学习

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

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn