Here is the example of Solaris 10 SPARC system having LUNs from 3PAR external storage.
First, enable multipath support for specific storage, the /kernel/drv/scsi_vhci.conf should have section like:
# 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 = "3PARdataVV" , "symmetric-option"; # "SUN SENA", "symmetric-option"; # symmetric-option = 0x1000000; |
AVAILABLE DISK SELECTIONS: 0. c4t20110002AC0086D2d2 < 3PARdata-VV-3123 cyl 13795 alt 2 hd 8 sec 304> /pci@3,700000/pci@0/pci@1/pci@0/pci@9/SUNW,emlxs@0/fp@0,0/ssd@w20110002ac0086d2,2 1. c4t20110002AC0086D2d3 < 3PARdata-VV-3123 cyl 13795 alt 2 hd 8 sec 304> /pci@3,700000/pci@0/pci@1/pci@0/pci@9/SUNW,emlxs@0/fp@0,0/ssd@w20110002ac0086d2,3 |
[hostname/tmp] /usr/local/bin/HP3PARInfo -i Device File Name Size [MB] Tgt Lun LUN WWN VV Name Code Rev Serial# ============================================================================================================================================== /dev/rdsk/c4t20110002AC0086D2d29s2 524288 --- 1d 60002ac0000000000000001d000086d2 VV_0029 3.1.2 MU3 01634514 /dev/rdsk/c4t20110002AC0086D2d28s2 524288 --- 1c 60002ac0000000000000001c000086d2 VV_0028 3.1.2 MU3 01634514 ... /dev/rdsk/c4t20110002AC0086D2d36s2 76800 --- 24 60002ac000000000000000e7000086d2 VV_0231 3.1.2 MU3 01634514 /dev/rdsk/c5t21120002AC0086D2d36s2 76800 --- 24 60002ac000000000000000e7000086d2 VV_0231 3.1.2 MU3 01634514 |
#!/bin/sh #set -x # tested only with Solaris 10 and 3PAR err() { echo "\n ERROR: $* \n" exit 1 } # check if you run script as root [ `id | cut -d= -f3 | cut -d\( -f1` = 0 ] || err "Sorry, you are NOT root ... exiting" # check if this is solaris 10 [ `uname -a |awk '{print $3}'` = 5.10 ] || err "The script is only for Solaris 10 ... exiting" # check if multipathing is enabled echo Checking multipathing, may take a while .... mp=`stmsboot -L | head -1 | awk -F: '{print $2}'` [ "${mp}" = " MPxIO is not enabled" ] && err "Multipathing is disabled, enable it with 'stmsboot -e' ... exiting" number_of_hba=`fcinfo hba-port | grep "HBA Port WWN" | wc -l | nawk '{print $1}'` wwn_of_hba=`fcinfo hba-port | grep "HBA Port WWN" | nawk '{print $4}'` echo Total number of HBA: ${number_of_hba} echo WWN of all HBA: ${wwn_of_hba} number_of_hba_fc=`cfgadm -al |grep fc-fabric |awk '{print $1}' |wc -l` hba_fc_list=`cfgadm -al |grep fc-fabric |awk '{print $1}'` mp_channel=`format < /dev/null | grep 3PARdata | head -1 | awk '{print $2}' |cut -c1-2` echo Number of HBA connected to SAN is ${number_of_hba_fc} and Channel are: ${hba_fc_list} echo Multipath Channel is ${mp_channel} for i in ${wwn_of_hba} do for j in ${hba_fc_list} do remote_www=`cfgadm -al | grep ${j} | grep disk | awk '{print $1}' | awk -F: '{print $3}'` wwn_hba_fc=`fcinfo remote-port -p ${i} | grep ${remote_www}` [ $? -eq 0 ] && echo "HBA WWN ${i} is connected to SAN" done done printf "\n################################################################################################### \n" printf "%-37s %-10s %-20s %-20s %-20s\n" "Solaris Disk" "Size(GB)" "VxVM Device" "VxVM Disk" "DG" printf "################################################################################################### \n" for i in `luxadm probe | grep Logical | grep /dev/rdsk/${mp_channel} | awk -F: '{print $2}'` do disk_shortname=`echo ${i} | sed 's#/dev/rdsk/##g'` lun_size_mb=`luxadm -v display ${i} | grep capacity | awk '{print $3}'` # in MB lun_size=`(echo "scale=1; ${lun_size_mb}/1024" |bc -l)` # in GB vxvm_device=`vxdisk list ${disk_shortname} | grep devicetag | awk '{print $2}'` vxvm_disk=`vxdisk list ${disk_shortname} | grep disk | grep name | awk -F= '{print $2}' |awk '{print $1}'` vxvm_group=`vxdisk list ${disk_shortname} | grep group | grep name | awk '{print $2}' | awk -F= '{print $2}'` printf "%-37s %-10s %-20s %-20s %-20s\n" "${i}" "${lun_size}" "${vxvm_device}" "${vxvm_disk}" "${vxvm_group}" done exit 0 |
[hostname/tmp] /usr/local/bin/san_sol_info.sh Checking multipathing, may take a while .... Total number of HBA: 6 WWN of all HBA: 10000000c96b1670 10000000c96b1671 10000000c9792f74 10000000c961aa42 10000000c9782d1a 10000000c9782d1b Number of HBA connected to SAN is 2 and Channel are: c4 c5 Multipath Channel is c4 HBA WWN 10000000c9792f74 is connected to SAN HBA WWN 10000000c961aa42 is connected to SAN ################################################################################################### Solaris Disk Size(GB) VxVM Device VxVM Disk DG ################################################################################################### /dev/rdsk/c4t20110002AC0086D2d2s2 16.0 3pardata0_0 dg11_disk001 dg11 /dev/rdsk/c4t20110002AC0086D2d3s2 16.0 3pardata0_0_1 dg12_disk001 dg12 /dev/rdsk/c4t20110002AC0086D2d4s2 32.0 3pardata0_0_2 dgswap_disk001 dgswap /dev/rdsk/c4t20110002AC0086D2d5s2 32.0 3pardata0_0_3 dg02_disk001 dg02 /dev/rdsk/c4t20110002AC0086D2d6s2 32.0 3pardata0_0_4 dg03_disk001 dg03 /dev/rdsk/c4t20110002AC0086D2d7s2 96.0 3pardata0_0_5 dg03cl1_disk001 dg03cl1 /dev/rdsk/c4t20110002AC0086D2d9s2 222.0 3pardata0_0_7 dg13_disk001 dg13 /dev/rdsk/c4t20110002AC0086D2d10s2 222.0 3pardata0_0_8 dg13_disk002 dg13 /dev/rdsk/c4t20110002AC0086D2d11s2 222.0 3pardata0_0_9 dg13_disk003 dg13 /dev/rdsk/c4t20110002AC0086D2d12s2 222.0 3pardata0_0_10 dg13_disk004 dg13 /dev/rdsk/c4t20110002AC0086D2d13s2 224.0 3pardata0_0_11 dg07_disk001 dg07 /dev/rdsk/c4t20110002AC0086D2d14s2 224.0 3pardata0_0_12 dg07_disk002 dg07 /dev/rdsk/c4t20110002AC0086D2d15s2 224.0 3pardata0_0_13 dg07_disk003 dg07 /dev/rdsk/c4t20110002AC0086D2d16s2 224.0 3pardata0_0_14 dg07_disk004 dg07 /dev/rdsk/c4t20110002AC0086D2d17s2 512.0 3pardata0_0_15 dg13_disk005 dg13 /dev/rdsk/c4t20110002AC0086D2d18s2 512.0 3pardata0_0_16 dg13_disk006 dg13 /dev/rdsk/c4t20110002AC0086D2d19s2 512.0 3pardata0_0_17 dg13_disk007 dg13 /dev/rdsk/c4t20110002AC0086D2d20s2 512.0 3pardata0_0_18 dg13_disk008 dg13 /dev/rdsk/c4t20110002AC0086D2d21s2 512.0 3pardata0_0_19 dg13_disk009 dg13 /dev/rdsk/c4t20110002AC0086D2d22s2 512.0 3pardata0_0_20 dg13_disk010 dg13 /dev/rdsk/c4t20110002AC0086D2d23s2 512.0 3pardata0_0_21 dg13_disk011 dg13 /dev/rdsk/c4t20110002AC0086D2d24s2 512.0 3pardata0_0_22 dg13_disk012 dg13 /dev/rdsk/c4t20110002AC0086D2d25s2 512.0 3pardata0_0_23 dg13_disk013 dg13 /dev/rdsk/c4t20110002AC0086D2d26s2 512.0 3pardata0_0_24 dg13_disk014 dg13 /dev/rdsk/c4t20110002AC0086D2d27s2 512.0 3pardata0_0_25 dg13_disk015 dg13 /dev/rdsk/c4t20110002AC0086D2d28s2 512.0 3pardata0_0_26 dg13_disk016 dg13 /dev/rdsk/c4t20110002AC0086D2d29s2 512.0 3pardata0_0_27 dgtemp_disk001 dgtemp /dev/rdsk/c4t20110002AC0086D2d30s2 512.0 3pardata0_0_28 dgtemp_disk002 dgtemp /dev/rdsk/c4t20110002AC0086D2d31s2 512.0 3pardata0_0_29 dgtemp_disk003 dgtemp /dev/rdsk/c4t20110002AC0086D2d32s2 512.0 3pardata0_0_30 dgtemp_disk004 dgtemp /dev/rdsk/c4t20110002AC0086D2d33s2 75.0 3pardata0_0_31 dg10_disk002 dg10 /dev/rdsk/c4t20110002AC0086D2d34s2 75.0 3pardata0_0_32 dg10_disk003 dg10 /dev/rdsk/c4t20110002AC0086D2d35s2 75.0 3pardata0_0_33 dg10_disk004 dg10 /dev/rdsk/c4t20110002AC0086D2d36s2 75.0 3pardata0_0_34 dg10_disk005 dg10 |
# pkginfo -l VRTSvxvm | grep -i version VERSION: 6.0.100.000,REV=08.01.2012.11.13 # modinfo | grep vx 129 7b74ce30 1190 350 1 vxspec (VxVM 6.0.1 control/status drive) 130 7c002000 28f758 349 1 vxio (VxVM 6.0.1 I/O driver) 131 7b258000 57900 348 1 vxdmp (VxVM 6.0.1 Multipathing Driver) 221 7affa000 22f0 351 1 vxlo (Veritas Loopback Driver 0.1) 222 7b2b1300 db0 352 1 vxportal (VxFS 6.0.100.000 portal driver) 223 7c26c000 241ee0 21 1 vxfs (VxFS 6.0.100.000 SunOS 5.10) |
# vxdg list NAME STATE ID dgswap enabled,cds 1390003875.96.hostname dgtemp enabled,cds 1391622109.64.hostname dg02 enabled,cds 1390004803.98.hostname dg03 enabled,cds 1390004827.100.hostname dg03 enabled,cds 1390004848.102.hostname dg07 enabled,cds 1390004956.110.hostname dg10 enabled,cds 1390004882.104.hostname dg11 enabled,cds 1390004907.106.hostname dg12 enabled,cds 1390004924.108.hostname dg13 enabled,cds 1390005625.112.hostname |
# vxdmpadm gettune all Tunable Current Value Default Value ------------------------------ ------------- ------------- dmp_cache_open on on dmp_daemon_count 10 10 dmp_delayq_interval 15 15 dmp_fast_recovery on on dmp_health_time 60 60 dmp_log_level 1 1 dmp_low_impact_probe on on dmp_lun_retry_timeout 0 0 dmp_path_age 300 300 dmp_pathswitch_blks_shift 9 9 dmp_probe_idle_lun on on dmp_probe_threshold 5 5 dmp_restore_cycles 10 10 dmp_restore_interval 300 300 dmp_restore_policy check_disabled check_disabled dmp_restore_state enabled enabled dmp_retry_count 5 5 dmp_scsi_timeout 30 30 dmp_sfg_threshold 1 1 dmp_stat_interval 1 1 dmp_monitor_ownership on on dmp_native_multipathing off off dmp_monitor_fabric on on dmp_monitor_osevent on on dmp_native_support off off |
# vxdmpadm listctlr all CTLR-NAME ENCLR-TYPE STATE ENCLR-NAME ===================================================== c4 3PARDATA ENABLED 3pardata0 c5 3PARDATA ENABLED 3pardata0 c6 Disk ENABLED disk |
# vxdmpadm listenclosure all ENCLR_NAME ENCLR_TYPE ENCLR_SNO STATUS ARRAY_TYPE LUN_COUNT ======================================================================================= disk Disk DISKS CONNECTED Disk 4 3pardata0 3PARDATA 34514 CONNECTED A/A 35 |
# vxdmpadm listenclosure 3pardata0 ENCLR_NAME ENCLR_TYPE ENCLR_SNO STATUS ARRAY_TYPE LUN_COUNT =================================================================================== 3pardata0 3PARDATA 86D2 CONNECTED A/A 33 |
# vxdmpadm getdmpnode nodename=c6t60002AC00000000000000237000086D2d0 NAME STATE ENCLR-TYPE PATHS ENBL DSBL ENCLR-NAME ============================================================================== 3pardata0_0 ENABLED 3PARDATA 1 1 0 3pardata0 |