Sun Microsystems, Inc.  Sun System Handbook - ISO 4.1 October 2012 Internal/Partner Edition
   Home | Current Systems | Former STK Products | EOL Systems | Components | General Info | Search | Feedback

Asset ID: 1-72-1015755.1
Update Date:2012-03-28
Keywords:

Solution Type  Problem Resolution Sure

Solution  1015755.1 :   VTL - SANtricity/CAM is reporting LUNs not on preferred path  


Related Items
  • Sun StorageTek VTL Prime System
  •  
  • Sun StorageTek VTL Plus Storage Appliance
  •  
  • Sun StorageTek VTL Storage Appliance
  •  
Related Categories
  • PLA-Support>Sun Systems>TAPE>Virtual Tape>SN-TP: VTL
  •  
  • .Old GCS Categories>Sun Microsystems>Storage - Tape>Tape Virtualization
  •  

PreviouslyPublishedAs
224447


Applies to:

Sun StorageTek VTL Prime System - Version: 1.0 - Build 1813 to 1.1 - Build 2076 - Release: 1.0 to 1.0
Sun StorageTek VTL Plus Storage Appliance - Version: 1.0 - Build 1323 to 2.0 - Build 1656   [Release: 1.0 to 2.0]
Sun StorageTek VTL Storage Appliance - Version: 4.0 - Build 1221 to 4.0 - Build 1221   [Release: 4.0 to 4.0]
All Platforms
.
***Checked for relevance on 03-05-2011***

Symptoms

  • AVTs (Automatic Volume Transfer) occurring
  • Message: Volume not on preferred path due to AVT failover
  • LUNs are showing in VTL console on different preferred path than in SANtricity
  • SANtricity is reporting LUNs not on preferred path
  • Message: Automatic volume transfer completed

Changes

N/A

Cause

This is normal path failover processing for VTL when there is a temporary FC path interruption from the VTL server to the VTL backend disk.

Solution


Below describes the steps to take to troubleshoot and resolve "not on preferred path" messages.

First, collect support logs from disk array and have them reviewed for errors (If necessary, open a task with the OS Midrange Disk group)

1. If disk array has errors, correct as recommended by Disk group
    * If only errors are "not on preferred path" messages, redistribute the volumes (in SANtricity, select 'Advanced', 'Recovery', then 'Redistribute Volumes')   

2. If disk array is optimal, perform the following to change the scsi aliasing manually in the VTL GUI, so the proper LUNs are on the HBA's plugged into the controllers:

    A. From VTL Console GUI, expand tree under Physical Resources>Storage Devices>Fibre Channel Devices, right click on a disk/LUN in question, select "Properties", then select I/O Path tab. From this screen, highlight a group and use the arrows on the right side of window to move the path up or down in order (top being preferred path).

    B. Rediscover/rescan the devices (from VTL Console, right click on Physical Resources and select rescan).
Note a reboot will accomplish this as well.




Additional Information

I. The following describes the "I/O Pathing" procedure that is to be done when VTL is first installed.
Change the scsi aliasing manually in the VTL GUI, so the proper LUNS are on the HBA's plugged into the controllers. For example, identify the 2 HBA's from the VTL you have plugged in ports A1 and A2 on controller A of the array. This might be represented as 1:0:0:x and 3:0:0:x (x=the lun number from the disk).
Just move them around (clicking up and down arrows) to make the 'A" volumes attached to the HBA's connected to the A controller. If you have 10 volumes, put 5 on each HBA attached to the A controller. Do the same for the B controller HBA's as well. You will need to reboot the VTL when your done, or rediscover the devices by doing a rescan on the HBA's in the GUI.  Once you have them distributed for both controllers on all 4 HBA's, go into SANtricity and redistribute the volumes to the preferred path. This will clean up the AVT issues you have.

