You are on page 1of 3

SunBlog: Configuring MPXIO in Solaris 10 Página 1 de 3

Compartir Informar sobre mal uso Siguiente blog» Crear un blog Acceder

SunBlog

About Me WEDNESDAY, OCTOBER 04, 2006


MIKE BRANNIGAN
Configuring MPXIO in Solaris 10
View my complete profile This document discusses the configuration of MPXIO on
2
Blog Archive Solaris 10 for failover with a single-port HBA. While this
►  2007 (6) configuration isn't as redundant as one with multiple HBAs,
▼ 2006 (1) configuring multipathing access may still be necessary. For
▼ October (1) example, your array may present multiple paths to the same LUN over
Configuring MPXIO in the single HBA. Without controlling access to the LUN with MPXIO (or
Solaris 10 another product such as Veritas DMP), failover will not occur properly if
one of the paths to the LUNs disappears.
Labels

Mac (1) Environment Configuration


MPXIO (1) * Sunfire T1000
SAN (1) * QLE2460 4Gbps single-port HBA
Solaris (1)
* Hitachi AMS200 Array
ZFS (1)
* McData Switches
Links
Output of format:
Sun Microsystems
1. c1t50060E801049CF50d0
OpenSolaris
/pci@780/SUNW,qlc@0/fp@0,0/ssd@w50060e801049c
Chat on Campfire f50,0
...
3. c1t50060E801049CF52d0
/pci@780/SUNW,qlc@0/fp@0,0/ssd@w50060e801049c
f52,0

These two devices refer to the same LUN on the AMS (LUN 0). This is
determined by the 'd0' at the end of the device name. What we are
observing here are two different paths to the same device. One path to
LUN 0 is over the 50 interface (c1t50060E801049CF50d0). The other
path to LUN 0 is over the 52 interface (c1t50060E801049CF52d0).

What's wrong with this picture?


The issue is that we need to mount only one of these paths to the LUN.
The path that we need to choose is the path that is the 'owner' of the
LUN. The LUN's owner can be determined on the SAN management
station. If, for example, the owner is the 50 interface, we should mount
c1t50060E801049CF50d0. However, if the 50 interface has issues and
we lose that path, we will lose access to the LUN.

We need a layer to abstract the two paths into a single device that we
use. This layer would present a new virtual device that could be
mounted. Underneath this virtual device would be the two paths to the
LUN, the owner and the non-owner. This resolves the issue of what
device to use if an interface to the LUN fails. The multipathing layer
would simply start accessing the device over the alternate path and
would not require any changes to what device the OS accesses the
filesystem over.

In Solaris 10, MPXIO provides this layer of abstraction to solve this

http://sunblog.mbrannigan.com/2006/10/configuring-mpxio-in-solaris-10.html 04/04/2011
SunBlog: Configuring MPXIO in Solaris 10 Página 2 de 3

issue.

Configuring MPXIO
There are a few files that we need to modify to enable MPXIO.

/kernel/drv/fp.conf
To configure this file, you need to determine the path to the fp devices.
To do this, run the following command:
# ls -l /dev/fc
lrwxrwxrwx 1 root root 46 Aug 15 18:36 fp0 -
This website is not affiliated with > ../../devices/pci@780/SUNW,qlc@0/fp@0,0:dev
Sun Microsystems or any of it's
affiliates. Any tips offered up here ctl
can be followed at your own risk. I
will not be responsible for any loss We are interested in the path after '/devices' and before '/fp@0,0...'
of data, time, or any other damage
occurred by following any In this case, the path we are interested in is: '/pci@780/SUNW,qlc@0'.
information on this site. They This path is
seemed to work for me, but your
mileage may vary. Opinions
associated with port 0 of the fp driver (from the '0' in fp0).
provided on this site are of the
posters and may not be congruent We need to turn on MPXIO for this device and port by setting the
with my views.
following in
/kernel/drv/fp.conf:
mpxio-disable="yes";
© 2007 Mike Brannigan name="fp" parent="/pci@780/SUNW,qlc@0" port=0 mpxio-
disable="no";

This disables MPXIO globally and enables it for the above device.

/kernel/drv/scsi_vhci.conf
The scsi_vhci driver is responsible for hiding the owner and non-
owner paths to the LUNs. To enable this capability, the driver must
know what type of device that the HBA is connected to. To do this, you
need to set the following in /kernel/drv/scsi_vhci.conf:
device-type-scsi-options-list="HITACHI
DF600F", "symmetric-option";
symmetric-option = 0x1000000;

We knew to set the option to "HITACHI DF600F" from the output of


format:
1. c1t50060E801049CF50d0 <HITACHI-DF600F-0000 cyl
981 alt 2 hd 50 sec 768>

After making these changes, reboot the server with the following
command:
# reboot -- -r

After reboot, format will show the following:


1.
c2t4849544143484920373330343031383130303030d0
/scsi_vhci/ssd@g48495441434849203733303430313
83130303030

Note: the order of the devices that are displayed may be


altered! What used to be #1 in the output of format may
show up as #2.
Additionally, notice that we are now accessing the devices
via the scsi_vhci driver.
To determine what devices are behind these virtual devices run the
following command:
# stmsboot -L
non-STMS device name STMS device name
-----------------------------------------------------
-------------
/dev/rdsk/c1t50060E801049CF50d0 /dev/rdsk/c2t48495441

http://sunblog.mbrannigan.com/2006/10/configuring-mpxio-in-solaris-10.html 04/04/2011
SunBlog: Configuring MPXIO in Solaris 10 Página 3 de 3

43484920373330343031383130303030d0

/dev/rdsk/c1t50060E801049CF52d0 /dev/rdsk/c2t48495441
43484920373330343031383130303030d0

This shows that both paths to LUN 0 (50 and 52) are now behind the
device:
/dev/rdsk/c2t4849544143484920373330343031383130303030
d0

Finally, reconfigure the system's vfstab and other configuration files to


start using the filesystems on the devices now under MPXIO control.

Posted by Mike Brannigan at 10:35 PM  


Labels: MPXIO , SAN

0 comments:
Post a Comment

Newer Post Home

Subscribe to: Post Comments (Atom)

http://sunblog.mbrannigan.com/2006/10/configuring-mpxio-in-solaris-10.html 04/04/2011