mpath_prio_alua

Langue: en

Autres versions - même langue

Version: 184201 (CentOS - 06/07/09)

Section: 8 (Commandes administrateur)

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 -d/tmp %d"
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 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.

SEE ALSO

multipath(8),

AUTHORS

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