This section describes how to manage failover and path load balancing for multiple paths between the servers and block storage devices.
Section 5.7, “Adding Support for the Storage Subsystem to /etc/multipath.conf ”
Section 5.8, “Configuring User-Friendly Names in /etc/multipath.conf”
Section 5.9, “Tuning the Failover for Specific Host Bus Adapters”
Section 5.10, “Configuring Multipath I/O for the Root Device”
Section 5.11, “Configuring Multipath I/O for an Existing Software RAID”
Multipathing is the ability of a server to communicate with the same physical or logical block storage device across multiple physical paths between the host bus adapters in the server and the storage controllers for the device, typically in Fibre Channel (FC) or iSCSI SAN environments. You can also achieve multiple connections with direct attached storage when multiple channels are available.
Linux multipathing provides connection fault tolerance and can optionally provide load balancing across the available connections. When multipathing is configured and running, it automatically isolates and identifies device connection failures, and reroutes I/O to alternate connections.
Typical connection problems involve faulty adapters, cables, or controllers. When you configure multipath I/O for a device, the multipath driver monitors the active connection between devices. When it detects I/O errors, the multipath driver fails over to a designated secondary path. When the primary path becomes healthy again, control is automatically returned to the primary connection.
Use the guidelines in this section when planning your multipath I/O solution:
Multipathing is managed at the device level.
Multiple physical paths must exist between host bus adapters in the server and host bus controllers for the block storage device.
Device partitioning (disk carving) and hardware RAID configuration should be completed prior to configuring multipathing. If you change the partitioning in the running system, Device Mapper Multipath I/O (DM-MPIO) does not automatically detect and reflect these changes. It must be reinitialized, which usually requires a reboot.
When you plan to create software RAID devices, multipathing should be configured for the devices you plan to use prior to creating the software RAID devices because multipathing runs underneath the RAID.
When you plan to create a Distributed Replicated Block Device (DRBD), multipathing should be configured for the devices prior to configuring the DRBD because multipathing runs underneath the DRBD.
The storage subsystem you use on the multipathed device must support multipathing. Most storage subsystems should work; however, they might require an appropriate entry in the DEVICE variable in the
/etc/multipath.conf file.
Consult the vendor’s hardware documentation to determine what settings are required.
When configuring devices for multipathing, use the device names in the
/dev/disk/by-id directory instead of the default device names (such as
/dev/sd*), because the
/dev/disk/by-id names persist over reboots.
For more information, see Chapter 3, Using UUIDs to Mount Devices.
Device Mapper Multipath I/O supports partitions (with limitations) and LVM2. Software RAID is also supported, but automatic discovery is not available.