248 lines
6.5 KiB
Plaintext
248 lines
6.5 KiB
Plaintext
module Test_multipath =
|
|
|
|
let conf = "# Blacklist all devices by default.
|
|
blacklist {
|
|
devnode \"*\"
|
|
wwid *
|
|
}
|
|
|
|
# By default, devices with vendor = \"IBM\" and product = \"S/390.*\" are
|
|
# blacklisted. To enable mulitpathing on these devies, uncomment the
|
|
# following lines.
|
|
blacklist_exceptions {
|
|
device {
|
|
vendor \"IBM\"
|
|
product \"S/390.*\"
|
|
}
|
|
}
|
|
|
|
#
|
|
# Here is an example of how to configure some standard options.
|
|
#
|
|
|
|
defaults {
|
|
udev_dir /dev
|
|
polling_interval 10
|
|
selector \"round-robin 0\"
|
|
path_grouping_policy multibus
|
|
getuid_callout \"/sbin/scsi_id --whitelisted /dev/%n\"
|
|
prio alua
|
|
path_checker readsector0
|
|
rr_min_io 100
|
|
max_fds 8192
|
|
rr_weight priorities
|
|
failback immediate
|
|
no_path_retry fail
|
|
user_friendly_names yes
|
|
dev_loss_tmo 30
|
|
max_polling_interval 300
|
|
verbosity 2
|
|
reassign_maps yes
|
|
fast_io_fail_tmo 5
|
|
async_timeout 5
|
|
flush_on_last_del no
|
|
delay_watch_checks no
|
|
delay_wait_checks no
|
|
find_multipaths yes
|
|
checker_timeout 10
|
|
hwtable_regex_match yes
|
|
reload_readwrite no
|
|
force_sync yes
|
|
config_dir /etc/multipath/conf.d
|
|
}
|
|
|
|
# Sections without empty lines in between
|
|
blacklist {
|
|
wwid 26353900f02796769
|
|
devnode \"^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*\"
|
|
|
|
# Comments and blank lines inside a section
|
|
devnode \"^hd[a-z]\"
|
|
|
|
}
|
|
multipaths {
|
|
multipath {
|
|
wwid 3600508b4000156d700012000000b0000
|
|
alias yellow
|
|
path_grouping_policy multibus
|
|
path_checker readsector0
|
|
path_selector \"round-robin 0\"
|
|
failback manual
|
|
rr_weight priorities
|
|
no_path_retry 5
|
|
flush_on_last_del yes
|
|
}
|
|
multipath {
|
|
wwid 1DEC_____321816758474
|
|
alias red
|
|
}
|
|
}
|
|
devices {
|
|
device {
|
|
vendor \"COMPAQ \"
|
|
product \"HSV110 (C)COMPAQ\"
|
|
path_grouping_policy multibus
|
|
getuid_callout \"/sbin/scsi_id --whitelisted /dev/%n\"
|
|
path_checker readsector0
|
|
path_selector \"round-robin 0\"
|
|
hardware_handler \"0\"
|
|
failback 15
|
|
rr_weight priorities
|
|
rr_min_io_rq 75
|
|
no_path_retry queue
|
|
reservation_key a12345
|
|
}
|
|
device {
|
|
vendor \"COMPAQ \"
|
|
product \"MSA1000 \"
|
|
path_grouping_policy multibus
|
|
polling_interval 9
|
|
delay_watch_checks 10
|
|
delay_wait_checks 10
|
|
}
|
|
}\n"
|
|
|
|
test Multipath.lns get conf =
|
|
{ "#comment" = "Blacklist all devices by default." }
|
|
{ "blacklist"
|
|
{ "devnode" = "*" }
|
|
{ "wwid" = "*" } }
|
|
{ }
|
|
{ "#comment" = "By default, devices with vendor = \"IBM\" and product = \"S/390.*\" are" }
|
|
{ "#comment" = "blacklisted. To enable mulitpathing on these devies, uncomment the" }
|
|
{ "#comment" = "following lines." }
|
|
{ "blacklist_exceptions"
|
|
{ "device"
|
|
{ "vendor" = "IBM" }
|
|
{ "product" = "S/390.*" } } }
|
|
{ }
|
|
{ }
|
|
{ "#comment" = "Here is an example of how to configure some standard options." }
|
|
{ }
|
|
{ }
|
|
{ "defaults"
|
|
{ "udev_dir" = "/dev" }
|
|
{ "polling_interval" = "10" }
|
|
{ "selector" = "round-robin 0" }
|
|
{ "path_grouping_policy" = "multibus" }
|
|
{ "getuid_callout" = "/sbin/scsi_id --whitelisted /dev/%n" }
|
|
{ "prio" = "alua" }
|
|
{ "path_checker" = "readsector0" }
|
|
{ "rr_min_io" = "100" }
|
|
{ "max_fds" = "8192" }
|
|
{ "rr_weight" = "priorities" }
|
|
{ "failback" = "immediate" }
|
|
{ "no_path_retry" = "fail" }
|
|
{ "user_friendly_names" = "yes" }
|
|
{ "dev_loss_tmo" = "30" }
|
|
{ "max_polling_interval" = "300" }
|
|
{ "verbosity" = "2" }
|
|
{ "reassign_maps" = "yes" }
|
|
{ "fast_io_fail_tmo" = "5" }
|
|
{ "async_timeout" = "5" }
|
|
{ "flush_on_last_del" = "no" }
|
|
{ "delay_watch_checks" = "no" }
|
|
{ "delay_wait_checks" = "no" }
|
|
{ "find_multipaths" = "yes" }
|
|
{ "checker_timeout" = "10" }
|
|
{ "hwtable_regex_match" = "yes" }
|
|
{ "reload_readwrite" = "no" }
|
|
{ "force_sync" = "yes" }
|
|
{ "config_dir" = "/etc/multipath/conf.d" } }
|
|
{ }
|
|
{ "#comment" = "Sections without empty lines in between" }
|
|
{ "blacklist"
|
|
{ "wwid" = "26353900f02796769" }
|
|
{ "devnode" = "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" }
|
|
{ }
|
|
{ "#comment" = "Comments and blank lines inside a section" }
|
|
{ "devnode" = "^hd[a-z]" }
|
|
{ } }
|
|
{ "multipaths"
|
|
{ "multipath"
|
|
{ "wwid" = "3600508b4000156d700012000000b0000" }
|
|
{ "alias" = "yellow" }
|
|
{ "path_grouping_policy" = "multibus" }
|
|
{ "path_checker" = "readsector0" }
|
|
{ "path_selector" = "round-robin 0" }
|
|
{ "failback" = "manual" }
|
|
{ "rr_weight" = "priorities" }
|
|
{ "no_path_retry" = "5" }
|
|
{ "flush_on_last_del" = "yes" } }
|
|
{ "multipath"
|
|
{ "wwid" = "1DEC_____321816758474" }
|
|
{ "alias" = "red" } } }
|
|
{ "devices"
|
|
{ "device"
|
|
{ "vendor" = "COMPAQ " }
|
|
{ "product" = "HSV110 (C)COMPAQ" }
|
|
{ "path_grouping_policy" = "multibus" }
|
|
{ "getuid_callout" = "/sbin/scsi_id --whitelisted /dev/%n" }
|
|
{ "path_checker" = "readsector0" }
|
|
{ "path_selector" = "round-robin 0" }
|
|
{ "hardware_handler" = "0" }
|
|
{ "failback" = "15" }
|
|
{ "rr_weight" = "priorities" }
|
|
{ "rr_min_io_rq" = "75" }
|
|
{ "no_path_retry" = "queue" }
|
|
{ "reservation_key" = "a12345" } }
|
|
{ "device"
|
|
{ "vendor" = "COMPAQ " }
|
|
{ "product" = "MSA1000 " }
|
|
{ "path_grouping_policy" = "multibus" }
|
|
{ "polling_interval" = "9" }
|
|
{ "delay_watch_checks" = "10" }
|
|
{ "delay_wait_checks" = "10" } } }
|
|
|
|
test Multipath.lns get "blacklist {
|
|
devnode \".*\"
|
|
wwid \"([a-z]+|ab?c).*\"
|
|
}\n" =
|
|
{ "blacklist"
|
|
{ "devnode" = ".*" }
|
|
{ "wwid" = "([a-z]+|ab?c).*" } }
|
|
|
|
test Multipath.lns get "blacklist {\n property \"[a-z]+\"\n}\n" =
|
|
{ "blacklist"
|
|
{ "property" = "[a-z]+" } }
|
|
|
|
(* Check that '""' inside a string works *)
|
|
test Multipath.lns get "blacklist {
|
|
device {
|
|
vendor SomeCorp
|
|
product \"2.5\"\" SSD\"
|
|
}
|
|
}\n" =
|
|
{ "blacklist"
|
|
{ "device"
|
|
{ "vendor" = "SomeCorp" }
|
|
{ "product" = "2.5\"\" SSD" } } }
|
|
|
|
(* Issue #583 - allow optional quotes around values and strip them *)
|
|
test Multipath.lns get "devices {
|
|
device {
|
|
vendor \"COMPELNT\"
|
|
product \"Compellent Vol\"
|
|
path_grouping_policy \"multibus\"
|
|
path_checker \"tur\"
|
|
features \"0\"
|
|
hardware_handler \"0\"
|
|
prio \"const\"
|
|
failback \"immediate\"
|
|
rr_weight \"uniform\"
|
|
no_path_retry \"queue\"
|
|
}
|
|
}\n" =
|
|
{ "devices"
|
|
{ "device"
|
|
{ "vendor" = "COMPELNT" }
|
|
{ "product" = "Compellent Vol" }
|
|
{ "path_grouping_policy" = "multibus" }
|
|
{ "path_checker" = "tur" }
|
|
{ "features" = "0" }
|
|
{ "hardware_handler" = "0" }
|
|
{ "prio" = "const" }
|
|
{ "failback" = "immediate" }
|
|
{ "rr_weight" = "uniform" }
|
|
{ "no_path_retry" = "queue" } } }
|