[dm-devel] Multi-Path on SuSe
Diare, Aboubacar
aboubacar.diare at hp.com
Tue Dec 14 17:48:45 UTC 2004
> it works (as far as I got it during the time I had) only
> basically if configured with dmsetup manually. I.e. it fails
> over once if the primary path fails. How far did you get it working?
Well here is what I have:
1 DL585 running SLES 9 with kernel 2.6.5-7.111.5. Two Qlogic HBAs using
the 8.00.00 driver. Each HBA is connected to a Fibre Channel switch
(Total of two switches). Each switch also has a port from the target I
am using connected to it. I am using HP arrays, XP128 and the XP12000,
two ports on each arrays.
After installing the OS and kernel. I dowloaded and installed udev-046
and tested that it worked by creating random rules and that works fine.
However udevd is not started by default at system boot time. I had to
manually start it.
I then installed hotplug-2004-09-23.tar.gz
I installed device-mapper 1.00.19
I installed multipath-tools-0.3.9
I created the following /etc/multipath.conf file:
defaults {
multipath_tool "/sbin/multipath -v 0 -S"
udev_dir /dev
polling_interval 10
default_selector "round-robin 0"
default_path_grouping_policy multibus
# default_getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
default_getuid_callout "/sbin/scsi_id -g -u -s"
default_prio_callout "/bin/false"
}
devnode_blacklist {
devnode cciss
devnode fd
devnode hd
devnode md
devnode dm
devnode sr
devnode scd
devnode st
devnode ram
devnode raw
devnode loop
}
#
# name : multipaths
# scope : multipath & multipathd
# desc : list of multipaths finest-grained settings
#
multipaths {
#
# name : multipath
# scope : multipath & multipathd
# desc : container for settings that apply to one specific
multipath
#
multipath {
wwid
360060e800427f600000027f600000302
alias Lun0
path_grouping_policy multibus
path_checker readsector0
path_selector "round-robin 0"
}
multipath {
wwid
360060e800427f600000027f600000303
alias Lun1
path_grouping_policy multibus
path_checker readsector0
path_selector "round-robin 0"
}
}
# name : devices
# scope : multipath & multipathd
# desc : list of per storage controler settings
# overrides default settings (device_maps block)
# overriden by per multipath settings (multipaths block)
#
devices {
#
# name : device
# scope : multipath & multipathd
# desc : settings for this specific storage controler
#
device {
#
vendor "HP"
product "OPEN-"
path_grouping_policy multibus
getuid_callout "/sbin/scsi_id -g -u -s
/block/%n"
prio_callout "/sbin/pp_balance_units %d"
path_checker readsector0
path_selector "round-robin 0"
}
I started the udev daemon
I started the Multipathd daemon
And I get the following:
Dec 13 21:10:08 netsrv83 multipathd: --------start up--------
Dec 13 21:10:08 netsrv83 multipathd: start DM events thread
Dec 13 21:10:08 netsrv83 multipathd: initial reconfigure multipath maps
Dec 13 21:10:08 netsrv83 multipathd: no devmap found
Dec 13 21:10:08 netsrv83 multipathd: path checkers start up
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 65:160
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 65:176
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 65:192
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 65:208
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 65:224
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 65:240
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 66:0
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 66:16
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 66:32
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 66:48
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 66:64
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 66:80
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 66:96
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 66:112
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 66:128
Dec 13 21:10:08 netsrv83 multipathd: path checker startup : 66:144
...................... (more the the rest of the Luns)
Followed by the following after a little while:
Dec 13 21:12:40 netsrv83 multipathd: 67:64 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 67:80 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 67:96 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 67:112 : readsector0 checker
reports path is down
Dec 13 21:12:40 netsrv83 multipathd: 67:128 : readsector0 checker
reports path is down
Dec 13 21:12:40 netsrv83 multipathd: 67:144 : readsector0 checker
reports path is down
Dec 13 21:12:40 netsrv83 multipathd: 67:160 : readsector0 checker
reports path is down
Dec 13 21:12:40 netsrv83 multipathd: 67:176 : readsector0 checker
reports path is down
Dec 13 21:12:40 netsrv83 multipathd: 67:192 : readsector0 checker
reports path is down
Dec 13 21:12:40 netsrv83 multipathd: 67:208 : readsector0 checker
reports path is down
Dec 13 21:12:40 netsrv83 multipathd: 8:16 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 8:32 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 8:48 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 8:64 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 8:80 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 8:96 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 8:112 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 8:128 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 8:144 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 8:160 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 8:176 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 8:192 : readsector0 checker reports
path is down
Dec 13 21:12:40 netsrv83 multipathd: 8:208 : readsector0 checker reports
path is down
What I am trying to do is setup Multipathing just for Lun zero and Lun
one on the second storage device. My storage devices as seen by the HBA
are as follows:
SCSI Device Information: scsi-qla0-adapter-node=200000e08b177dc5;
scsi-qla0-adapter-port=210000e08b177dc5;
scsi-qla0-target-0=50060e8003c3de14; <-- Target 1
scsi-qla0-target-1=50060e800427f611; <-- Target 2
Running the command multipath -v 2 doesn't yield any output and /dev had
no dm device created.
> I didn't have time to figure out yet how it does the mapping
> setup via
> /etc/udev.d/block/ as suggested by Christophe on 11/26.
> It might depend on the SCSI-Devices you have, I get valid
> WWIDs only with "/sbin/scsi_id -g -p 0x80 -s" but that
> doesn't solve the problem
> of autodetecting yet.
>
SuSE does not have /etc/udev.d it's /etc/udev instead but there is no
block folder under that path and I am not sure what you mean by setting
up the mapping via /etc/udev/block. I get valid wwid with the default
scsi_id usage:
/sbin/scsi_id -g -u -s
> I got some beta packages from the upcomming SLES9-SP1 from
> SuSE-Support (multipath-tools-0.3.6, device-mapper-1.00.19 +
> appropriate kernel) but will/might have the opportunity to
> test it not earlier than next week.
> Novell/SuSE probably doesn't like publishing links of their
> beta packages but I assume they like that their packages are
> well tested- so you might call the helpful RSchmidt from SuSE
> Support or refer to ftp.suse.com/pub/people/ - and give some
> feedback.
I'll look into this.
Thanks.
Aboubacar.
More information about the dm-devel
mailing list