Sun Microsystems, Inc.  Oracle System Handbook - ISO 7.0 May 2018 Internal/Partner Edition
   Home | Current Systems | Former STK Products | EOL Systems | Components | General Info | Search | Feedback

Asset ID: 1-71-1021695.1
Update Date:2018-03-29
Keywords:

Solution Type  Technical Instruction Sure

Solution  1021695.1 :   How to Reset the Cache Backup Battery Age for Sun Storage 2500, 2500-M2, and 6000 Arrays  


Related Items
  • Sun Storage 6580 Array
  •  
  • Sun Storage 6180 Array
  •  
  • Sun Storage Common Array Manager (CAM)
  •  
  • Sun Storage 2510 Array
  •  
  • Sun Storage 6780 Array
  •  
  • Sun Storage 2540 Array
  •  
  • Sun Storage 2540-M2 Array
  •  
  • Sun Storage 6140 Array
  •  
  • Sun Storage 2530-M2 Array
  •  
  • Sun Storage Flexline 380 Array
  •  
  • Sun Storage 2530 Array
  •  
  • Sun Storage 6540 Array
  •  
  • SANtricity Storage Manager
  •  
  • Sun Storage 6130 Array
  •  
Related Categories
  • PLA-Support>Sun Systems>DISK>Arrays>SN-DK: 6130
  •  

PreviouslyPublishedAs
273810


Applies to:

Sun Storage 2530-M2 Array - Version Not Applicable and later
Sun Storage 6540 Array - Version Not Applicable and later
Sun Storage 2510 Array - Version Not Applicable and later
Sun Storage 6780 Array - Version Not Applicable and later
Sun Storage 6130 Array - Version Not Applicable and later
All Platforms

Goal

The purpose of this document is to describe how to reset the cache battery age for a specified Sun Storage Array.

Solution

Follow the steps below based on whether you are using the SANtricity GUI, CAM BUI (Browser User Interface), or trying to get array data collected from the command line of either application.

Using the CAM BUI

    1.  Open a browser the CAM host:  https://(cam_server_name):6789
    2.  Expand "Storage Systems" Menu
    3.  Expand your array name menu
    4.  Click on the Service Advisor link at the top.
    5.  Expand the Backup Battery Pack Removal/Replacement menu.
    6.  Click on the Reset the battery age link.
    7.  Click the Reset button.

Using the CAM service CLI

Solaris:  /opt/SUNWsefms/bin
Linux:  /opt/sun/cam/private/fms/bin
Windows: c:\program files\Sun\Common Array Manager\Component\fms\bin

 

service -d <arrayname> -c reset -t tXbatY

Example:


service -d myarray -c reset -t t85bat1   /*** will reset the battery age for the A controller in tray 85  ***/
service -d myarray -c reset -t t85bat2   /*** will reset the battery age for the B controller in tray 85 ***/

 

Using the SANtricity GUI 10.xx and higher

    1.  Start SANtricity and manage the array.
    2.  Click on the Storage Array pull down menu.
    3.  Select Change and then Battery settings...
    4.  Select the correct battery and then press the Reset Age button.

Using the SANtricity GUI 9.xx and lower

    1.  Start SANtricity and manage the array.
    2.  Click on the Fan/Temp/Battery/View icon next to the controllers.
    3.  Select the Battery icon in the left side window.
    4.  Click the Reset button.

Using the SANtricity SMcli

SMcli -n -c reset storageArray batteryInstallDate [controller=(a | b)]

 

Steps to follow if the Reset fails

1.  Did the reset fail with an error?

If the reset request fails with an error, for example "An error occurred during the operation to reset the battery", proceed to step2.
If the reset request appeared to succeed, but did not clear the failed/expired/nearing expiration alarm, make sure the array and management station have the correct date and time stamps. Use items 5 and 6 of <Document 1021054.1> Troubleshooting Sun Storage Array SMART Battery Faults to repair. Otherwise  proceed to Step 3.

2.  Verify Communication to both controllers

Reference <Document: 1008327.1> How to validate Sun Storage 6000, 2500 and Flexline Array Controller Out of Band Communication
Reference <Document: 1021058.1> Validating Sun StorageTek[TM] 2500 and 6000 Array Controller In band Proxy Agent Communication

You must have communication to both controllers to properly reset the battery age.  The exception would be a 2500 array with only a single controller.  If you cannot verify communication to both controllers, contact Oracle for further support.

3.  Use the matrix below to see if you are vulnerable to known firmware issues. 

Reference <Document: 1021067.1> Verify Sun Storage[TM] Array Firmware via the User Interface

Some array firmware have a bug which prevents the reset of the battery timer.  Use the table below to determine your next action.

ProductFirmwareAction
  • Sun StorageTek 2510
  • Sun StorageTek 2530
  • Sun StorageTek 2540
  • 6.17.xx.xx
  • 6.70.xx.xx
  • 7.35.67.10 or later
Contact Oracle for further support, you are not impacted by these bugs
  • Sun StorageTek 2510
  • Sun StorageTek 2530
  • Sun StorageTek 2540
  • less than 7.35.67.10
Continue to Step 4
  • Sun StorageTek 2530-M2
  • Sun StorageTek 2540-M2
Any Firmware Contact Oracle for further support, you are not impacted by these bugs
  • Sun StorageTek 6140
  • Sun StorageTek 6540
  • StorageTek Flexline 380
  • 6.15.xx.xx
  • 6.16.xx.xx
  • 6.19.xx.xx
  • 6.60.xx.xx
  • 7.60.56.10 or later
Contact Oracle for further support, you are not impacted by these bugs
  • Sun StorageTek 6140
  • Sun StorageTek 6540
  • StorageTek Flexline 380
  • Less than 07.60.56.10
Continue to Step 4
  • Sun Storage 6180
  • Sun Storage 6580
  • Sun Storage 6780
  • Less than 07.77.13.11
Continue to Step 4
  • Sun Storage 6180
  • Sun Storage 6580
  • Sun Storage 6780
  • 7.77.13.11 or later
Contact Oracle for further support, you are not impacted by these bugs

 

4.  Perform the following workaround.

CAM BUI
  1. Log into the CAM BUI and select the "Administration Page".
  2. Scroll down to the bottom of the page and set the date and time field of the Storage Array +48 hours from the current date and time.
  3. Open the Service advisor (at the top right of the CAM BUI). Select "Battery Removal/Replacement", select a controller and then directly click on the link to "reset the Battery age" (pretty close to the bottom of the page).
  4. Do this for the A and B controller.
  5. Once the age is reset you should change the date of the Storage Array back to the old date and time using the Administration page by using the pull down menu or just click the "synchronize with server" button so sync the time with the CAM host.
CAM SSCS
Solaris: /opt/SUNWstkcam/bin/ 
Linux: /opt/sun/cam/bin/
Windows: C:\Program Files\Sun\Common Array Manager\bin
  1. Log to the CAM server as a user with a storage role.
  2. List the registered arrays and use the name of the affected array as "<arrayname>" in commands below: sscs list array
  3. List the array date: sscs list -a <arrayname> date
  4. Change the date and time of the Storage Array to two days (+48 hours) from the current date. sscs modify -a <arrayname> date mmddHHMM
  5. Verify the array date: sscs list -a <arrayname> date
  6. Reset the battery age: service -d <arrayname> -c reset -t t85bat1 service -d <arrayname> -c reset -t t85bat2
  7. Synchronize the array clock with the CAM server: sscs modify -a <arrayname> -s date
  8. Confirm that the array clock is synchronized with the CAM server: sscs list -a <arrayname> date

 

Example with Storage Array name "s-st6540-tvp540-a" and date of August 2nd 9am.

