1MULTIPATH.CONF(5)             File Formats Manual            MULTIPATH.CONF(5)
2
3
4

NAME

6       multipath.conf - multipath daemon configuration file.
7

DESCRIPTION

9       /etc/multipath.conf is the configuration file for the multipath daemon.
10       It is used to overwrite the built-in configuration table of multipathd.
11       Any line whose first non-white-space character is a '#' is considered a
12       comment line. Empty lines are ignored.
13
14       Currently used multipathd configuration can be displayed with the  mul‐
15       tipath -t or multipathd show config command.
16

SYNTAX

18       The configuration file contains entries of the form:
19
20              <section> {
21                     <attribute> <value>
22                     ...
23                     <subsection> {
24                            <attribute> <value>
25                            ...
26                     }
27              }
28
29       Each section contains one or more attributes or subsections. The recog‐
30       nized keywords for attributes or subsections depend on the  section  in
31       which they occur.
32
33       <attribute>  and  <value> must be on a single line.  <attribute> is one
34       of the keywords listed in this man page.  <value> is  either  a  simple
35       word (containing no whitespace and none of the characters '"', '#', and
36       '!') or one string enclosed in double quotes ("..."). Outside a  quoted
37       string,  text  starting  with '#', and '!' is regarded as a comment and
38       ignored until the end of the line. Inside a quoted string, '#' and  '!'
39       are  normal  characters,  and  whitespace is preserved.  To represent a
40       double quote character inside a double quoted string, use two  consecu‐
41       tive  double  quotes  ('""').  Thus '2.5" SSD' can be written as "2.5""
42       SSD".
43
44       Opening braces ('{') must follow the  (sub)section  name  on  the  same
45       line.  Closing braces ('}') that mark the end of a (sub)section must be
46       the only non-whitespace character on the line.  Whitespace  is  ignored
47       except  inside  double  quotes, thus the indentation shown in the above
48       example is helpful for human readers but not mandatory.
49
50       Note on regular expressions:  The  multipath.conf  syntax  allows  many
51       attribute  values to be specified as POSIX Extended Regular Expressions
52       (see regex(7)). These regular expressions are case  sensitive  and  not
53       anchored,  thus the expression "bar" matches "barbie", "rhabarber", and
54       "wunderbar", but not "Barbie". To  avoid  unwanted  substring  matches,
55       standard regular expression syntax using the special characters "^" and
56       "$" can be used.
57
58       The following section keywords are recognized:
59
60       defaults         This section defines  default  values  for  attributes
61                        which  are  used  whenever  no values are given in the
62                        appropriate device or multipath sections.
63
64       blacklist        This section defines which devices should be  excluded
65                        from the multipath topology discovery.
66
67       blacklist_exceptions
68                        This  section defines which devices should be included
69                        in the multipath  topology  discovery,  despite  being
70                        listed in the blacklist section.
71
72       multipaths       This  section  defines  the multipath topologies. They
73                        are indexed by  a  World  Wide  Identifier(WWID).  For
74                        details on the WWID generation see section WWID gener‐
75                        ation below.  Attributes  set  in  this  section  take
76                        precedence over all others.
77
78       devices          This  section  defines  the  device-specific settings.
79                        Devices are identified by vendor, product,  and  revi‐
80                        sion.
81
82       overrides        This section defines values for attributes that should
83                        override the device-specific settings for all devices.
84

defaults section

