MPATH_PRIO_ALUA(8)

NAME
mpath_prio_alua - Path priority tool based on Asymmetric LUn Access

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

DESCRIPTION
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.

OPTIONS

-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 “tmpdev-<major>:<minor>-<pid>”.

RETURN VALUE
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.

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

    #> mpath_prio_alua /dev/sda
    50

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]
    50

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 /dev/%n"
        features
            "1 queue_if_no_path"
        path_checker
            tur
    }

Notes:

•   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 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.

SEE ALSO
multipath(8),

AUTHORS
mpath_prio_alua was developed by Jan Kunigk and adapted by Stefan Bader <shbader@de.ibm.com>