Troubleshooting SLES Multipathing (MPIO) problems

  • 3231766
  • 02-Apr-2008
  • 30-Apr-2012

Environment

Novell SUSE Linux Enterprise Server 10
Novell SUSE Linux Enterprise Server 9
Novell Open Enterprise Server (Linux based)

Situation

Most MPIO problem in SUSE Linux Enterprise Server using themultipath-toolspackage can be resolved by looking at a few simple areas. Following is a checklist of items to keep in mind when using MPIO. These are all documented in the SDB titledHow to setup / use multipathing on SLES. This document should always be used as the authoritative source when configuring MPIO.

Resolution

The most common MPIO problems occur in the following areas. Follow these suggestions in the order they are given.

Configuration

Packages
Ensure that the multipath-tools package is installed:
rpm -q multipath-tools

Hotplug (SLES 9 only)
Verify that HOTPLUG_USE_SUBFS is changed from yes tonoin /etc/sysconfig/hotplug.

(Note: This change requires a reboot)

Ramdisk
Make sure that the driver for the HBA is added to INITRD_MODULES in /etc/sysconfig/kernel. In most cases this is qla2xxx or qla2400. When this setting is made, rebuild the ramdisk by executing mkinitrd.

As an example, a server with a SmartArray disk controller, a Reiserfs root filesystem, and a Qlogic HBA might have: INITRD_MODULES="cciss reiserfs qla2xxx"

(Note: After running mkinitrd the system must be reboot)

MPIO Services
Ensure that boot.multipath and multipathd are set to start on boot:
chkconfig boot.multipath on
chkconfig multipathdon

The services can be started immediately with:
/etc/init.d/boot.multipath start
/etc/init.d/multipathd start

Using Multipathed Devices

Device Nodes
When using a MPIO device, always use the devices listed under /dev/disk/by-name/. These devices will never change when a path is failed over. Strange behavior will occur if a traditional SCSI device node (e.g., /dev/sdc) is used.

As an example, a proper device node is /dev/disk/by-name/3600601607cf30e00184589a37a31d911. If this device has a partition on it the first partition is /dev/disk/by-name/3600601607cf30e00184589a37a31d911p1. The identifier comes from the WWID of the device.

Partitioning
Partitioning a MPIO device is described in Chapter 5.4.2 and 5.11 of the Storage Administration guide at:

 https://www.novell.com/documentation/sles10/stor_evms/data/multipathing.html

On SLES 10 SP2, please follow the steps below:
  1. Create a partition table for the device by entering

    fdisk /dev/dm-8
  2. Add a /dev/dm-* link for the new partition by entering

    /sbin/kpartx -a -p -part /dev/dm-8
  3. Verify that the link was created by entering

    ls -lrt /dev/dm-*

LUNs are not seen by the driver
lsscsican be used to check whether the SCSI devices are seen correctly by the OS. 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.

LUNs are seen by the driver, but there are no corresponding block devices
When LUNs are seen by the HBA driver, but not as block devices, additional kernel parameters are needed to change the SCSI device scanning behavior, e.g. to indicate that LUNs are not numbered consecutively. Refer to KB 3955167, Troubleshooting SCSI (LUN) scanning issues for details.