Multipath setup for QLogic

Robert Leong -

Multipath setup for QLogic Fibre Channel cards in RedHat.

This document assumes multipathing is already installed and running, see this document for reference
http://support.dvsus.com/hc/en-us/articles/115003655863

The /etc/multipath.conf is used to configure / manage the paths / devices.

Tested on Venice 146120006 - QLogic dual port 8Gb, Dual Fibre connected direct to SpycerBox Flex

Excerpts of /etc/multipath.conf

This configuration is setup for a 4 seconds failover (pull a FC cable from port, delays 4 seconds then resumes with surviving port) and an immediate failback (reinsert the FC cable then as soon as link completes it immediately resumes dataflow).

In this example "SCST" is the vendor reported by the SpycerBox Flex.

devices {
        device {
                vendor                  "SCST*"
                path_selector           "round-robin 0"
                path_grouping_policy    multibus
                getuid_callout          "/lib/udev/scsi_id --whitelisted --device=/dev/%n"
#               prio                    alua
                path_checker            tur
                rr_min_io               100
                rr_weight               priorities
                failback                immediate
                fast_io_fail_tmo        4
                no_path_retry           fail
        }
}

Other typical entries, the cvfsctl entry is required for StorNext: 

blacklist {
        devnode "cvfsctl*"

        device {
                vendor  "JetFlash"
        }
  device {
                vendor  "LSI"
  }
}

What the multipath output tells us

Both FC ports are active and running and moving data:

# multipath -ll
mpathe (23735323137393361) dm-2 SCST_BIO,151130014_data0
size=7.0T features='0' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
  |- 7:0:0:0  sdd 8:48  active ready  running
  `- 8:0:0:0  sdg 8:96  active ready  running

One of the FC ports disconnected:

# multipath -ll
mpathe (23735323137393361) dm-2 SCST_BIO,151130014_data0
size=7.0T features='0' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
  |- 7:0:0:0  sdd 8:48  failed faulty running
  `- 8:0:0:0  sdg 8:96  active ready  running

Only the "active" port is moving data, the other port is "enabled" but not moving data, in standby.  This is not a best practice condition and the settings in multipath.conf is likely not setup correctly:

mpathe (23735323137393361) dm-2 SCST_BIO,151130014_data0
size=7.0T features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=enabled
| `- 7:0:0:0  sdd 8:48  active ready  running
`-+- policy='round-robin 0' prio=1 status=active
  `- 8:0:0:0  sdg 8:96  active ready  running

What the StorNext cvlabel output tells us 

With multipath running, each StorNext LUN is only listed one time as /dev/mapper/..., use multipath -ll to see the path counts:

# cvlabel -l
/dev/mapper/mpathe [SCST_BIO151130014_data0  301] SNFS-EFI "sb_151130014_data0"Sectors: 14973626335. Sector Size: 512.  Maximum sectors: 14973626335.

Additional notes:

With multipath enabled, the io_pentalty_time set in /etc/fstab does not apply if it is used.

 

 

Have more questions? Submit a request

0 Comments

Article is closed for comments.