To see how VTL has the paths set, look in ipstor.conf file and search for the SCSIAliasing section.  The first "DeviceAlias adapter=" is the primary or preferred path set in VTL.

            </IPStorPartition>
            <SCSIAddress adapter="5" id="1" lun="0"/>
            <SCSIAliasing>
              <DeviceAlias adapter="5" id="1" lun="0" groupNo="0" controllerNo="0"/>
              <DeviceAlias adapter="1" id="1" lun="0" groupNo="1" controllerNo="0"/>
              <DeviceAlias adapter="4" id="1" lun="0" groupNo="2" controllerNo="1"/>
              <DeviceAlias adapter="0" id="1" lun="0" groupNo="3" controllerNo="1"/>
            </SCSIAliasing>
            <Geometry startingSector="12416" endingSector="2097151"/>
            <InquiryString>0000053245004032STK     FLEXLINE 380    0619</InquiryString>
            <Comments/>
          </PhysicalDev>
          <PhysicalDev name="STK:FLEXLINE 380" type="Direct-Access" owner="denvtl01" guid="0a1e0a39-0000-288b-740c-32c9306149b0" fsid="fa1c0401-838b-27da-fc8d-04a63c56e954" key="f9a1218c-3c22-43cd-8dc9-f25f3042f788" queueDepth="255" connectionType="fc" controllerType="lsi" primaryID="53503634353039313430000000000000" alternateID="53503634383131373237000000000000" lunType="1">
            <IPStorPartition/>
            <SCSIAddress adapter="1" id="1" lun="1"/>
            <SCSIAliasing>
              <DeviceAlias adapter="0" id="1" lun="1" groupNo="2" controllerNo="1"/>
              <DeviceAlias adapter="4" id="1" lun="1" groupNo="3" controllerNo="1"/>
              <DeviceAlias adapter="1" id="1" lun="1" groupNo="0" controllerNo="0"/>
              <DeviceAlias adapter="5" id="1" lun="1" groupNo="1" controllerNo="0"/>

 


Also refer to the "Optimizing VTL Pathing" best practices doc.  Contact VTL support for copy.

II. Alternative method for checking which LUNs are on preferred paths:

It's very simple to determine which LUNs to move in determining how to get all LUNs back on their preferred path.

1. Look at the ipstor.conf file for the xray. Find a LUN section, in this example, we'll start with LUN 0.


<PhysicalDev name="SUN:CSM200_R" type="Direct-Access" owner="VTL0001-node1" guid="ffb0d24b-0cec-459e-b5b7-f8c0054d6e3a" fsid="fa1c0400-0c93-0d69-7284-8df6c2241a1a" key="e381db0e-8a91-4f7c-9b04-0fd79ad2ec5f" queueDepth="255" connectionType="fc" controllerType="lsi" primaryID="53473831353236333434000000000000" alternateID="53473831353235393735000000000000" lunType="1">

<IPStorPartition checksum="692f4be92368ae3d012555f3f9b0e8cf"/>

<SCSIAddress adapter="9" id="0" lun="0"/>

<SCSIAliasing>

<DeviceAlias adapter="9" id="0" lun="0" groupNo="0" controllerNo="0"/>

<DeviceAlias adapter="11" id="1" lun="0" groupNo="1" controllerNo="1"/>

</SCSIAliasing>

<Geometry startingSector="14336" endingSector="20971519"/>

<InquiryString>0000053245007032SUN CSM200_R 0619</InquiryString>

<Comments/>

</PhysicalDev>


2. Note the SCSI alias order, in this case 9:0:0:0 and then 11:0:1:0.

3. Find the Physical adapter section for HBA 9 and HBA 11


<PhysicalAdapter number="9" info="qla2x00fs_4" WWPN="2101001b322c9918" mode="initiator" moduleName="qla2x00fs" maxAliasCount="15" alpa="ef">

<PersistentBinding>

<Binding targetPort="scsi-qla4-tgt-0-di-0-port" targetWWPN="201600a0b8338140"/>

<Binding targetPort="scsi-qla4-tgt-2-di-0-port" targetWWPN="201400a0b8483726"/>

</PersistentBinding>

</PhysicalAdapter>

<PhysicalAdapter number="11" info="qla2x00fs_6" WWPN="2101001b322cf318" mode="initiator" moduleName="qla2x00fs" maxAliasCount="15" alpa="ef">

<PersistentBinding>

