对于启用排队且所有路径都关闭的多路径,内核会将提交的 IO 存储在队列中,并在路径恢复时重新提交它们。
向这些多路径提交 IO 的进程陷入 D 状态(不间断睡眠)。
'no_path_retry 4' 多路径参数将指示内核在 4 次路径测试失败后拔出队列。
拔出队列将使所有存储的 IO 失败。
如果中断会持续,管理员可能希望立即拔掉队列。
下面的 multipathd CLI 命令就是这样做的:
以下命令可以在交互模式“multipathd -k”下使用。
模式禁用排队地图|多路径
在所有多路径设备上禁用排队。
恢复排队地图|多路径
在所有多路径设备上恢复排队。
使用启用排队地图恢复原始情况
[root@~]# multipathd -k multipathd> disablequeueing m map maps multipath multipaths multipathd> disablequeueing maps
multipathd -k :将会话置于交互模式。
命令可用于列出当前配置或者更改配置。
例如,列出当前配置,并从配置文件(etc/multipath.conf)中获取最新配置。
list|show paths :显示 multipathd 正在监控的路径及其状态。
multipathd> show paths hcil dev dev_t pri dm_st chk_st dev_st next_check 0:0:0:0 sda 8:0 1 undef ready running orphan #:#:#:# pgpwde 253:0 -1 undef faulty running orphan 6:0:0:7 sdc 8:32 1 active ready running XXXXXXXXX. 19/20 multipathd>
# multipathd -k "show paths" hcil dev dev_t pri dm_st chk_st dev_st next_check 0:2:1:0 sdb 8:16 1 active ready running XXXXXX.... 12/20 7:0:0:0 sdc 8:32 1 undef ready running orphan 12:0:0:2 sdf 8:80 50 active ready running XXXXXXXXXX 20/20 12:0:0:1 sde 8:64 50 active ready running XXXXXXXXXX 20/20 12:0:0:3 sdg 8:96 50 active ready running XXXXXXXXXX 20/20 12:0:0:0 sdd 8:48 50 active ready running XXXXXXXXXX 20/20 13:0:0:1 sdh 8:112 50 active ready running .......... 1/20 [root@ovcacn12r1 ~]#
list|show status :显示每个路径检查器状态下被监控路径的数量。
multipathd> show status path checker states: down 1 up 2 paths: 1 busy: False multipathd>
list|show maps :显示 multipathd 正在监控的多路径设备。
multipathd> show maps name sysfs uuid mpathk dm-8 3600144f0f1f283fa000058e3b573000a multipathd>
# multipathd -k"show maps" name sysfs uuid 3600605b00a15ddc020260a750a6e5b93 dm-0 3600605b00a15ddc020260a750a6e5b93 3600144f0adb8c09200005547f5bd0003 dm-1 3600144f0adb8c09200005547f5bd0003 3600144f0b5d60bb10000587005a10003 dm-2 3600144f0b5d60bb10000587005a10003 3600144f0b5d60bb1000058766e74000a dm-3 3600144f0b5d60bb1000058766e74000a 3600144f0adb8c09200005547f5e80004 dm-4 3600144f0adb8c09200005547f5e80004
list|show topology :显示当前的多路径拓扑。
与“multipath -ll”相同。
multipathd> show topology create: mpathk (3600144f0f1f283fa000058e3b573000a) dm-8 SUN ,ZFS Storage 7120 size=999G features='0' hwhandler='0' wp=rw '-+- policy='service-time 0' prio=1 status=active '- 6:0:0:7 sdc 8:32 active ready running multipathd>
list|show wildcards :显示交互式命令中使用的格式通配符,采用 $format:
multipathd> show wildcards multipath format wildcards: %n name %w uuid %d sysfs %F failback %Q queueing %N paths %r write_prot %t dm-st %S size %f features %h hwhandler %A action %0 path_faults %1 switch_grp %2 map_loads %3 total_q_time %4 q_timeouts %s vend/prod/rev path format wildcards: %w uuid %i hcil %d dev %D dev_t %t dm_st %o dev_st %T chk_st %s vend/prod/rev %c checker %C next_check %p pri %S size %z serial %m multipath %N host WWNN %n target WWNN %R host WWPN %r target WWPN %a host adapter pathgroup format wildcards: %s selector %p pri %t dm_st multipathd>
list|show config :显示当前使用的配置,源自默认值和配置文件 /etc/multipath.conf 中指定的值。
list|show blacklist :显示当前使用的黑名单规则,源自默认值和配置文件 /etc/multipath.conf 中指定的值。
multipathd> show blacklist device node rules: - blacklist: (config file rule) ^(sdb|ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]* (config file rule) ^hd[a-z] (default rule) ^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]* (default rule) ^(td|hd|vd)[a-z] (default rule) ^dcssblk[0-9]* - exceptions: [empty] wwid rules: - blacklist: (config file rule) 26353900f02796769 - exceptions: [empty] device rules: - blacklist: (default rule) DGC:LUNZ (default rule) EMC:LUNZ (default rule) IBM:Universal Xport (default rule) IBM:S/390.* (default rule) DELL:Universal Xport (default rule) SGI:Universal Xport (default rule) STK:Universal Xport (default rule) SUN:Universal Xport (default rule) (NETAPP|LSI|ENGENIO):Universal Xport - exceptions: [empty] multipathd>
list|show devices :按名称显示所有可用的块设备,包括它们是否被列入黑名单的信息。
multipathd> show devices available block devices: sda devnode whitelisted, monitored sdb devnode blacklisted, unmonitored sdc devnode whitelisted, monitored dm-0 devnode blacklisted, unmonitored dm-1 devnode blacklisted, unmonitored dm-2 devnode blacklisted, unmonitored dm-3 devnode blacklisted, unmonitored dm-4 devnode blacklisted, unmonitored dm-5 devnode blacklisted, unmonitored dm-6 devnode blacklisted, unmonitored dm-7 devnode blacklisted, unmonitored dm-8 devnode blacklisted, unmonitored dm-9 devnode blacklisted, unmonitored pgpwde devnode whitelisted, monitored
列表 |失败路径 $path :将路径 $path 设置为失败状态。
multipathd> fail path $path fail multipathd>
有关 multipathd 命令的更多信息,请使用帮助子命令:
# multipathd -k"help"