## ## This is a template multipath-tools configuration file ## Uncomment the lines relevent to your environment ## # ## ## name : defaults ## desc : multipath-tools default settings ## #defaults { # # # # name : udev_dir # # desc : directory where udev creates its device nodes # # default : /dev # # # udev_dir /dev # # # # # name : polling_interval # # scope : multipathd # # desc : interval between two path checks in seconds. For # # properly functioning paths, the interval between checks # # will gradually increase to (4 * polling_interval). # # values : n > 0 # # default : 5 # # # polling_interval 10 # # # # # name : selector # # scope : multipath # # desc : the default path selector algorithm to use # # these algorithms are offered by the kernel multipath target # # values : "round-robin 0" # # default : "round-robin 0" # # # selector "round-robin 0" # # # # # name : path_grouping_policy # # scope : multipath # # desc : the default path grouping policy to apply to unspecified # # multipaths # # values : failover = 1 path per priority group # # multibus = all valid paths in 1 priority group # # group_by_serial = 1 priority group per detected serial # # number # # group_by_prio = 1 priority group per path priority # # value # # group_by_node_name = 1 priority group per target node name # # default : failover # # # path_grouping_policy multibus # # # # # name : getuid_callout # # scope : multipath # # desc : the default program and args to callout to obtain a unique # # path identifier. Absolute path required # # default : /lib/udev/scsi_id --whitelisted --device=/dev/%n # # # getuid_callout "/lib/udev/scsi_id --whitelisted --device=/dev/%n" # # # # # name : prio # # scope : multipath # # desc : the default function to call to obtain a path # # priority value. The ALUA bits in SPC-3 provide an # # exploitable prio value for example. # # default : (null) # # # prio "alua" # # # # # name : features # # scope : multipath # # desc : The default extra features of multipath devices. The # # only existing feature currently is queue_if_no_path, which # # is the same as setting no_path_retry to queue. # # values : "1 queue_if_no_path" # # default : (null) # # # features "1 queue_if_no_path" # # # # # name : path_checker, checker # # scope : multipath & multipathd # # desc : the default method used to determine the paths' state # # values : readsector0|tur|emc_clariion|hp_sw|directio|rdac| # cciss_tur|hp_tur # # default : directio # # # path_checker directio # # # # # name : rr_min_io # # scope : multipath # # desc : the number of IO to route to a path before switching # # to the next in the same path group # # default : 1000 # # # rr_min_io 100 # # # # # name : flush_on_last_del # # scope : multipathd # # desc : If set to "yes", multipathd will disable queueing when the # # last path to a device has been deleted. # # values : yes|no # # default : no # # # flush_on_last_del yes # # # # # name : max_fds # # scope : multipathd # # desc : Sets the maximum number of open file descriptors for the # # multipathd process. # # values : max|n > 0 # # default : None # # # max_fds 8192 # # # # # name : rr_weight # # scope : multipath # # desc : if set to priorities the multipath configurator will assign # # path weights as "path prio * rr_min_io" # # values : priorities|uniform # # default : uniform # # # rr_weight priorities # # # # # name : failback # # scope : multipathd # # desc : tell the daemon to manage path group failback, or not to. # # 0 means immediate failback, values >0 means deffered # # failback expressed in seconds. # # values : manual|immediate|n > 0 # # default : manual # # # failback immediate # # # # # name : no_path_retry # # scope : multipath & multipathd # # desc : tell the number of retries until disable queueing, or # # "fail" means immediate failure (no queueing), # # "queue" means never stop queueing # # values : queue|fail|n (>0) # # default : (null) # # # no_path_retry queue # # # # # name : queue_without_daemon # # scope : multipathd # # desc : If set to "no", multipathd will disable queueing for all # # devices when it is shut down. # # values : yes|no # # default : yes # queue_without_daemon no # # # # # name : user_friendly_names # # scope : multipath # # desc : If set to "yes", using the bindings file # # /etc/multipath/bindings to assign a persistent and # # unique alias to the multipath, in the form of mpath. # # If set to "no" use the WWID as the alias. In either case # # this be will be overriden by any specific aliases in this # # file. # # values : yes|no # # default : no # user_friendly_names no # # # # # name : mode # # scope : multipath # # desc : The mode to use for the multipath device nodes, in octal. # # values : 0000 - 0777 # # default : determined by the process # mode 0644 # # # # # name : uid # # scope : multipath # # desc : The user id to use for the multipath device nodes. You # # may use either the numeric or symbolic uid # # values : # # default : determined by the process # uid 0 # # # # # name : gid # # scope : multipath # # desc : The group id to user for the multipath device nodes. You # # may use either the numeric or symbolic gid # # values : # # default : determined by the process # gid disk # # # # # name : checker_timeout # # scope : multipath & multipathd # # desc : The timeout to use for path checkers that issue scsi # # commands with an explicit timeout, in seconds. # # values : n > 0 # # default : taken from /sys/block/sd/device/timeout # checker_timeout 60 # # # # # name : fast_io_fail_tmo # # scope : multipath & multipathd # # desc : The number of seconds the scsi layer will wait after a # # problem has been detected on a FC remote port before failing # # IO to devices on that remote port. # # values : off | n >= 0 (smaller than dev_loss_tmo) # # default : determined by the OS # fast_io_fail_tmo 5 # # # # # name : dev_loss_tmo # # scope : multipath & multipathd # # desc : The number of seconds the scsi layer will wait after a # # problem has been detected on a FC remote port before # # removing it from the system. # # values : n > 0 # # default : determined by the OS # dev_loss_tmo 600 #} # ## ## name : blacklist ## scope : multipath & multipathd ## desc : list of device names to discard as not multipath candidates ## Devices can be identified by their device node name "devnode", ## their WWID "wwid", or their vender and product strings ## "device" ## default : fd, hd, md, dm, sr, scd, st, ram, raw, loop, dcssblk ## #blacklist { # wwid 26353900f02796769 # devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" # devnode "^hd[a-z]" # devnode "^dcssblk[0-9]*" # device { # vendor DEC.* # product MSA[15]00 # } #} ## ## name : blacklist_exceptions ## scope : multipath & multipathd ## desc : list of device names to be treated as multipath candidates ## even if they are on the blacklist. ## Note: blacklist exceptions are only valid in the same class. ## It is not possible to blacklist devices using the devnode keyword ## and to exclude some devices of them using the wwid keyword. ## default : - ## #blacklist_exceptions { # devnode "^dasd[c-d]+[0-9]*" # wwid "IBM.75000000092461.4d00.34" # wwid "IBM.75000000092461.4d00.35" # wwid "IBM.75000000092461.4d00.36" #} # ## ## name : multipaths ## scope : multipath & multipathd ## desc : list of multipaths finest-grained settings ## #multipaths { # # # # name : multipath # # scope : multipath & multipathd # # desc : container for settings that apply to one specific multipath # # # multipath { # # # # name : wwid # # scope : multipath & multipathd # # desc : index of the container # # # wwid 3600508b4000156d700012000000b0000 # # # # # name : alias # # scope : multipath # # desc : symbolic name for the multipath. If you are using # # user_friendly_names, do not set the alias to # # mpath. This may conflict with an automatically # # assigned user friendly name, and give you # # incorrect device node names. # # # alias yellow # # # # # name : path_grouping_policy # # scope : multipath # # desc : path grouping policy to apply to this multipath # # values : failover, multibus, group_by_serial # # values : failover = 1 path per priority group # # multibus = all valid paths in 1 priority # # group # # group_by_serial = 1 priority group per detected # # serial number # # group_by_prio = 1 priority group per path # # priority value # # group_by_node_name = 1 priority group per target # # node name # # # path_grouping_policy failover # # # # # name : path_selector # # desc : the path selector algorithm to use for this mpath # # these algo are offered by the kernel mpath target # # values : "round-robin 0" # # # path_selector "round-robin 0" # # # # # name : failback # # scope : multipathd # # desc : tell the daemon to manage path group failback, or # # not to. 0 means immediate failback, values >0 means # # deffered failback expressed in seconds. # # values : manual|immediate|n > 0 # # # failback manual # # # # # name : rr_weight # # scope : multipath # # desc : if set to priorities the multipath configurator will # # assign path weights as "path prio * rr_min_io" # # values : priorities|uniform # # # rr_weight priorities # # # # # name : no_path_retry # # scope : multipath & multipathd # # desc : tell the number of retries until disable queueing, # # or "fail" means immediate failure (no queueing), # # "queue" means never stop queueing # # values : queue|fail|n (>0) # # # no_path_retry queue # # # # # name : rr_min_io # # scope : multipath # # desc : the number of IO to route to a path before switching # # to the next in the same path group # # # rr_min_io 100 # # # # # name : flush_on_last_del # # scope : multipathd # # desc : If set to "yes", multipathd will disable queueing # # when the last path to a device has been deleted. # # values : yes|no # # default : no # # # flush_on_last_del yes # # # # # name : mode # # scope : multipath # # desc : The mode to use for the multipath device nodes, in # # octal. # # values : 0000 - 0777 # # default : determined by the process # mode 0644 # # # # # name : uid # # scope : multipath # # desc : The user id to use for the multipath device nodes. # # You may use either the numeric or symbolic uid # # values : # # default : determined by the process # uid 0 # # # # # name : gid # # scope : multipath # # desc : The group id to user for the multipath device nodes. # # You may use either the numeric or symbolic gid # # values : # # default : determined by the process # gid 0 # # } # multipath { # wwid 1DEC_____321816758474 # alias red # rr_weight priorities # } #} # ## ## name : devices ## scope : multipath & multipathd ## desc : list of per storage controller settings ## overrides default settings (device_maps block) ## overriden by per multipath settings (multipaths block) ## #devices { # # # # name : device # # scope : multipath & multipathd # # desc : settings for this specific storage controller # # # device { # # # # name : vendor, product # # scope : multipath & multipathd # # desc : index for the block # # # vendor "COMPAQ " # product "HSV110 (C)COMPAQ" # # # # # name : path_grouping_policy # # scope : multipath # # desc : path grouping policy to apply to this multipath # # values : failover, multibus, group_by_serial # # values : failover = 1 path per priority group # # multibus = all valid paths in 1 priority # # group # # group_by_serial = 1 priority group per detected # # serial number # # group_by_prio = 1 priority group per path # # priority value # # group_by_node_name = 1 priority group per target # # node name # # # path_grouping_policy failover # # # # # name : getuid_callout # # scope : multipath # # desc : the program and args to callout to obtain a unique # # path identifier. Absolute path required # # # getuid_callout "/lib/udev/scsi_id --whitelisted --device=/dev/%n" # # # # # name : prio # # scope : multipath # # desc : the function to call to obtain a path # # weight. Weights are summed for each path group to # # determine the next PG to use case of failure. # # default : no callout, all paths equals # # # prio "hp_sw" # # # # # name : path_checker, checker # # scope : multipathd # # desc : path checking alorithm to use to check path state # # values : readsector0|tur|emc_clariion|hp_sw|directio|rdac| # # cciss_tur|hp_tur # # # path_checker directio # # # # # name : path_selector # # desc : the path selector algorithm to use for this mpath # # these algo are offered by the kernel mpath target # # values : "round-robin 0" # # # path_selector "round-robin 0" # # # # # name : features # # scope : multipath # # desc : The extra features of multipath devices. The only # # existing feature currently is queue_if_no_path, # # which is the same as setting no_path_retry to queue. # # values : "1 queue_if_no_path" # # # features "1 queue_if_no_path" # # # # # name : hardware_handler # # scope : multipath # # desc : If set, it specifies a module that will be used to # # perform hardware specific actions when switching # # path groups or handling IO errors # # values : "0"|"1 emc" # # default : "0" # # # hardware_handler "1 emc" # # # # # name : failback # # scope : multipathd # # desc : tell the daemon to manage path group failback, or # # not to. 0 means immediate failback, values >0 means # # deffered failback expressed in seconds. # # values : manual|immediate|n > 0 # # # failback 30 # # # # # name : rr_weight # # scope : multipath # # desc : if set to priorities the multipath configurator will # # assign path weights as "path prio * rr_min_io" # # values : priorities|uniform # # # rr_weight priorities # # # # # name : no_path_retry # # scope : multipath & multipathd # # desc : tell the number of retries until disable queueing, # # or "fail" means immediate failure (no queueing), # # "queue" means never stop queueing # # values : queue|fail|n (>0) # # # no_path_retry queue # # # # # name : rr_min_io # # scope : multipath # # desc : the number of IO to route to a path before switching # # to the next in the same path group # # # rr_min_io 100 # # # # # name : flush_on_last_del # # scope : multipathd # # desc : If set to "yes", multipathd will disable queueing # # when the last path to a device has been deleted. # # values : yes|no # # # flush_on_last_del yes # # # # # name : product_blacklist # # scope : multipath & multipathd # # desc : product strings to blacklist for this vendor # # # product_blacklist LUN_Z # # # # # name : fast_io_fail_tmo # # scope : multipath & multipathd # # desc : The number of seconds the scsi layer will wait after # # a problem has been detected on a FC remote port # # before failing IO to devices on that remote port. # # values : off | n >= 0 (smaller than dev_loss_tmo) # fast_io_fail_tmo 5 # # # # # name : dev_loss_tmo # # scope : multipath & multipathd # # desc : The number of seconds the scsi layer will wait after # # a problem has been detected on a FC remote port # # before removing it from the system. # # values : n > 0 # dev_loss_tmo 600 # } # device { # vendor "COMPAQ " # product "MSA1000 " # path_grouping_policy multibus # path_checker tur # rr_weight priorities # } #}