on  It Road.com

识别路径分组策略

虽然为多路径设备配置的路径分组策略未在 multipath -ll 的输出中明确说明,但由输出中显示的路径分组指示。
例如,配置了故障转移路径分组策略的多路径设备在每个组中将只有一个路径。
如下例所示,显示了多个路径组,每个路径组包含一个路径。

multipath { 
    wwid                      360014053bd9ea2a35914e39a556051cf
    path_grouping_policy      failover
}
# multipath -ll
mpatha (360014053bd9ea2a35914e39a556051cf) dm-0 LIO-ORG ,clusterstor 
size=4.0G features='0' hwhandler='0' wp=rw 
|- + - policy%'service-time 0 1 prio=1 status=active 
|  ` - 2:0:0:0 sda 8:0 active ready running 
`- + - policy='service-time 0' prio=1 status=enabled
   ` - 3:0:0:0 sdb 8:16 active ready running

另一方面,当配置了 multibus 的路径分组策略时,多路径设备会将所有路径分组到一个优先级组中。
如以下示例所示,使用此配置,仅显示单个路径组,并且多路径设备中的所有路径都是该单个组的成员。

multipath { 
    wwid                       360014053bd9ea2a35914e39a556051cf
    path_grouping_policy       multibus
}
# multipath -ll 
mpatha (360014053bd9ea2a35914e39a556051cf) dm-0 LIO-ORG ,clusterstor 
size=4.0G features='0' hwhandler='0' wp=rw 
`- + - policy='service-time 0' prio=1 status=active 
   | - 2:0:0:0 sda 8:0 active ready running
   ` - 3:0:0:e sdb 8:16 active ready running
如何在 Linux 中监控 dm-multipathing 的状态和多路径设备(路径组)

观察路径故障转移

multipath -ll 命令还可用于评估配置了故障转移路径分组策略的多路径设备的故障转移活动。
故障转移策略实施主动-被动多路径配置。
因此,在任何给定时间,只有一个路径组处于活动状态,而其余路径组处于启用状态等待,如下例所示。

# multipath -ll 
mpatha (360014053bd9ea2a35914e39a556051cf) dm-0 LIO-ORG ,clusterstor 
size=4.0G features='0' hwhandler='0' wp=rw 
|- + - policy='service-time 0' prio=1 status=active 
|  ` - 2:0:0:0 sda 8:0 active ready running 
`- + - policy='service-time 0' prio=1 status=enabled
   ` - 3:0:0:0 sdb 8:16 active ready running

以下示例说明了在被动路径组上发生路径故障时 multipath -11 命令的输出变化。
当被动路径组中路径的状态发生变化时,主动路径组及其对应路径的状态保持不变且未受损。

# multipath -ll 
mpatha (360014053bd9ea2a35914e39a556051cf) dm-0 LIO-ORG ,clusterstor 
size=4.0G features='0' hwhandler='0' wp=rw
|- + - policy='service-time 0 1 prio=l status=active 
|  ` - 2:0:0:0 sda 8:0 active ready running 
`- + - policy='service-time 0 1 prio=0 status=enabled
   ` - 3:0:0:0 sdb 8:16 failed faulty offline

以下示例说明了在活动路径组中的路径上发生路径故障时 multipath -ll 命令的输出的变化。
先前活动路径的状态已更改为失败故障离线。
因此,相应路径组的状态也发生了变化,从活动变为启用。
由于故障转移配置,先前的被动路径已转换为主动就绪运行状态。
相应路径组的状态也从启用变为活动。

# multipath -11 
mpatha (360014053bd9ea2a35914e39a556051cf} dm-0 LIO-ORG ,clusterstor 
size=4.0G features01 hwhandler='0' wp=rw 
| - + - policy='service-time 0' prio=0 status=enabled 
|   ` - 2:0:0:0 sda 8:0 failed faulty offline
` - + - policy='service-time 0 1 prio=l status=active
    ` - 3:(:):0:0 sdb 8:16 active ready running

注意:一旦故障路径恢复,当前活动路径将保持活动状态。
即使失败的路径是以前的活动路径,情况也是如此。
没有人工干预,不会发生路径组回尾。
此行为由 /etc/multipath.conf 中的 tailback 选项控制,默认为手动。

监控

multipath 命令可用于监控多路径的状态。
当与一个 -l 方法一起使用时,它将显示多路径拓扑的快速概览。
如果 -l 选项被指定两次 (-ll ),它还将对所有路径执行检查以查看它是否处于活动状态。
如果一切正常,路径将被报告为活动就绪。

multipath -ll 的输出提供有关每个发现的多路径设备的信息。
这包括三个部分。
这些部分提供有关多路径设备的信息、其路径组的信息以及构成每个路径组的路径。
以下是为多路径设备提供的信息示例。

mpatha (360014053bd9ea2a35914e39a556051cf)  dm-0  LIO-ORG ,clusterstor  
size=4.0G features:'0'  hwhandler='0' wp=rw  
|- + - policy='service-time 8:0 active
|- + - 2:0:0:0 active ready running
 `- + - policy='service-time  0'  prio=1 status=enabled
  `- + - 3:0:0:0  sdb 8:16 active ready running

输出的第一部分提供有关多路径设备的信息。
第一行提供别名、wwid、设备名称、供应商和产品信息。
第二行显示多路径设备的大小、启用的功能、硬件处理程序和写入权限设置。

mpatha (360014053bd9ea2a35914e39a556051cf) dm-0 LIO-ORG ,clusterstor
size=4.0G features='0' hwhandler='0' wp=rw

对于每个多路径设备,multipath -ll 命令还提供有关其每个路径组的信息。
每个路径组显示每个路径组的调度策略、优先级和状态。
后面是组成路径组的路径列表。

对于每个路径,提供设备节点名称以及设备主要和次要信息。
还会报告路径状态,可用于评估每条路径的健康状况。

|- + - policy='service-time 0' prio=1 status=active
|`- + - 2:0:0:0  sda  8:0 active ready  running

已启动并准备好进行 1/0 操作的路径将报告为就绪状态。

| `- 2:0:0:0 sda 8:0 active ready running

另一方面,关闭的路径将报告状态为 faulty 。

|`- 3:0:0:0 sdb 8:16 failed faulty offline
日期:2020-09-17 00:13:44 来源:oir作者:oir