Below is a sample multipath config file for an DS3000 SAN:
devices { device { vendor IBM product "1726-2xx" path_checker rdac path_grouping_policy group_by_prio prio rdac } } blacklist { wwid SAMSUNG_MZHPU512HCGL-00004_S1NDNYAFA00513 wwid SAMSUNG_MZHPU512HCGL-00000_S1AENYAF900319 wwid 3600605b0033ae3601c817e52d6d901be } multipaths { multipath { wwid 3600a0b80003ad39d00009eac56c0fe2b alias bhqibm01-r6-sata02-ds01 } multipath { wwid 3600a0b80003ad39d00009e8c56c0fc25 alias bhqibm01-r6-sata03-ds01 } }
The devices-device section at the top matches the vendor (/sys/block/sdX/device/vendor) and a regular expression against the product (/sys/block/sdX/device/model) and assigns the path checker module (how to tell if a path has failed), the path grouping policy (how to choose which path(s) to use) and which module to use to assign priorities to the paths.
The blacklist section stops the multipath driver from taking control of some devices. The example above uses the wwid parameter (ls -l /dev/disk/by-id/ and look at the scsi-* or ata-* names). The alternative would be to put a bunch of device {} sections within the blacklist section and block by vendor/product.
The last section assigns an alias to a given multipath device (see below)
root@hostname:~# ls -l /dev/disk/by-id/ | grep dm-1 lrwxrwxrwx 1 root root 10 Feb 14 15:02 dm-name-bhqibm01-r6-sata02-ds01 -> ../../dm-1 lrwxrwxrwx 1 root root 10 Feb 14 15:02 dm-uuid-mpath-3600a0b80003ad39d00009eac56c0fe2b -> ../../dm-1