Man Linux: Main Page and Category List


       mpath_prio_alua - Path priority tool based on Asymmetric LUn Access


       mpath_prio_alua [-d directory] [-h] [-v] [-V] device [ device [ ... ]]


       mpath_prio_alua  is  used  as  a  priority  callout  for  the multipath
       command. It returns a number that is used by multipath to group devices
       with the same priority together.


       -d directory
              target  directory  for devices given as relative device names or
              devices given as major:minor number.  Default is "/dev".

       -h     displays the command line help.

       -v     turns on  verbose  output.  This  shows  all  results  in  human
              readable format.  This includes information about the port group
              the device is in and its current state.

       -V     shows the version number and exits.

       device specifies the device to query (the device must be a SCSI  device
              that  supports the “Report Target Port Groups” command).  One of
              the following three formats may be used:

              · The full path name that starts with ’/’ (e.g. /dev/sda).

              · The device name only. This  will  prefix  the  directory  name
                given by the -d option (e.g. sda).

              · The  major  and  minor  number of the device separated by ’:’.
                This will  create  a  temporary  device  node  in  the  device
                directory   (e.g.   8:0).   The   temporary   name   will   be


       The mpath_prio_alua command returns the following values:

       0      on success. In this case the priority for the device is  printed
              to stdout. The priority value is:

              50     for devices that are in the active, optimized group

              10     for devices that are in an active but non-optimized group

              1      for devices that are in the standby group

              0      for all other groups

              The reason for the widely spaced  priority  values  is  the  way
              multipath  handles them. It will multiply the number of paths in
              a group with the priority value and select the  group  with  the
              highest result. Thus, if there are six paths in the active, non-
              optimized group and only one in the active, optimized  one,  the
              non-optimized group would be used.

       1      Indicates an error parsing the command line.

       2      The given devices could not be opened for reading.

       3      The device does not support target port groups.

       4      The  inquiry  command did not return a target port group for the
              given device.

       5      The report target port group command failed or did not return  a
              target port group that was obtained from the inquiry command.


       This example queries a device directly and returns the priority string:

              #> mpath_prio_alua /dev/sda

       Now the major and minor number  is  used  to  specify  the  device  and
       verbose output is selected:

              #> mpath_prio_alua -v 8:0
              Target port groups are implicitly supported.
              Reported target port group is 0 [active/optimized]

       The  following  example shows the entries in the devices section of the
       multipath-tool configuration file (/etc/multipath.conf) to  support  an
       IBM DS6000 storage system:

              device {
                     vendor                "IBM       "
                     product               "1750500         "
                     path_grouping_policy  group_by_prio
                     prio_callout          "/sbin/mpath_prio_alua -d/tmp %d"
                     features              "1 queue_if_no_path"
                     path_checker          tur


       · Depending on your default configuration not all keywords are required
         (e.g. if your path_checker is set to tur you don’t have  to  use  the
         path_checker statement in the device section).

       · The  entries  for  vendor  and  product  must  be  strings that are 8
         characters long (for vendor) and 16 characters  long  (for  product).
         The strings have to be padded with blanks if necessary.

       · If  you  are working with hotpluggable devices whose device nodes are
         created by udev you should  use  the  %d  flag  in  the  prio_callout
         statement.   This is because a short time elapses between the devices
         being available and udev creating the device nodes.

       · If under certain circumstances  your  storage  subsystem  temporarily
         reports  failures on all paths, you should use the features statement
         showed in the example.  This will configure the multipath  volume  to
         requeue  I/O  until  a  path  becomes  available  again,  instead  of
         reporting failures in that case.




       mpath_prio_alua was developed by Jan Kunigk and adapted by Stefan Bader