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-1432573.1
Update Date:2012-06-11
Keywords:

Solution Type  Problem Resolution Sure

Solution  1432573.1 :   Unable to Write to LUNs on Shared External Sun Storage 2500 and 6000 Arrays  


Related Items
  • Sun Storage 6180 Array
  •  
  • Sun Storage 6580 Array
  •  
  • Sun Storage 2540-M2 Array
  •  
  • Sun Storage 6780 Array
  •  
  • Sun Storage 2540 Array
  •  
  • Sun Storage 6140 Array
  •  
  • Sun Storage Flexline 380 Array
  •  
  • Sun Storage 2530 Array
  •  
  • Sun Storage 2530-M2 Array
  •  
  • Sun Storage 6540 Array
  •  
Related Categories
  • PLA-Support>Sun Systems>DISK>Arrays>SN-DK: 6130
  •  
  • .Old GCS Categories>Sun Microsystems>Storage - Disk>Modular Disk - 6xxx Arrays
  •  
  • .Old GCS Categories>Sun Microsystems>Storage - Disk>Modular Disk - 2xxx Arrays
  •  




In this Document
Symptoms
Cause
Solution
References


Created from <SR 3-5392044501>

Applies to:

Sun Storage 6180 Array - Version Not Applicable and later
Sun Storage 6140 Array - Version Not Applicable and later
Sun Storage 6540 Array - Version Not Applicable and later
Sun Storage Flexline 380 Array - Version Not Applicable and later
Sun Storage 2540-M2 Array - Version Not Applicable and later
Information in this document applies to any platform.

Symptoms

LUNs from an external storage array can no longer be written to or read from.

For example:

    • A label cannot be written to the LUN:

      Warning: error writing EFI.
      Label failed.
       
    • Writing to a LUN using 'dd' fails with an I/O error:

      # dd if=/dev/zero of=/dev/rdsk/c5t600A0B80006E5B1C0000541A4F6284EFd0s0 count=1
      write: I/O error
      1+0 records in
      1+0 records out


Possibly the only SCSI command that works is a SCSI inquiry which allows the Solaris host to display the disk type and label in format. If even the inquiry command is prevented from completing successfully, the format output looks like this:

2. c5t600A0B80006E5B1C0000541A4F6284EFd0 <drive not available: reserved>
   /scsi_vhci/ssd@g600a0b80006e5b1c0000541a4f6284ef

On a Windows host, in Computer Management > Disk Management, the disk may show as "Unknown/Unreadable".


NOTE: Freshly created LUNs do not have this issue.

 

Cause

Another host attached to the same storage array has wrongfully set SCSI reservations on these LUNs.

SCSI reservations are used to restrict write-access to disk-based resources when multiple hosts have access to the same shared storage. They are typically used in a cluster environment. During some operations a cluster host may set SCSI reservations on any storage resource it can access, including some belonging to other hosts if no logical access restrictions (LUN masking/mapping) exist.

LUNs created after the cluster last set reservations may not yet have offending SCSI reservations on them. However, the next time the cluster sets reservations, it would grab these LUNs as well.

To confirm that SCSI reservations made by other clients of the storage array are the cause for the loss of access to the LUNs:

  • From the array:
  1. Collect supportData from the array, refer to <Document 1002514.1> Collecting Sun Storage Common Array Manager Array Support Data or <Document 1014074.1> Collecting Support Data for Arrays Using Sun StorageTek SANtricity Storage Manager.
  2. Expand the zipped supportData output file.
  3. In the supportData file persistentReservations.txt check the affected volumes for SCSI-3 reservations by offending hosts.

    NOTE: SCSI-2 reservations cannot be determined from the supportData.
  • From the cluster:
  1. Refer to <Document 1008156.1> for instructions on identifying SCSI reservations on cluster systems.

 

 

Solution

To restore LUN access

To allow the rightful owning host to recover access to its LUNs, the SCSI reservations on these LUNs must be removed.
Using the host-based cluster software is the best way to clear SCSI reservations: see <Document 1011961.1> Solaris Cluster: Removing SCSI Reservations.

SCSI-3 reservations can also be cleared by running the following Sun Storage Common Array Manager (CAM) command on each affected volume.

# service -d <array name> -c reset -q persistentReservation -t <volume>


The service command is located in:

Windows c:\Program Files\Sun\Common Array Manager\Component\fms\bin\service.bat
Solaris /opt/SUNWsefms/bin/service
Linux /opt/sun/cam/private/fms/bin/service

 

Note: Removing the SCSI reservations will likely cause the cluster to panic with a reservation conflict. Therefore it is recommended to shutdown the cluster during this procedure.

 


To avoid this issue

Connecting cluster nodes and other hosts to the same storage without LUN masking is neither supported nor viable. When joining the cluster (and on other occasions), cluster nodes automatically put SCSI reservations on all the storage resources they can access. LUN masking must be configured to prevent cluster nodes from claiming exclusive access to all storage resources.

The configuration of LUN masking/mapping requires Storage Domain licenses, one license for each different host or host group to which a LUN mapping is made. If Storage Domain licenses are not immediately available to implement LUN masking, it will not be possible for the cluster and other hosts to share resources from the same storage array.

References

<NOTE:1014074.1> - Collecting Support Data for Arrays Using Sun StorageTek SANtricity Storage Manager
<NOTE:1002514.1> - Collecting Sun Storage Common Array Manager Array Support Data
<NOTE:1008156.1> - Oracle Solaris Cluster 3.0/3.3: Identifying SCSI Reservations
<NOTE:1011961.1> - Solaris Cluster: Removing SCSI Reservations.

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