86       The defaults section recognizes the following keywords:
87
88       verbosity        Default verbosity. Higher  values  increase  the  ver‐
89                        bosity level. Valid levels are between 0 and 6.
90
91                        The default is: 2
92
93       polling_interval Interval between two path checks in seconds. For prop‐
94                        erly functioning paths, the  interval  between  checks
95                        will gradually increase to max_polling_interval.  This
96                        value will be overridden by the WatchdogSec setting in
97                        the multipathd.service definition if systemd is used.
98
99                        The default is: 5
100
101       max_polling_interval
102                        Maximal interval between two path checks in seconds.
103
104                        The default is: 4 * polling_interval
105
106       reassign_maps    Enable  reassigning  of  device-mapper maps. With this
107                        option multipathd will  remap  existing  device-mapper
108                        maps  to  always  point  to  multipath device, not the
109                        underlying block devices. Possible values are yes  and
110                        no.
111
112                        The default is: no
113
114       multipath_dir    Directory where the dynamic shared objects are stored.
115                        Defined at compile time, commonly /lib64/multipath/ or
116                        /lib/multipath/.
117
118                        The default is: <system dependent>
119
120       path_selector    The  default  path selector algorithm to use; they are
121                        offered by the  kernel  multipath  target.  There  are
122                        three selector algorithms:
123
124                        round-robin 0
125                                    Loop through every path in the path group,
126                                    sending the same amount of  I/O  to  each.
127                                    Some aspects of behavior can be controlled
128                                    with    the     attributes:     rr_min_io,
129                                    rr_min_io_rq and rr_weight.
130
131                        queue-length 0
132                                    (Since  2.6.31 kernel) Choose the path for
133                                    the next bunch of I/O based on the  amount
134                                    of outstanding I/O to the path.
135
136                        service-time 0
137                                    (Since  2.6.31 kernel) Choose the path for
138                                    the next bunch of I/O based on the  amount
139                                    of  outstanding  I/O  to  the path and its
140                                    relative throughput.
141
142                        The default is: service-time 0
143
144       path_grouping_policy
145                        The default path grouping policy to apply to  unspeci‐
146                        fied multipaths. Possible values are:
147
148                        failover    One path per priority group.
149
150                        multibus    All paths in one priority group.
151
152                        group_by_serial
153                                    One priority group per serial number.
154
155                        group_by_prio
156                                    One  priority  group  per  priority value.
157                                    Priorities are determined by callout  pro‐
158                                    grams  specified  as  a  global,  per-con‐
159                                    troller or  per-multipath  option  in  the
160                                    configuration file.
161
162                        group_by_node_name
163                                    One  priority  group per target node name.
164                                    Target   node   names   are   fetched   in
165                                    /sys/class/fc_transport/target*/node_name.
166
167                        The default is: failover
168
169       uid_attrs        The  udev attribute providing a unique path identifier
170                        for corresponding type of path devices. If this  field
171                        is  configured  and  matched  with  type of device, it
172                        would override any other methods providing for  device
173                        unique  identifier  in config file, and it would acti‐
174                        vate merging uevents according to  the  identifier  to
175                        promote  effiecncy  in  processing uevents.  It has no
176                        default value, if you want to identify  path  by  udev
177                        attribute and to activate merging uevents for SCSI and
178                        DASD devices, you can  set  its  value  as:  uid_attrs
179                        "sd:ID_SERIAL dasd:ID_UID".
180
181                        The default is: <unset>
182
183       uid_attribute    The udev attribute providing a unique path identifier.
184
185                        The default is: for SCSI devices ID_SERIAL
186
187                        The default is: for DASD devices ID_UID
188
189                        The default is: for NVME devices ID_WWN
190
191       getuid_callout   (Superseded  by uid_attribute) The default program and
192                        args to callout to obtain a  unique  path  identifier.
193                        Should be specified with an absolute path.
194
195                        The default is: <unset>
196
197       prio             The  name  of the path priority routine. The specified
198                        routine should return a numeric value  specifying  the
199                        relative  priority  of this path. Higher number have a
200                        higher priority.  "none" is a valid  value.  Currently
201                        the following path priority routines are implemented:
202
203                        const       Return a constant priority of 1.
204
205                        sysfs       Use  the sysfs attributes access_state and
206                                    preferred_path to generate the path prior‐
207                                    ity. This prioritizer accepts the optional
208                                    prio_arg exclusive_pref_bit.
209
210                        emc         (Hardware-dependent)  Generate  the   path
211                                    priority  for DGC class arrays as CLARiiON
212                                    CX/AX and EMC VNX and Unity families.
213
214                        alua        (Hardware-dependent)  Generate  the   path
215                                    priority  based  on  the  SCSI-3 ALUA set‐
216                                    tings.  This   prioritizer   accepts   the
217                                    optional prio_arg exclusive_pref_bit.
218
219                        ontap       (Hardware-dependent)   Generate  the  path
220                                    priority for NetApp ONTAP  class  and  OEM
221                                    arrays as IBM NSeries.
222
223                        rdac        (Hardware-dependent)   Generate  the  path
224                                    priority for LSI/Engenio/NetApp RDAC class
225                                    as  NetApp SANtricity E/EF Series, and OEM
226                                    arrays from IBM DELL SGI STK and SUN.
227
228                        hp_sw       (Hardware-dependent)  Generate  the   path
229                                    priority   for   HP/COMPAQ/DEC  HSG80  and
230                                    MSA/HSV arrays  with  Active/Standby  mode
231                                    exclusively.
232
233                        hds         (Hardware-dependent)   Generate  the  path
234                                    priority  for  Hitachi  AMS  families   of
235                                    arrays other than AMS 2000.
236
237                        random      Generate  a  random priority between 1 and
238                                    10.
239
240                        weightedpath
241                                    Generate the path priority  based  on  the
242                                    regular  expression  and the priority pro‐
243                                    vided as argument. Requires prio_args key‐
244                                    word.
245
246                        path_latency
247                                    Generate  the  path  priority  based  on a
248                                    latency  algorithm.   Requires   prio_args
249                                    keyword.
250
251                        datacore    (Hardware-dependent)   Generate  the  path
252                                    priority for some DataCore storage arrays.
253                                    Requires prio_args keyword.
254
255                        iet         (iSCSI  only)  Generate  path priority for
256                                    iSCSI  targets  based   on   IP   address.
257                                    Requires prio_args keyword.
258
259                        The  default  depends  on  the detect_prio setting: If
260                        detect_prio is yes  (default),  the  default  priority
261                        algorithm  is sysfs (except for NetAPP E-Series, where
262                        it is alua). If detect_prio is no, the default  prior‐
263                        ity algorithm is const.
264
265       prio_args        Arguments  to  pass to to the prio function. This only
266                        applies to certain prioritizers:
267
268                        weighted    Needs a  value  of  the  form  "<hbtl|dev‐
269                                    name|serial|wwn> <regex1> <prio1> <regex2>
270                                    <prio2> ..."
271
272                                    hbtl    Regex can be of SCSI H:B:T:L  for‐
273                                            mat.   For   example:   1:0:.:.  ,
274                                            *:0:0:.
275
276                                    devname Regex can be of device  name  for‐
277                                            mat. For example: sda , sd.e
278
279                                    serial  Regex can be of serial number for‐
280                                            mat. For  example:  .*J1FR.*324  .
281                                            The   serial   can  be  looked  up
282                                            through sysfs or by running multi‐
283                                            pathd  show paths format "%z". For
284                                            example: 0395J1FR904324
285
286                                    wwn     Regex   can   be   of   the   form
287                                            "host_wwnn:host_wwpn:tar‐
288                                            get_wwnn:target_wwpn" these values
289                                            can  be looked up through sysfs or
290                                            by running multipathd  show  paths
291                                            format "%N:%R:%n:%r". For example:
292                                            0x200100e08ba0aea0:0x210100e08ba0aea0:.*:.*
293                                            ,       .*:.*:iqn.2009-10.com.red‐
294                                            hat.msp.lab.ask-06:.*
295
296                        path_latency
297                                    Needs a value  of  the  form  "io_num=<20>
298                                    base_num=<10>"
299
300                                    io_num  The number of read IOs sent to the
301                                            current path continuously, used to
302                                            calculate    the    average   path
303                                            latency.  Valid  Values:  Integer,
304                                            [2, 200].
305
306                                    base_num
307                                            The base number value of logarith‐
308                                            mic scale, used to partition  dif‐
309                                            ferent  priority ranks. Valid Val‐
310                                            ues: Integer,  [2,  10].  And  Max
311                                            average latency value is 100s, min
312                                            average latency value is 1us.  For
313                                            example: If base_num=10, the paths
314                                            will be grouped in priority groups
315                                            with  path  latency  <=1us,  (1us,
316                                            10us],  (10us,   100us],   (100us,
317                                            1ms],  (1ms, 10ms], (10ms, 100ms],
318                                            (100ms,  1s],  (1s,  10s],   (10s,
319                                            100s], >100s.
320
321                        alua        If  exclusive_pref_bit  is set, paths with
322                                    the preferred path bit set will always  be
323                                    in their own path group.
324
325                        sysfs       If  exclusive_pref_bit  is set, paths with
326                                    the preferred path bit set will always  be
327                                    in their own path group.
328
329                        datacore
330
331                                    preferredsds
332                                            (Mandatory)   The  preferred  "SDS
333                                            name".
334
335                                    timeout (Optional)  The  timeout  for  the
336                                            INQUIRY, in ms.
337
338                        iet
339
340                                    preferredip=...
341                                            (Mandatory)    Th   preferred   IP
342                                            address, in dotted  decimal  nota‐
343                                            tion, for iSCSI targets.
344
345                        The default is: <unset>
346
347       features         Specify  any device-mapper features to be used. Syntax
348                        is num list where num is the number, between 0 and  8,
349                        of  features in list.  Possible values for the feature
350                        list are:
351
352                        queue_if_no_path
353                                    (Deprecated, superseded by  no_path_retry)
354                                    Queue I/O if no path is active.  Identical
355                                    to the no_path_retry with queue value.  If
356                                    both  this  feature  and no_path_retry are
357                                    set, the latter  value  takes  precedence.
358                                    See KNOWN ISSUES.
359
360                        pg_init_retries <times>
361                                    (Since  kernel  2.6.24) Number of times to
362                                    retry pg_init, it must be  between  1  and
363                                    50.
364
365                        pg_init_delay_msecs <msecs>
366                                    (Since  kernel  2.6.38)  Number  of  msecs
367                                    before pg_init retry, it must be between 0
368                                    and 60000.
369
370                        queue_mode <mode>
371                                    (Since kernel 4.8) Select the the queueing
372                                    mode per multipath device.  <mode> can  be
373                                    bio,  rq  or mq, which corresponds to bio-
374                                    based, request-based, and block-multiqueue
375                                    (blk-mq) request-based, respectively.  The
376                                    default depends on  the  kernel  parameter
377                                    dm_mod.use_blk_mq.  It is mq if the latter
378                                    is set, and rq otherwise.
379
380                        The default is: <unset>
381
382       path_checker     The default method used to determine the paths  state.
383                        Possible values are:
384
385                        readsector0 (Deprecated)  Read the first sector of the
386                                    device. This checker is being  deprecated,
387                                    please use tur instead.
388
389                        tur         Issue  a  TEST  UNIT  READY command to the
390                                    device.
391
392                        emc_clariion
393                                    (Hardware-dependent)  Query  the   DGC/EMC
394                                    specific  EVPD  page 0xC0 to determine the
395                                    path state for CLARiiON CX/AX and EMC  VNX
396                                    and Unity arrays families.
397
398                        hp_sw       (Hardware-dependent)  Check the path state
399                                    for HP/COMPAQ/DEC HSG80 and MSA/HSV arrays
400                                    with Active/Standby mode exclusively.
401
402                        rdac        (Hardware-dependent)  Check the path state
403                                    for  LSI/Engenio/NetApp  RDAC   class   as
404                                    NetApp  SANtricity  E/EF  Series,  and OEM
405                                    arrays from IBM DELL SGI STK and SUN.
406
407                        directio    (Deprecated) Read the  first  sector  with
408                                    direct  I/O.  This checker is being depre‐
409                                    cated, it could cause spurious path  fail‐
410                                    ures  under  high  load.   Please  use tur
411                                    instead.
412
413                        cciss_tur   (Hardware-dependent) Check the path  state
414                                    for   HP/COMPAQ  Smart  Array(CCISS)  con‐
415                                    trollers.
416
417                        none        Do not check the device, fallback  to  use
418                                    the values retrieved from sysfs
419
420                        The default is: tur
421
422       alias_prefix     The user_friendly_names prefix.
423
424                        The default is: mpath
425
426       failback         Tell multipathd how to manage path group failback.  To
427                        select immediate or a value, it's mandatory  that  the
428                        device has support for a working prioritizer.
429
430                        immediate   Immediately failback to the highest prior‐
431                                    ity pathgroup that contains active paths.
432
433                        manual      Do not perform automatic failback.
434
435                        followover  Used  to  deal  with  multiple   computers
436                                    accessing  the same Active/Passive storage
437                                    devices. Only perform  automatic  failback
438                                    when the first path of a pathgroup becomes
439                                    active. This keeps  a  cluster  node  from
440                                    automatically  failing  back  when another
441                                    node requested the failover.
442
443                        values > 0  Deferred failback (time to defer  in  sec‐
444                                    onds).
445
446                        The default is: manual
447
448       rr_min_io        Number  of  I/O  requests  to  route  to a path before
449                        switching to the next in the same path group. This  is
450                        only for Block I/O(BIO) based multipath and only apply
451                        to round-robin path_selector.
452
453                        The default is: 1000
454
455       rr_min_io_rq     Number of I/O requests  to  route  to  a  path  before
456                        switching  to the next in the same path group. This is
457                        only for Request based multipath  and  only  apply  to
458                        round-robin path_selector.
459
460                        The default is: 1
461
462       max_fds          Specify  the  maximum  number of file descriptors that
463                        can be opened by multipath  and  multipathd.  This  is
464                        equivalent  to ulimit -n. A value of max will set this
465                        to the system limit from /proc/sys/fs/nr_open. If this
466                        is  not  set,  the maximum number of open fds is taken
467                        from the calling process. It is usually  1024.  To  be
468                        safe,  this  should  be  set  to the maximum number of
469                        paths plus 32, if that number is greated than 1024.
470
471                        The default is: max
472
473       rr_weight        If set to priorities the multipath  configurator  will
474                        assign path weights as "path prio * rr_min_io". Possi‐
475                        ble values are priorities or uniform .  Only apply  to
476                        round-robin path_selector.
477
478                        The default is: uniform
479
480       no_path_retry    Specify  what  to do when all paths are down. Possible
481                        values are:
482
483                        value > 0   Number of retries until disable I/O queue‐
484                                    ing.
485
486                        fail        For immediate failure (no I/O queueing).
487
488                        queue       For  never  stop  I/O queueing, similar to
489                                    queue_if_no_path. See KNOWN ISSUES.
490
491                        The default is: fail
492
493       queue_without_daemon
494                        If set to no , when multipathd stops, queueing will be
495                        turned  off  for  all  devices.   This  is  useful for
496                        devices that set no_path_retry. If a machine  is  shut
497                        down  while all paths to a device are down, it is pos‐
498                        sible to hang waiting  for  I/O  to  return  from  the
499                        device after multipathd has been stopped. Without mul‐
500                        tipathd  running,  access  to  the  paths  cannot   be
501                        restored, and the kernel cannot be told to stop queue‐
502                        ing I/O. Setting queue_without_daemon to no  ,  avoids
503                        this problem.
504
505                        The default is: no
506
507       checker_timeout  Specify  the timeout to use for path checkers and pri‐
508                        oritizers that issue SCSI commands  with  an  explicit
509                        timeout, in seconds.
510
511                        The default is: in /sys/block/sd<x>/device/timeout
512
513       flush_on_last_del
514                        If  set to yes , multipathd will disable queueing when
515                        the last path to a device has been deleted.
516
517                        The default is: no
518
519       user_friendly_names
520                        If set to yes , using the  bindings  file  /etc/multi‐
521                        path/bindings  to assign a persistent and unique alias
522                        to the multipath, in the form of mpath<n>. If  set  to
523                        no  use  the WWID as the alias. In either case this be
524                        will be overridden by any specific aliases in the mul‐
525                        tipaths section.
526
527                        The default is: no
528
529       fast_io_fail_tmo Specify the number of seconds the SCSI layer will wait
530                        after a problem has been detected on a FC remote  port
531                        before  failing  I/O  to  devices on that remote port.
532                        This should be smaller than dev_loss_tmo. Setting this
533                        to off will disable the timeout.
534
535                        The default is: in 5
536
537       dev_loss_tmo     Specify the number of seconds the SCSI layer will wait
538                        after a problem has been detected on a FC remote  port
539                        before removing it from the system. This can be set to
540                        "infinity"  which  sets  it  to  the  max   value   of
541                        2147483647  seconds, or 68 years. It will be automati‐
542                        cally  adjusted  to   the   overall   retry   interval
543                        no_path_retry   *  polling_interval  if  a  number  of
544                        retries is given with no_path_retry  and  the  overall
545                        retry   interval   is   longer   than   the  specified
546                        dev_loss_tmo value.  The Linux kernel  will  cap  this
547                        value to 600 if fast_io_fail_tmo is not set. See KNOWN
548                        ISSUES.
549
550                        The default is: 600
551
552       bindings_file    The full pathname of the binding file to be used  when
553                        the user_friendly_names option is set.
554
555                        The default is: /etc/multipath/bindings
556
557       wwids_file       The  full pathname of the WWIDs file, which is used by
558                        multipath to keep track of the WWIDs for LUNs  it  has
559                        created multipath devices on in the past.
560
561                        The default is: /etc/multipath/wwids
562
563       prkeys_file      The full pathname of the prkeys file, which is used by
564                        multipathd to keep track of the persistent reservation
565                        key  used for a specific WWID, when reservation_key is
566                        set to file.
567
568                        The default is /etc/multipath/prkeys
569
570       log_checker_err  If set to  once  ,  multipathd  logs  the  first  path
571                        checker error at logging level 2. Any later errors are
572                        logged at level 3 until the device is restored. If set
573                        to  always  ,  multipathd always logs the path checker
574                        error at logging level 2.
575
576                        The default is: always
577
578       reservation_key  This is the service action  reservation  key  used  by
579                        mpathpersist. It must be set for all multipath devices
580                        using persistent reservations, and it must be the same
581                        as the RESERVATION KEY field of the PERSISTENT RESERVE
582                        OUT parameter list which contains an 8-byte value pro‐
583                        vided  by  the application client to the device server
584                        to identify the I_T nexus. If the --param-aptpl option
585                        is  used  when  registering the key with mpathpersist,
586                        :aptpl must be appended to the end of the  reservation
587                        key.
588
589                        Alternatively,  this  can  be  set to file, which will
590                        store the RESERVATION KEY registered  by  mpathpersist
591                        in  the prkeys_file. multipathd will then use this key
592                        to register additional paths as they appear.  When the
593                        registration   is  removed,  the  RESERVATION  KEY  is
594                        removed from the prkeys_file.  The  prkeys  file  will
595                        automatically keep track of whether the key was regis‐
596                        tered with --param-aptpl.
597
598                        The default is: <unset>
599
600       all_tg_pt        Set the 'all targets ports' flag when registering keys
601                        with  mpathpersist.  Some arrays automatically set and
602                        clear registration keys on all  target  ports  from  a
603                        host,  instead  of  per  target  port  per  host.  The
604                        ALL_TG_PT flag must be set to successfully use  mpath‐
605                        persist  on these arrays. Setting this option is iden‐
606                        tical to calling mpathpersist with --param-alltgpt
607
608                        The default is: no
609
610       retain_attached_hw_handler
611                        (Obsolete for kernels >= 4.3) If set to  yes  and  the
612                        SCSI  layer has already attached a hardware_handler to
613                        the device, multipath will not force the device to use
614                        the  hardware_handler  specified  by mutipath.conf. If
615                        the SCSI layer has not attached  a  hardware  handler,
616                        multipath will continue to use its configured hardware
617                        handler.
618
619                        The default is: yes
620
621                        Important Note:  Linux  kernel  4.3  or  newer  always
622                        behaves  as  if  "retain_attached_hw_handler  yes" was
623                        set.
624
625       detect_prio      If set to yes , multipath will try to  detect  if  the
626                        device  supports  SCSI-3  ALUA. If so, the device will
627                        automatically  use  the  sysfs  prioritizer   if   the
628                        required   sysf   attributes   access_state  and  pre‐
629                        ferred_path are supported, or the alua prioritizer  if
630                        not.  If  set to no , the prioritizer will be selected
631                        as usual.
632
633                        The default is: yes
634
635       detect_checker   if set to yes , multipath will try to  detect  if  the
636                        device  supports  SCSI-3  ALUA. If so, the device will
637                        automatically use the tur checker. If set to no ,  the
638                        checker will be selected as usual.
639
640                        The default is: yes
641
642       force_sync       If set to yes , multipathd will call the path checkers
643                        in sync mode only.  This means that only  one  checker
644                        will  run at a time.  This is useful in the case where
645                        many multipathd checkers running  in  parallel  causes
646                        significant CPU pressure.
647
648                        The default is: no
649
650       strict_timing    If  set  to  yes  ,  multipathd  will start a new path
651                        checker loop after exactly one second,  so  that  each
652                        path check will occur at exactly polling_interval sec‐
653                        onds. On busy systems path checks  might  take  longer
654                        than  one  second;  here  the  missing  ticks  will be
655                        accounted for on the next round.  A  warning  will  be
656                        printed if path checks take longer than polling_inter‐
657                        val seconds.
658
659                        The default is: no
660
661       deferred_remove  If set to yes , multipathd will do a  deferred  remove
662                        instead  of a regular remove when the last path device
663                        has been deleted.  This means that  if  the  multipath
664                        device is still in use, it will be freed when the last
665                        user closes it.  If path is  added  to  the  multipath
666                        device  before  the  last user closes it, the deferred
667                        remove will be canceled.
668
669                        The default is: no
670
671       partition_delimiter
672                        This parameter  controls  how  multipath  chooses  the
673                        names of partition devices of multipath maps if a mul‐
674                        tipath map is renamed (e.g. if a map alias is added or
675                        changed).  If  this parameter is set to a string other
676                        than "/UNSET/"  (even  the  empty  string),  multipath
677                        inserts  that string between device name and partition
678                        number to construct the partition device name.  Other‐
679                        wise (i.e. if this parameter is unset or has the value
680                        "/UNSET/"), the behavior depends on the map  name:  if
681                        it ends in a digit, a "p" is inserted between name and
682                        partition number; otherwise, the partition  number  is
683                        simply  appended.   Distributions  may  use a non-null
684                        default value for this option; in this case, the  user
685                        must  set  it  to  "/UNSET/"  to  obtain  the original
686                        <unset> behavior. Use multipath -T to check  the  cur‐
687                        rent settings.
688
689                        The default is: <unset>
690
691       config_dir       If  set  to  anything  other  than  "", multipath will
692                        search this directory alphabetically for  file  ending
693                        in  ".conf" and it will read configuration information
694                        from them, just as if it was  in  /etc/multipath.conf.
695                        config_dir  must  either  be  ""  or a fully qualified
696                        directory name.
697
698                        The default is: /etc/multipath/conf.d/
699
700       marginal_path_double_failed_time
701                        One of the four parameters of  supporting  path  check
702                        based  on  accounting  IO  error  such as intermittent
703                        error. When a path failed event occurs twice  in  mar‐
704                        ginal_path_double_failed_time  seconds  due  to  an IO
705                        error and all the other three parameters are set, mul‐
706                        tipathd  will fail the path and enqueue this path into
707                        a queue of which members are sent a couple of continu‐
708                        ous  direct reading asynchronous IOs at a fixed sample
709                        rate of 10HZ to start IO error accounting process.
710
711                        The default is: no
712
713       marginal_path_err_sample_time
714                        One of the four parameters of  supporting  path  check
715                        based  on  accounting  IO  error  such as intermittent
716                        error. If it is set to a value no less than 120,  when
717                        a  path  fail event occurs twice in marginal_path_dou‐
718                        ble_failed_time second due to an IO error,  multipathd
719                        will  fail the path and enqueue this path into a queue
720                        of which members  are  sent  a  couple  of  continuous
721                        direct reading asynchronous IOs at a fixed sample rate
722                        of 10HZ to start the IO  accounting  process  for  the
723                        path  will last for marginal_path_err_sample_time.  If
724                        the rate of IO error on a particular path  is  greater
725                        than  the  marginal_path_err_rate_threshold,  then the
726                        path    will     not     reinstate     for     margin‐
727                        al_path_err_recheck_gap_time  seconds  unless there is
728                        only    one     active     path.     After     margin‐
729                        al_path_err_recheck_gap_time expires, the path will be
730                        requeueed for rechecking. If checking result  is  good
731                        enough, the path will be reinstated.
732
733                        The default is: no
734
735       marginal_path_err_rate_threshold
736                        The error rate threshold as a permillage (1/1000). One
737                        of the four parameters of supporting path check  based
738                        on  accounting  IO  error  such as intermittent error.
739                        Refer to marginal_path_err_sample_time. If the rate of
740                        IO  errors  on  a particular path is greater than this
741                        parameter, then the path will not reinstate  for  mar‐
742                        ginal_path_err_recheck_gap_time  seconds  unless there
743                        is only one active path.
744
745                        The default is: no
746
747       marginal_path_err_recheck_gap_time
748                        One of the four parameters of  supporting  path  check
749                        based  on  accounting  IO  error  such as intermittent
750                        error. Refer to marginal_path_err_sample_time. If this
751                        parameter  is set to a positive value, the failed path
752                        of  which the IO error rate  is  larger  than  margin‐
753                        al_path_err_rate_threshold  will  be  kept  in  failed
754                        state for marginal_path_err_recheck_gap_time  seconds.
755                        When     marginal_path_err_recheck_gap_time    seconds
756                        expires, the path will be requeueed for  checking.  If
757                        checking result is good enough, the path will be rein‐
758                        stated, or else it will keep failed.
759
760                        The default is: no
761
762       delay_watch_checks
763                        If set to a value  greater  than  0,  multipathd  will
764                        watch  paths  that have recently become valid for this
765                        many checks. If they fail again while they  are  being
766                        watched, when they next become valid, they will not be
767                        used until they have stayed up  for  delay_wait_checks
768                        checks.
769
770                        The default is: no
771
772       delay_wait_checks
773                        If  set  to a value greater than 0, when a device that
774                        has recently  come  back  online  fails  again  within
775                        delay_watch_checks checks, the next time it comes back
776                        online, it will marked and delayed, and not used until
777                        it has passed delay_wait_checks checks.
778
779                        The default is: no
780
781       find_multipaths  This  option controls whether multipath and multipathd
782                        try to  create  multipath  maps  over  non-blacklisted
783                        devices  they encounter. This matters a) when a device
784                        is encountered by multipath -u during udev  rule  pro‐
785                        cessing  (a  device is blocked from further processing
786                        by higher layers - such as LVM - if and only  if  it´s
787                        considered a valid multipath device path), and b) when
788                        multipathd detects a new device. The following  values
789                        are possible:
790
791                        strict    Both  multipath  and  multipathd  treat only
792                                  such devices as multipath devices which have
793                                  been part of a multipath map previously, and
794                                  which   are   therefore   listed   in    the
795                                  wwids_file. Users can manually set up multi‐
796                                  path maps using the multipathd add map  com‐
797                                  mand.  Once  set  up  manually,  the  map is
798                                  remembered in the wwids file and will be set
799                                  up automatically in the future.
800
801                        no        Multipath  behaves  like  strict. Multipathd
802                                  behaves like greedy.
803
804                        yes       Both multipathd and multipath treat a device
805                                  as  multipath  device  if the conditions for
806                                  strict are met, or  if  at  least  two  non-
807                                  blacklisted  paths  with  the same WWID have
808                                  been detected.
809
810                        greedy    Both multipathd and  multipath  treat  every
811                                  non-blacklisted  device  as multipath device
812                                  path.
813
814                        smart     This differs from find_multipaths  yes  only
815                                  in  the  way it treats new devices for which
816                                  only one path has been  detected  yet.  When
817                                  such  a  device  is  first encounted in udev
818                                  rules, it is treated as a multipath  device.
819                                  multipathd  waits  whether  additional paths
820                                  with the same WWID appears. If that happens,
821                                  it  sets  up  a multipath map. If it doesn´t
822                                  happen until a timeout expires, or  if  set‐
823                                  ting up the map fails, a new uevent is trig‐
824                                  gered for the device; at second encounter in
825                                  the  udev  rules, the device will be treated
826                                  as non-multipath and passed on to upper lay‐
827                                  ers.   Note:  this  may  cause delays during
828                                  device detection if  there  are  single-path
829                                  devices which aren´t blacklisted.
830
831                        The default is: strict
832
833       find_multipaths_timeout
834                        Timeout,  in  seconds,  to  wait  for additional paths
835                        after detecting  the  first  one,  if  find_multipaths
836                        "smart"  (see above) is set. If the value is positive,
837                        this timeout is used for all unknown,  non-blacklisted
838                        devices  encountered. If the value is negative (recom‐
839                        mended), it's only applied  to  "known"  devices  that
840                        have an entry in multipath's hardware table, either in
841                        the built-in table  or  in  a  device  section;  other
842                        ("unknown")  devices will use a timeout of only 1 sec‐
843                        ond to avoid booting delays. The value  0  means  "use
844                        the  built-in  default". If find_multipath has a value
845                        other than smart, this option has no effect.
846
847                        The default is: -10 (10s for known and 1s for  unknown
848                        hardware)
849
850       uxsock_timeout   CLI  receive  timeout in milliseconds. For larger sys‐
851                        tems CLI commands might timeout before the  multipathd
852                        lock is released and the CLI command can be processed.
853                        This will result in  errors  like  "timeout  receiving
854                        packet"  to  be  returned from CLI commands.  In these
855                        cases it is recommended to increase the CLI timeout to
856                        avoid those issues.
857
858                        The default is: 1000
859
860       retrigger_tries  Sets  the  number  of  times  multipathd  will  try to
861                        retrigger a uevent to get the WWID.
862
863                        The default is: 3
864
865       retrigger_delay  Sets the amount of time, in seconds, to  wait  between
866                        retriggers.
867
868                        The default is: 10
869
870       missing_uev_wait_timeout
871                        Controls  how many seconds multipathd will wait, after
872                        a new multipath device is created, to receive a change
873                        event  from  udev for the device, before automatically
874                        enabling device reloads. Usually multipathd will delay
875                        reloads  on a device until it receives a change uevent
876                        from the initial table load.
877
878                        The default is: 30
879
880       skip_kpartx      If set to yes , kpartx will not  automatically  create
881                        partitions on the device.
882
883                        The default is: no
884
885       disable_changed_wwids
886                        If  set to yes, multipathd will check the path wwid on
887                        change events, and if it has changed from the wwid  of
888                        the  multipath  device, multipathd will disable access
889                        to the path until the wwid changes back.
890
891                        The default is: no
892
893       remove_retries   This sets how may times multipath will retry  removing
894                        a device that is in-use.  Between each attempt, multi‐
895                        path will sleep 1 second.
896
897                        The default is: 0
898
899       max_sectors_kb   Sets the max_sectors_kb device parameter on  all  path
900                        devices  and  the  multipath  device  to the specified
901                        value.
902
903                        The default is: <device dependent>
904
905       ghost_delay      Sets the number of seconds that  multipath  will  wait
906                        after  creating  a device with only ghost paths before
907                        marking it ready for use in systemd.  This  gives  the
908                        active  paths time to appear before the multipath runs
909                        the hardware handler to  switch  the  ghost  paths  to
910                        active  ones.  Setting this to 0 or on makes multipath
911                        immediately mark a device with  only  ghost  paths  as
912                        ready.
913
914                        The default is no
915