# ./sscs list array
Array: s-st6540-tvp540-a
# ./sscs list -a s-st6540-tvp540-a date
Date: Fri Jul 29 09:57:22 2011
# ./sscs modify -a s-st6540-tvp540-a date 08020900
# ./sscs list -a s-st6540-tvp540-a date
Date: Tue Aug 2 09:00:51 2011
# ./service -d s-st6540-tvp540-a -c reset -t t85bat1
Executing the reset command on s-st6540-tvp540-a
Completion Status: Success
# ./service -d s-st6540-tvp540-a -c reset -t t85bat2
Executing the reset command on s-st6540-tvp540-a
Completion Status: Success
# ./sscs modify -a s-st6540-tvp540-a -s date
# ./sscs list -a s-st6540-tvp540-a date
Date: Fri Jul 29 09:58:44 2011
Santricity GUI
Only use this workaround on a management station where no date and time critical software is installed.
  1. Close Santricity if it is running.
  2. Set the management station where Santricity is installed to the current date and time +48 hours.
  3. Open Santricity and synchronize controller clocks (Storage Array -> Synchronize Controller Clocks...).
  4. Close Santricity and change the management station back to the current date and time.
  5. Open Santricity and reset the battery age of both batteries (Storage Array -> Change -> Battery Settings)
  6. synchronize the controller clocks (Storage Array -> Synchronize Controller Clocks...).
Do you still have questions?  You can use My Oracle Support Communities.  Communities put you in touch with industry professionals like yourself.  They are monitored by Oracle support engineers, so you can expect reliable and correct answers.  Ask questions and see what others are asking about in the Disk Storage 2000, 3000, 6000 RAID Arrays & JBODs Community.

 

SHELL

IMPORTANT: The instructions provided in this document have to be used by an Oracle support engineer who received the required NetApp advanced training to access the shell. If you are not one of these engineers, you are not authorized to use these commands without guidance from one of these engineers. In that case, please open a collaboration SR with a TSC L2 engineer.

The Real Time Clock on the array may also cause premature battery expirations and faults. Use <Document 1581167.1> How to Check and Repair the Real-Time Clock (RTC) of the Sun Storage 2500, 2500-M2, and 6000 Arrays to verify this internal clock is correct. The RTC may be incorrect if

  • battery ages reflect unrealistic date and time stamps, and, no rogue NTP servers were identified in the majorEventLog
  • you successfully reset the battery age only to have it immediately fail again with an unrealistic age.

 

 

The procedure can be run on the A or B controller (does not matter) using command line (serial port or telnet session).

The command sequence:
-> bmgrShow 4
-> loadDebug
-> bmgrShowTime 0,-80000
-> bmgrSetInstallation <cru>,<return_value_from_previous_command>
-> unld "Debug"

The <cru> value is 1-relative (!). 1 is battery in controller A, 2 is battery in controller B.  
The command "bmgrShow 4" can be used to check 
the installation time before and after the procedure is run.

Example to reset the battery age on CRU_1 / Battery A on a 6140 :

-----------------------
-> bmgrShow 4
LSILogicBMGR <0004> @ 12/29/2010 02:18:14
DataBase Record     = NoFileSys

Battery [0]
Parent Ctlr      = CTLR_A
Is Local         = true 
Parent CRU       = CRU_1   <=== cru number to be used as <cru> in the "bmgrSetInstallation" command
BID Index        = 0
CapabilityChking = false
Over Temp Count  = 0
Install Time     = 0x4A9C82CF 09/01/2009 02:11:27
Warning Time     = 0x506B9ECF 10/03/2012 02:11:27 (643 days)
Expired Time     = 0x50A2FDCF 11/14/2012 02:11:27 (685 days)

Current Status
     Overall Sts = (0x0001) Okay            
     Common Sts  = (0x0001) Okay
     Working Sts = (0x0001) Okay      
     Config Sts  = (0x0001) Okay      
     Smart Sts   = (0x0000) Uninitialized
     Learn Sts   = (0x0000) Uninitialized
     Bkup Mode   = (0x0001) Enabled   


Battery [1]
Parent Ctlr      = CTLR_B
Is Local         = false
Parent CRU       = CRU_2   <=== cru number to be used as <cru> in the "bmgrSetInstallation" command
BID Index        = 0
CapabilityChking = false
Over Temp Count  = 0
Install Time     = 0x4A9463D8 08/25/2009 22:21:12
Warning Time     = 0x50637FD8 09/26/2012 22:21:12 (637 days)
Expired Time     = 0x509ADED8 11/07/2012 22:21:12 (679 days)

Current Status
     Overall Sts = (0x0001) Okay            
     Common Sts  = (0x0001) Okay
     Working Sts = (0x0001) Okay      
     Config Sts  = (0x0001) Okay      
     Smart Sts   = (0x0000) Uninitialized
     Learn Sts   = (0x0000) Uninitialized
     Bkup Mode   = (0x0001) Enabled   
value = 1 = 0x1
-> loadDebug

-> bmgrShowTime 0,-80000
time = 12/28/2010 04:05:01
value = 1293509101 = 0x4d1961ed 
-> bmgrSetInstallation 1,0x4d1961ed
value = 1 = 0x1

// wait 30 seconds

-> bmgrShow 4
LSILogicBMGR <0004> @ 12/29/2010 02:18:24
DataBase Record     = NoFileSys

Battery [0]
Parent Ctlr      = CTLR_A
Is Local         = true 
Parent CRU       = CRU_1
BID Index        = 0
CapabilityChking = false
Over Temp Count  = 0
Install Time     = 0x4D1961ED 12/28/2010 04:05:01
Warning Time     = 0x52E87DED 01/29/2014 04:05:01 (1127 days)
Expired Time     = 0x531FDCED 03/12/2014 04:05:01 (1169 days)

Current Status
     Overall Sts = (0x0001) Okay            
     Common Sts  = (0x0001) Okay
     Working Sts = (0x0001) Okay      
     Config Sts  = (0x0001) Okay      
     Smart Sts   = (0x0000) Uninitialized
     Learn Sts   = (0x0000) Uninitialized
     Bkup Mode   = (0x0001) Enabled   


Battery [1]
Parent Ctlr      = CTLR_B
Is Local         = false
Parent CRU       = CRU_2
BID Index        = 0
CapabilityChking = false
Over Temp Count  = 0
Install Time     = 0x4A9463D8 08/25/2009 22:21:12
Warning Time     = 0x50637FD8 09/26/2012 22:21:12 (637 days)
Expired Time     = 0x509ADED8 11/07/2012 22:21:12 (679 days)

Current Status
     Overall Sts = (0x0001) Okay            
     Common Sts  = (0x0001) Okay
     Working Sts = (0x0001) Okay      
     Config Sts  = (0x0001) Okay      
     Smart Sts   = (0x0000) Uninitialized
     Learn Sts   = (0x0000) Uninitialized
     Bkup Mode   = (0x0001) Enabled   
value = 1 = 0x1
-> unld "Debug"

value = 0 = 0x0

->

An alternative to bmgrSetInstallation is setBatteryInstallationTime_MT with the same options.

-> loadDebug
-> bmgrShowTime 0,-80000
-> setBatteryInstallationTime_MT <cru>,<return_value_from_previous_command>
->unld "Debug"

References

<NOTE:1021058.1> - Validating Sun StorageTek[TM] 2500 and 6000 Array Controller In Band Proxy Agent Communication
<NOTE:1008327.1> - How to validate Sun Storage 6000, 2500 and Flexline Array Controller Out of Band Communication

Attachments
This solution has no attachment
  Copyright © 2018 Oracle, Inc.  All rights reserved.
 Feedback