Linux DM Multipath

Device Mapper Multipath Input Output often shortened to DM-Multipathing and abbreviated as DM-MPIO provides input-output (I/O) fail-over and load-balancing by using multipath I/O within Linux for block devices. By utilizing device-mapper, the multipathd daemon provides the host-side logic to use multiple paths of a redundant network to provide continuous availability and higher-bandwidth connectivity between the host server and the block-level device. DM-MPIO handles the rerouting of block I/O to an alternate path in the event of a path failure. DM-MPIO can also balance the I/O load across all of the available paths that are typically utilized in Fibre Channel (FC) and iSCSI SAN environments.
DM-MPIO is based on the device mapper, which provides the basic framework that maps one block device onto another.
Considerations.
When utilizing Linux DM-MPIO in a datacenter that has other operating systems and multipath solutions, key components of path management must be considered.
History.
DM-MPIO started as a patch set created by Joe Thornber, and was later maintained by Alasdair G Kergon at Red Hat. It was included in mainline Linux with kernel version 2.6.12, which was released on June 17, 2005.
Components.
DM-MPIO in Linux consists of kernel components and user-space components.
Configuration file.
The configuration file "/etc/multipath.conf" makes many of the DM-MPIO features user-configurable. The "multipath" command and the kernel daemon "multipathd" use information found in this file. The file is only consulted during the configuration of the multipath devices. Changes must be made prior to running the "multipath" command. Changes to the file afterwards will require "multipath" to be executed again.
The multipath.conf has five sections: