Solaris SPARC servers are generally used with FC and multipath configured
The following doc show how to configure Solaris10, it assumes Soalris was upgraded to latest version SunOS Solaris10 5.10 Generic_147147-26
1. Configuration files
The main configuration file is /kernel/drv/scsi_vhci.conf
There Zadara VPSA must be configured so Solaris can handle it as multipath devices.fully certified
Zadara FC supports implicit ALUA, which means that the Solaris driver cannot explicitly failover the paths, but only Zadara VPSA target does it.
Load balancing could be round-robin or none, our tests showed that none is more stable and there is a better chance that paths will survive online and no IO error happen in case of VC reboots. round-robin policy can also be applied but care must be taken.
Another important parameter is to disable auto-failback since Zadara supports implicit ALUA
See the following paramenters:
#load-balance="round-robin";
load-balance="none";
#
auto-failback="disable";
#
# For enabling MPxIO support for 3rd party symmetric device need an
# entry similar to following in this file. Just replace the "SUN SENA"
# part with the Vendor ID/Product ID for the device, exactly as reported by
# Inquiry cmd.
#
device-type-scsi-options-list =
"Zadara VPSA ", "f_tpgs";
# Tunable for updating path states after a UNIT ATTENTION reset.
# There are arrays which do not queue UAs during resets
# after an implicit failover. For such arrays, we need to
# update the path states after any type of UA resets, since
# UA resets take higher precedence among other UNIT ATTENTION
# conditions. By default, scsi_vhci does not update path states
# on UA resets. To make scsi_vhci do that for such arrays, you need
# to set the tunable scsi-vhci-update-pathstate-on-reset to "yes"
# for the VID/PID combination as described below.
#
# "012345670123456789012345", "yes" or "no"
# "|-VID--||-----PID------|",
#
scsi-vhci-update-pathstate-on-reset =
"Zadara VPSA ", "yes";
2. Setting up multipath
While in Solaris x86 multipath is a default, in SPARC servers it must be configured using:
bash-3.2# stmsboot -e
And a reboot is needed after issuing the command.
2.1 Create and attach a block volume and server through FC (assuming zoning done)
2.2 Rescan paths and configure devices
# cfgadm -al -o show_FCP_dev
Ap_Id Type Receptacle Occupant Condition
c2 fc-fabric connected configured unknown
c2::2102b07e7034e21e,0 disk connected configured unusable
c2::2102b07e7034e21e,1 disk connected configured unusable
c2::2102b07e7034e220,0 disk connected configured unusable
c2::2102b07e7034e220,1 disk connected configured unusable
c2::21a2b07e70c9050d,0 disk connected unconfigured unknown
c2::21a2b07e70c9050f,0 disk connected unconfigured unknown
c3 fc-fabric connected configured unknown
c3::2102b07e7034e21d,0 disk connected configured unusable
c3::2102b07e7034e21d,1 disk connected configured unusable
c3::2102b07e7034e21f,0 disk connected configured unusable
c3::2102b07e7034e21f,1 disk connected configured unusable
c3::21a2b07e70c9050c,0 disk connected unconfigured unknown
c3::21a2b07e70c9050e,0 disk connected unconfigured unknown
Force configuration of paths
# cfgadm -o force_update -c configure c2
Ap_Id Type Receptacle Occupant Condition
c2 fc-fabric connected configured unknown
c2::2102b07e7034e21e,0 disk connected configured unusable
c2::2102b07e7034e21e,1 disk connected configured unusable
c2::2102b07e7034e220,0 disk connected configured unusable
c2::2102b07e7034e220,1 disk connected configured unusable
c2::21a2b07e70c9050d,0 disk connected configured unknown
c2::21a2b07e70c9050f,0 disk connected configured unknown
c3 fc-fabric connected configured unknown
c3::2102b07e7034e21d,0 disk connected configured unusable
c3::2102b07e7034e21d,1 disk connected configured unusable
c3::2102b07e7034e21f,0 disk connected configured unusable
c3::2102b07e7034e21f,1 disk connected configured unusable
c3::21a2b07e70c9050c,0 disk connected unconfigured unknown
c3::21a2b07e70c9050e,0 disk connected unconfigured unknown
# cfgadm -o force_update -c configure c3
Ap_Id Type Receptacle Occupant Condition
c2 fc-fabric connected configured unknown
c2::2102b07e7034e21e,0 disk connected configured unusable
c2::2102b07e7034e21e,1 disk connected configured unusable
c2::2102b07e7034e220,0 disk connected configured unusable
c2::2102b07e7034e220,1 disk connected configured unusable
c2::21a2b07e70c9050d,0 disk connected configured unknown
c2::21a2b07e70c9050f,0 disk connected configured unknown
c3 fc-fabric connected configured unknown
c3::2102b07e7034e21d,0 disk connected configured unusable
c3::2102b07e7034e21d,1 disk connected configured unusable
c3::2102b07e7034e21f,0 disk connected configured unusable
c3::2102b07e7034e21f,1 disk connected configured unusable
c3::21a2b07e70c9050c,0 disk connected configured unknown
c3::21a2b07e70c9050e,0 disk connected configured unknown
2.3 See device and paths
# luxadm probe
Found Fibre Channel device(s):
Node WWN:20a2b07e70c9050b Device Type:Disk device
Logical Path:/dev/rdsk/c4t3133393965633636d0s2
2.4 Check paths for the device and it´s status
# luxadm -v display /dev/rdsk/c4t3133393965633636d0s2
Displaying information for: /dev/rdsk/c4t3133393965633636d0s2
DEVICE PROPERTIES for disk: /dev/rdsk/c4t3133393965633636d0s2
Vendor: Zadara
Product ID: VPSA
Revision: 302
Serial Num: 1399ec66
Unformatted capacity: 51200.000 MBytes
Write Cache: Enabled
Read Cache: Enabled
Minimum prefetch: 0x0
Maximum prefetch: 0x0
Device Type: Disk device
Path(s):
/dev/rdsk/c4t3133393965633636d0s2
/devices/scsi_vhci/ssd@g3133393965633636:c,raw
Controller /devices/pci@1e,600000/pci@0/pci@2/emlx@0/fp@0,0
Device Address 21a2b07e70c9050d,0
Host controller port WWN 10000090fa9fd345
Class secondary
State STANDBY
Controller /devices/pci@1e,600000/pci@0/pci@2/emlx@0/fp@0,0
Device Address 21a2b07e70c9050f,0
Host controller port WWN 10000090fa9fd345
Class primary
State ONLINE
Controller /devices/pci@1e,600000/pci@0/pci@8/emlx@0/fp@0,0
Device Address 21a2b07e70c9050c,0
Host controller port WWN 10000000c9a0b802
Class secondary
State STANDBY
Controller /devices/pci@1e,600000/pci@0/pci@8/emlx@0/fp@0,0
Device Address 21a2b07e70c9050e,0
Host controller port WWN 10000000c9a0b802
Class primary
State ONLINE
2.4.1 Check status of the device for each path and also if explicit failover is disabled
# mpathadm show logical-unit /dev/rdsk/c4t3133393965633636d0s2
Logical Unit: /dev/rdsk/c4t3133393965633636d0s2
mpath-support: libmpscsi_vhci.so
Vendor: Zadara
Product: VPSA
Revision: 302
Name Type: unknown type
Name: 3133393965633636
Asymmetric: yes
Current Load Balance: none
Logical Unit Group ID: NA
Auto Failback: off
Auto Probing: NA
Paths:
Initiator Port Name: 10000090fa9fd345
Target Port Name: 21a2b07e70c9050d
Override Path: NA
Path State: OK
Disabled: no
Initiator Port Name: 10000090fa9fd345
Target Port Name: 21a2b07e70c9050f
Override Path: NA
Path State: OK
Disabled: no
Initiator Port Name: 10000000c9a0b802
Target Port Name: 21a2b07e70c9050c
Override Path: NA
Path State: OK
Disabled: no
Initiator Port Name: 10000000c9a0b802
Target Port Name: 21a2b07e70c9050e
Override Path: NA
Path State: OK
Disabled: no
Target Port Groups:
ID: 1
Explicit Failover: no
Access State: standby
Target Ports:
Name: 21a2b07e70c9050d
Relative ID: 12
Name: 21a2b07e70c9050c
Relative ID: 11
ID: 2
Explicit Failover: no
Access State: active optimized
Target Ports:
Name: 21a2b07e70c9050f
Relative ID: 22
Name: 21a2b07e70c9050e
Relative ID: 21
2.5 Other useful commands:
2.5.1 Display HBA port status
# luxadm -e port
/devices/pci@1e,600000/pci@0/pci@2/emlx@0/fp@0,0:devctl CONNECTED
/devices/pci@1e,600000/pci@0/pci@8/emlx@0/fp@0,0:devctl CONNECTED
2.5.2 Reset HBA port or at device base
# luxadm -e forcelip /devices/pci@1e,600000/pci@0/pci@2/emlx@0/fp@0,0:devctl <- HBA port reset
# luxadm -e forcelip /dev/rdsk/c4t3133393965633636d0s2 <- all paths to device reset
2.6 Useful documentation
see links:
https://docs.oracle.com/cd/E19253-01/820-1931/820-1931.pdf
http://docs.oracle.com/cd/E19253-01/820-1931/6ndinfi78/index.html
https://docs.oracle.com/cd/E19957-01/819-0139/ch_4_config_multi_SW.html
http://www.asgaur.com/wp/how-to-rescan-new-luns-added-in-linux-hp-ux-aix-solaris/