blacklist and blacklist_exceptions sections

917       The blacklist section is used to exclude specific devices from the mul‐
918       tipath topology. It is most commonly used to  exclude  local  disks  or
919       non-disk  devices  (such as LUNs for the storage array controller) from
920       being handled by multipath-tools.
921
922       The blacklist_exceptions section is used to revert the actions  of  the
923       blacklist section. This allows one to selectively include ("whitelist")
924       devices which would normally be excluded via the blacklist  section.  A
925       common  usage  is  to  blacklist "everything" using a catch-all regular
926       expression, and create specific blacklist_exceptions entries for  those
927       devices that should be handled by multipath-tools.
928
929       The  following  keywords  are recognized in both sections. The defaults
930       are empty unless explicitly stated.
931
932       devnode          Regular expression matching the  device  nodes  to  be
933                        excluded/included.
934
935                        The  default blacklist consists of the regular expres‐
936                        sions        "^(ram|raw|loop|fd|md|dm-|sr|scd|st|dcss‐
937                        blk)[0-9]" and "^(td|hd|vd)[a-z]". This causes virtual
938                        devices, non-disk devices, and some other device types
939                        to be excluded from multipath handling by default.
940
941       wwid             Regular  expression for the World Wide Identifier of a
942                        device to be excluded/included.
943
944       device           Subsection for the device description. This subsection
945                        recognizes  the  vendor and product keywords. Both are
946                        regular expressions. For a full description  of  these
947                        keywords please see the devices section description.
948
949       property         Regular  expression  for an udev property. All devices
950                        that   have   matching   udev   properties   will   be
951                        excluded/included.   The handling of the property key‐
952                        word  is  special,  because  if  a   property   black‐
953                        list_exception  is set, devices must have at least one
954                        whitelisted udev property; otherwise  they're  treated
955                        as  blacklisted,  and  the  message "blacklisted, udev
956                        property missing" is displayed in the logs.  For exam‐
957                        ple,   setting  the  property  blacklist_exception  to
958                        (SCSI_IDENT_|ID_WWN),  will  cause  well-behaved  SCSI
959                        devices  and  devices  that  provide a WWN (World Wide
960                        Number) to be included, and all others to be excluded.
961                        This works to exclude most non-multipathable devices.
962
963       protocol         Regular  expression for the protocol of a device to be
964                        excluded/included.
965
966                        The protocol strings  that  multipath  recognizes  are
967                        scsi:fcp,   scsi:spi,  scsi:ssa,  scsi:sbp,  scsi:srp,
968                        scsi:iscsi, scsi:sas, scsi:adt, scsi:ata, scsi:unspec,
969                        ccw, cciss, nvme, and undef.  The protocol that a path
970                        is using can be  viewed  by  running  multipathd  show
971                        paths format "%d %P"
972
973       For  every  device, these 5 blacklist criteria are evaluated in the the
974       order "property, devnode, device, protocol, wwid". If  a  device  turns
975       out  to be blacklisted by any criterion, it's excluded from handling by
976       multipathd, and the later criteria aren't evaluated any more. For  each
977       criterion,  the  whitelist  takes  precedence  over  the blacklist if a
978       device matches both.
979
980       Note: Besides the blacklist and whitelist, other configuration  options
981       such as find_multipaths have an impact on whether or not a given device
982       is handled by multipath-tools.
983