<Binding targetPort="scsi-qla6-tgt-1-di-0-port" targetWWPN="201700a0b8338140"/>

<Binding targetPort="scsi-qla6-tgt-2-di-0-port" targetWWPN="201500a0b8483726"/>

</PersistentBinding>

</PhysicalAdapter>


4. Open up the StorageArrayProfile.txt

5. Confirm that the targetWWNs are present in the logs you are looking at. (You can have multiple arrays connected to a single VTL)


Host interface: Fibre

Channel: 1

Current ID: Not applicable/0xFFFFFFFF

Preferred ID: 1/0xE8

NL-Port ID: 0xFFFFFF

Maximum data rate: 4 Gbps

Current data rate: 4 Gbps

Data rate control: Auto

Link status: Up

Topology: Fabric Attach

World-wide port name: 20:16:00:a0:b8:33:81:40

World-wide node name: 20:06:00:a0:b8:33:81:40

Part type: HPFC-5700 revision 5

Host interface: Fibre

Channel: 1

Current ID: Not applicable/0xFFFFFFFF

Preferred ID: 5/0xE0

NL-Port ID: 0xFFFFFF

Maximum data rate: 4 Gbps

Current data rate: 4 Gbps

Data rate control: Auto

Link status: Up

Topology: Fabric Attach

World-wide port name: 20:17:00:a0:b8:33:81:40

World-wide node name: 20:06:00:a0:b8:33:81:40

Part type: HPFC-5700 revision 5


6. Go to the mappings section, and find the LUN in question, in this example, LUN 0.


MAPPINGS (Storage Partitioning - Disabled)-------------------

VOLUME NAME LUN CONTROLLER ACCESSIBLE BY VOLUME STATUS

VTLPlus2_DB1 0 A Default Group Optimal

VTLPlus2_DB2 1 B Default Group Optimal

VTLPlus2_Storage1 2 A Default Group Optimal


7. Note that Lun 0 is called VTLPlus2_DB1

8. Go to the section for this specific LUN:

VOLUME NAME: VTLPlus2_DB1

Volume status: Optimal

Capacity: 10 GB (10.737.418.240 Bytes)
Volume ID: 60:0a:0b:80:00:33:81:50:00:00:04:7c:48:3f:d5:1c
Subsystem ID (SSID): 0
Associated volume group: 1
RAID level: 5

Drive type: Serial ATA (SATA)
Tray loss protection: No

Preferred owner: Controller in slot B
Current owner: Controller in slot A


Segment size: 256 KB
Modification priority: High

Read cache: Enabled
Write cache: Enabled (currently suspended)
Write cache without batteries: Disabled
Write cache with mirroring: Enabled (currently suspended)
Flush write cache after (in seconds): 10.00
Dynamic cache read prefetch: Enabled

Enable background media scan: Enabled
Media scan with redundancy check: Disabled

9. Note the Preferred owner and current owner. In this case, they are swapped.

10. In the VTL Console, right click on the LUN in question, go to Properties, select I/O Patch and select the first alias group and select the down arrow to the right to move it down into it's correct position.

11. Repeat steps 6-10 for all other LUNs on the same HBA + Target port.

12. Repeat steps 1-11 for all other LUNs on other HBAs.


Alternative:

The Xray viewer can often do this for you, depending on what firmware the disk array is running and which software is used to capture the logs.

1. From Xray viewer, load corresponding Xray.

2. Under Physical Devices, select Fibre Channel Devices.

3. Select I/O Pathing tab

4. Click on Load Santricity Disk Profile, select correspoding StorageArrayProfile.txt

5. Repeat step 4 for all other Storage Array Profiles for other arrays.

6. Compare Preferred Controller to Current Controller for each lun.

Tip: Copy and paste the whole table into a spreadsheet for ease in sorting

Notes: There are certain combinations of Array firmware + Software (CAM vs SANtricity) which might or might not work, as the log's syntax can quickly change. The source code for the Xray viewer is open source and can easily be updated.



=================================================
Previously Published As
STKKB74741


Attachments
This solution has no attachment
  Copyright © 2012 Sun Microsystems, Inc.  All rights reserved.
 Feedback