Before configuring multipath I/O for your SAN devices, prepare the SAN devices, as necessary, by doing the following:
Configure and zone the SAN with the vendor’s tools.
Configure permissions for host LUNs on the storage arrays with the vendor’s tools.
Install the Linux HBA driver module. Upon module installation, the driver automatically scans the HBA to discover any SAN devices that have permissions for the host. It presents them to the host for further configuration.
![]() | Note |
|---|---|
Ensure that the HBA driver you are using does not have native multipathing enabled. | |
See the vendor’s specific instructions for more details.
After the driver module is loaded, discover the device nodes assigned to specific array LUNs or partitions.
If the LUNs are not seen by the HBA driver, lsscsi can be used to check whether the SCSI devices are seen correctly by the operating system. When the LUNs are not seen by the HBA driver, check the zoning setup of the SAN. In particular, check whether LUN masking is active and whether the LUNs are correctly assigned to the server.
If the LUNs are seen by the HBA driver, but there are no corresponding block devices, additional kernel parameters are needed to change the SCSI device scanning behavior, such as to indicate that LUNs are not numbered consecutively. For information, see Options for SCSI Device Scanning in the Novell® Support Knowledgebase.
Partitioning devices that have multiple paths is not recommended. However, if you want to partition the device, you should configure its partitions using fdisk or YaST2 before configuring multipathing. This is necessary because partitioning a DM-MPIO device is not supported. Partitioning operations on md# devices fail if attempted.
If you configure partitions for a device, DM-MPIO automatically recognizes the partitions and indicates them by appending p1-p
n to the device’s UUID, such as
/dev/disk/by-id/3600601607cf30e00184589a37a31d911
p1
To partition DM-MPIO devices, you must disable DM-MPIO, partition the normal device node (such as
/dev/sdc), then reboot to allow DM-MPIO to see the new partitions.
The system must be manually configured to automatically load the device drivers for the controllers to which the multipath I/O devices are connected within the
INITRD. Therefore add the needed driver module to the variable INITRD_MODULES in the file
/etc/sysconfig/kernel.
For example, if your system contains a RAID controller accessed by the cciss driver and multipath I/O devices connected to a Qlogic controller accessed by the driver qla2xxx, this entry would look like:
INITRD_MODULES="cciss"
Because the Qlogic driver is not automatically loaded on start-up, add it here:
INITRD_MODULES="cciss qla2xxx"
After having changed
/etc/sysconfig/kernel, recreate the
INITRD on your system with the command
mkinitrd.
When you are using LILO as a boot manager, reinstall it with the command /sbin/lilo. No further action is required if you are using GRUB.
Strange behavior occurs if you use the device node names (such as
/dev/sdc) instead of the device’s UUID. The UUID does not change by reboot or when a path is failed over. Multipathed devices show up automatically by their UUID in the
/dev/disk/by-id directory.
The default settings in
mdadm.conf and
lvm.conf files do not work properly with multipathed devices. By default, both
md and LVM2 scan only the physical devices, and they ignore any symbolic links to devices and Device Mapper multipath I/O (DM-MPIO) devices. When managing DM-MPIO devices, you want the opposite behavior, so they ignore all physical devices, and scan only the devices listed in the
/dev/disk/by-id directory.
To avoid scanning and detection problems for multipathed devices:
In a terminal console, log in as the
root user.
Open the
/etc/mdadm.conf file in a text editor, then modify the
Devices variable to scan for devices in the
/dev/disk/by-id directory, as follows:
DEVICE /dev/disk/by-id/*
After you start multipath I/O services, the paths are listed under
/dev/disk/by-id as these names are persistent. They are identical to their non-multipathed names.