Show Table of Contents
4.5. 配置文件设备
表 4.3 “设备属性” 显示您可以为
multipath.conf 配置文件 devices 部分的每个独立储存设备能设置的属性。DM Multipath 会使用这些属性,除非它们被 multipath.conf 文件 multipaths 部分为包含该设备的路径所指定的属性覆盖。这些属性会覆盖 multipath.conf 文件 defaults 部分设定的属性。
多路径配置中默认包含许多支持 multipath 的设备。如需了解默认配置值(包括支持的设备)的相关信息,请运行以下命令之一。
#multipathd show config#multipath -t
您可能不需要为这些设备修改默认值,但如果您想要修改,可以通过在配置文件中添加条目来覆盖默认值。您可以为设备复制
multipathd show config 命令显示的设备配置默认值,并覆盖您想要修改的值。
如需在配置文件的这部分添加没有默认自动配置的设备,您需要设置
vendor 和 product 参数。您能在 /sys/block/device_name/device/vendor 和 /sys/block/device_name/device/model 中找到这些值,其中 device_name 是要进行多路径操作的设备,示例如下:
#cat /sys/block/sda/device/vendorWINSYS #cat /sys/block/sda/device/modelSF2372
要指定的附加参数要视具体设备而定。如果设备是主动/主动模式,您通常不需要设置附加参数。您可能想要将
path_grouping_policy 设为 multibus。其它您可能需要设定的参数有 no_path_retry 和 rr_min_io,详见 表 4.3 “设备属性”。
如果设备是主动/被动模式,但它会自动将路径切换到被动路径,那么您需要将检查器功能改为不需向路径发送 I/O 来测试其是否工作(否则,您的设备将一直进行出错冗余)的功能。这几乎意味着您将
path_checker 设为 tur。这对所有支持 Test Unit Ready 命令的 SCSI 设备都适用。
如果该设备需要一个特殊的命令切换路径,那么为多路径配置此设备需要硬件处理器内核模块。当前的硬件处理器是
emc。如果这样还不能满足您的设备,则您可能无法为多路径配置该设备。
表 4.3. 设备属性
| 属性 | 描述 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
vendor | 指定 device 采用的存储设备的零售商名称,例如 COMPAQ。 | ||||||||
product | 指定 device 属性使用的存储设备产品名,比如 HSV110 (C) COMPAQ。 | ||||||||
revision | 指定存储设备的产品修订识别程序。 | ||||||||
product_blacklist | 根据产品指定用来将设备列入黑名单的正则表达式。 | ||||||||
alias_prefix | 这个设备类型使用的 user_friendly_names 前缀,而不是默认的"mpath"。 | ||||||||
hardware_handler |
| ||||||||
path_grouping_policy |
| ||||||||
path_selector |
| ||||||||
path_checker |
| ||||||||
features |
| ||||||||
prio |
| ||||||||
failback |
| ||||||||
rr_weight | 如果将其设为 priorities,就不会在调用 selector 选择下一个路径前向路径发送 rr_min_io 请求,而是由 rr_min_io 乘以路径优先权决定发送的请求数,即由 prio 功能决定。如果将其设定为 uniform,则所有路径都有相同的加权。 | ||||||||
no_path_retry |
| ||||||||
rr_min_io | 指定切换到当前路径组的下一个路径前路由到该路径的 I/O 请求数。这个设置值用于运行内核为 2.6.31 之前的系统。使用新版本的系统应使用 rr_min_io_rq。默认值为 1000。 | ||||||||
rr_min_io_rq | 使用 request-based device-mapper-multipath 指定切换到当前路径组的下一个路径前路由到该路径的 I/O 请求数。这个设置值用于运行当前内核的系统。在使用内核 2.6.31 版本之前的系统应使用 rr_min_io。默认值为 1。 | ||||||||
fast_io_fail_tmo | 在 FC 远程端口发现问题后,无法在那个远程端口设备中执行 I/O 前 SCSI 层要等待的时间。默认值应小于 dev_loss_tmo 值。将其设定为 off 则会禁用超时。 | ||||||||
dev_loss_tmo | 在 FC 远程端口发现问题后,到从该系统中删除它之前 SCSI 层要等待的时间。将其设定为无限,则会将其设定为 2147483647 秒,或者 68 年。 | ||||||||
flush_on_last_del | 如果被设为 yes,当设备的最后一条路径被删除时,multipathd 守护程序将会禁用队列。 | ||||||||
user_friendly_names | 如果将其设为 yes,即指定该系统应该使用文件 /etc/multipath/bindings 为该多路径分配一个持久且唯一的别名,格式为 mpathn。如果设定为 no,即指定该系统应使用 WWID 作为该多路径的别名。在这两种情况下,您在这里指定的数值将被您在配置文件 multipaths 部分指定的具体设备别名覆盖。默认值为 no。 | ||||||||
retain_attached_hw_handler | 如果此参数被设为 yes,并且 SCSI 层已经为路径设备附加了硬件处理程序,那么 multipath 将不会强制设备使用 multipath.conf 文件指定的 hardware_handler。如果 SCSI 层未附加硬件处理程序,multipath 将会继续使用其配置的硬件处理程序。默认值为 no。 | ||||||||
detect_prio | 如果被设为 yes,multipath 将会首先检查设备是否支持 ALUA。若支持,将会自动为设备分配 alua 排序器;若不支持,将会按惯例确定排序器。 | ||||||||
uid_attribute | 提供唯一路径标识符。 | ||||||||
delay_watch_checks | (从 Red Hat Enterprise Linux Release 7.2 开始)如果将其设定为大于 0 的值,multipathd 守护进程将监视最近有效的路径,并执行指定数量的检查。如果在监视期间这些路径再次变为无法使用,则不会在这些路径下一次可用时就使用它们,直到连续检查使用 delay_wait_checks 指定的次数后它们都可用为止。 这样可防止将那些可能不太可靠的路径在上线后立即投入使用。 | ||||||||
delay_wait_checks | (从 Red Hat Enterprise Linux 7.2 开始)如果将其设定为大于 0 的值,则最近重新上线的设备在由 delay_watch_checks 指定的检查次数内再次无法使用后,那么它下一次上线后就不会被标记并延迟,并在经过使用 delay_watch_checks 指定的检查次数后方可使用。 | ||||||||
deferred_remove | 如果设定为 yes,则在删除最后一个路径设备时,multipathd 将会执行延期删除,而不是常规删除。这样就会保证如果执行常规删除且操作失败时某个多路径设备正在使用中,该设备会在最后一个用户关闭该设备时自动被删除。 | ||||||||
skip_kpartx | 如果设定为 yes,kpartx 不会在该设备中自动创建分区。这样即使该设备有分区表,也可以允许用户在不创建分区的情况下创建多路径设备。 |
以下示例显示了多路径配置文件的
device 条目。
# }
# device {
# vendor "COMPAQ "
# product "MSA1000 "
# path_grouping_policy multibus
# path_checker tur
# rr_weight priorities
# }
#}

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.