multipaths section

985       The multipaths section allows setting attributes of multipath maps. The
986       attributes  that  are  set  via the multipaths section (see list below)
987       take precedence over all other configuration settings, including  those
988       from the overrides section.
989
990       The  only recognized attribute for the multipaths section is the multi‐
991       path subsection. If there are multiple multipath subsections matching a
992       given  WWID,  the  contents  of these sections are merged, and settings
993       from later entries take precedence.
994
995       The multipath subsection recognizes the following attributes:
996
997       wwid             (Mandatory) World Wide Identifier. Detected  multipath
998                        maps  are  matched  agains this attribute.  Note that,
999                        unlike the wwid attribute in  the  blacklist  section,
1000                        this is not a regular expression or a substring; WWIDs
1001                        must match exactly inside the multipaths section.
1002
1003       alias            Symbolic name for the multipath map. This takes prece‐
1004                        dence  over  a an entry for the same WWID in the bind‐
1005                        ings_file.
1006
1007       The following attributes are optional; if not set  the  default  values
1008       are taken from the overrides, devices, or defaults section:
1009
1010              path_grouping_policy
1011              path_selector
1012              prio
1013              prio_args
1014              failback
1015              rr_weight
1016              no_path_retry
1017              rr_min_io
1018              rr_min_io_rq
1019              flush_on_last_del
1020              features
1021              reservation_key
1022              user_friendly_names
1023              deferred_remove
1024              marginal_path_err_sample_time
1025              marginal_path_err_rate_threshold
1026              marginal_path_err_recheck_gap_time
1027              marginal_path_double_failed_time
1028              delay_watch_checks
1029              delay_wait_checks
1030              skip_kpartx
1031              max_sectors_kb
1032              ghost_delay
1033

devices section

1035       multipath-tools  have  a built-in device table with reasonable defaults
1036       for more than 100 known multipath-capable storage devices. The  devices
1037       section  can  be used to override these settings. If there are multiple
1038       matches for a given device, the attributes of all matching entries  are
1039       applied to it.  If an attribute is specified in several matching device
1040       subsections, later entries take  precedence.  Thus,  entries  in  files
1041       under  config_dir  (in  reverse  alphabetical  order)  have the highest
1042       precedence, followed by entries in multipath.conf; the  built-in  hard‐
1043       ware  table  has  the  lowest  precedence. Inside a configuration file,
1044       later entries have higher precedence than earlier ones.
1045
1046       The only recognized attribute for the devices  section  is  the  device
1047       subsection.  Devices  detected  in  the  system are matched against the
1048       device entries using the vendor, product, and  revision  fields,  which
1049       are all POSIX Extended regular expressions (see regex(7)).
1050
1051       The  vendor,  product, and revision fields that multipath or multipathd
1052       detect for devices in a system depend on  the  device  type.  For  SCSI
1053       devices,  they  correspond to the respective fields of the SCSI INQUIRY
1054       page. In general, the command 'multipathd show paths  format  "%d  %s"'
1055       command  can  be used to see the detected properties for all devices in
1056       the system.
1057
1058       The device subsection recognizes the following attributes:
1059
1060       vendor           (Mandatory) Regular expression  to  match  the  vendor
1061                        name.
1062
1063       product          (Mandatory)  Regular  expression  to match the product
1064                        name.
1065
1066       revision         Regular expression to match the product  revision.  If
1067                        not specified, any revision matches.
1068
1069       product_blacklist
1070                        Products  with  the  given vendor matching this string
1071                        are blacklisted. This is equivalent to a device  entry
1072                        in the blacklist section with the vendor attribute set
1073                        to this entry's vendor, and the product attribute  set
1074                        to the value of product_blacklist.
1075
1076       alias_prefix     The  user_friendly_names prefix to use for this device
1077                        type, instead of the default "mpath".
1078
1079       hardware_handler The hardware handler to use for this device type.  The
1080                        following hardware handler are implemented:
1081
1082                        1 emc       (Hardware-dependent)  Hardware handler for
1083                                    DGC class arrays as CLARiiON CX/AX and EMC
1084                                    VNX and Unity families.
1085
1086                        1 rdac      (Hardware-dependent)  Hardware handler for
1087                                    LSI/Engenio/NetApp RDAC  class  as  NetApp
1088                                    SANtricity  E/EF  Series,  and  OEM arrays
1089                                    from IBM DELL SGI STK and SUN.
1090
1091                        1 hp_sw     (Hardware-dependent) Hardware handler  for
1092                                    HP/COMPAQ/DEC  HSG80  and  MSA/HSV  arrays
1093                                    with Active/Standby mode exclusively.
1094
1095                        1 alua      (Hardware-dependent) Hardware handler  for
1096                                    SCSI-3 ALUA compatible arrays.
1097
1098                        The default is: <unset>
1099
1100                        Important  Note: Linux kernels 4.3 and newer automati‐
1101                        cally attach a device handler to known devices  (which
1102                        includes  all devices supporting SCSI-3 ALUA) and dis‐
1103                        allow changing the handler afterwards.  Setting  hard‐
1104                        ware_handler  for such devices on these kernels has no
1105                        effect.
1106
1107       The following attributes are optional; if not set  the  default  values
1108       are taken from the defaults section:
1109
1110              path_grouping_policy
1111              uid_attribute
1112              path_selector
1113              path_checker
1114              prio
1115              prio_args
1116              features
1117              failback
1118              rr_weight
1119              no_path_retry
1120              rr_min_io
1121              rr_min_io_rq
1122              fast_io_fail_tmo
1123              dev_loss_tmo
1124              flush_on_last_del
1125              retain_attached_hw_handler
1126              detect_prio
1127              detect_checker
1128              deferred_remove
1129              marginal_path_err_sample_time
1130              marginal_path_err_rate_threshold
1131              marginal_path_err_recheck_gap_time
1132              marginal_path_double_failed_time
1133              delay_watch_checks
1134              delay_wait_checks
1135              skip_kpartx
1136              max_sectors_kb
1137              ghost_delay
1138

overrides section

1140       The  overrides section recognizes the following optional attributes; if
1141       not set the values are taken from the devices or defaults sections:
1142
1143              path_grouping_policy
1144              uid_attribute
1145              getuid_callout
1146              path_selector
1147              path_checker
1148              alias_prefix
1149              features
1150              prio
1151              prio_args
1152              failback
1153              rr_weight
1154              no_path_retry
1155              rr_min_io
1156              rr_min_io_rq
1157              flush_on_last_del
1158              fast_io_fail_tmo
1159              dev_loss_tmo
1160              user_friendly_names
1161              retain_attached_hw_handler
1162              detect_prio
1163              detect_checker
1164              deferred_remove
1165              marginal_path_err_sample_time
1166              marginal_path_err_rate_threshold
1167              marginal_path_err_recheck_gap_time
1168              marginal_path_double_failed_time
1169              delay_watch_checks
1170              delay_wait_checks
1171              skip_kpartx
1172              ghost_delay
1173

WWID generation

1175       Multipath uses a World Wide Identification (WWID)  to  determine  which
1176       paths  belong to the same device. Each path presenting the same WWID is
1177       assumed to point to the same device.
1178
1179       The WWID is generated by four methods (in the order of preference):
1180
1181       uid_attrs        The WWID is derived from udev attributes  by  matching
1182                        the  device node name. See description of uid_attrs in
1183                        the defaults section above.
1184
1185       getuid_callout   Use the specified external program; cf  getuid_callout
1186                        above.   Care  should be taken when using this method;
1187                        the external program needs to be loaded from disk  for
1188                        execution,  which might lead to deadlock situations in
1189                        an all-paths-down scenario.
1190
1191       uid_attribute    Use the value of  the  specified  udev  attribute;  cf
1192                        uid_attribute  above.  This  method  is  preferred  to
1193                        getuid_callout as multipath does not need to call  any
1194                        external programs here. However, under certain circum‐
1195                        stances  udev  might  not  be  able  to  generate  the
1196                        requested variable.
1197
1198       vpd_pg83         If none of the getuid_callout or uid_attribute parame‐
1199                        ters are present multipath will try to use  the  sysfs
1200                        attribute vpd_pg83 to generate the WWID.
1201

KNOWN ISSUES

1203       The  usage  of  queue_if_no_path  option  can lead to D state processes
1204       being hung and not killable in situations where all the  paths  to  the
1205       LUN  go  offline.  It  is  advisable  to  use  the no_path_retry option
1206       instead.
1207
1208       The use of queue_if_no_path or no_path_retry might lead to  a  deadlock
1209       if the dev_loss_tmo setting results in a device being removed while I/O
1210       is still queued. The multipath daemon will update the dev_loss_tmo set‐
1211       ting accordingly to avoid this deadlock. Hence if both values are spec‐
1212       ified the  order  of  precedence  is  no_path_retry,  queue_if_no_path,
1213       dev_loss_tmo.
1214

SEE ALSO

1216       udev(8), dmsetup(8), multipath(8), multipathd(8).
1217

AUTHORS

1219       multipath-tools  was developed by Christophe Varoqui, <christophe.varo‐
1220       qui@opensvc.com> and others.
1221
1222
1223
1224Linux                             2018-05-21                 MULTIPATH.CONF(5)
Impressum