Updating STEC Firmware
Introduction
The instructions below explain how to upgrade the STEC ZeusRAM firmware.
Procedures
To obtain the latest firmware and utilities register for support with STEC at
http://support.stec-inc.com/wscgi-bin/PRSIL.sh/tsPortal/registrationTS.html
The firmware image and OpenSolaris installation utility is required to perform the update.
Mirrored Log:
Begin by identifying the STEC devices in your system using the 'format' command from the bash CLI.
#> format
...
76. c8t5000A72B3004E7CEd0 <STEC-ZeusRAM-C016-7.45GB>
/pci@7a,0/pci8086,340a@3/pci1000,3080@0/iport@f0/disk@w5000a72b3004e7ce,0
77. c8t5000A72B3004E7D4d0 <STEC-ZeusRAM-C016-7.45GB>
/pci@7a,0/pci8086,340a@3/pci1000,3080@0/iport@f0/disk@w5000a72b3004e7d4,0
?Use NMC to determine whether the devices are part of a pool.
#> nmc
#/> show lun c8t5000A72B3004E7CEd0
LUN ID Device Type Size Volume Mounted Attach GUID
c8t5*7CEd0 sd85 disk 8GB perflab-pool-01 no mpt_sas 5000a7203004e7ce
#/> show lun c8t5000A72B3004E7D4d0
LUN ID Device Type Size Volume Mounted Attach GUID
c8t5*7D4d0 sd83 disk 8GB perflab-pool-01 no mpt_sas 5000a7203004e7d4
In this case both devices are part of volume 'perflab-pool-01'. Use the following NMC command view the pool configuration.
#/> show volume perflab-pool-01 status
? logs
mirror-36 ONLINE 0 0 0
c8t5000A72B3004E7CEd0 ONLINE 0 0 0
c8t5000A72B3004E7D4d0 ONLINE 0 0 0
...
The STEC devices are configured as a mirrored vdev that is functioning as the log or write-cache. If a mirrored vdev is being
used for the log the devices can be safely removed ONE AT A TIME to perform the firmware upgrade.
NOTE: If you're log is not mirrored see 'Non-Mirrored Log'
WARNING: Once the mirror has been broken the system is exposed to data loss in certain corner cases, i.e. the remaining log
device fails and their is a loss of power.
The device can be detached with the detach-lun command in NMC.
#/> setup volume perflab-pool-01 detach-lun
LUN to detach : c8t5000A72B3004E7CEd0
Detach 'c8t5000A72B3004E7CEd0' from volume 'perflab-pool-01'? Yes
Done. Run 'show volume perflab-pool-01 status' to display the volume configuration and status.
Once the device has been detached the firmware upgrade can be initiated. Return to a standard bash shell.
#/> options expert_mode=1
#/> !bash
Once in the bash shell the sdmcmdsol can be used to determine the device reference for the detached STEC device.
#> sdmcmdsol ScanLocal
Results for ScanLocal
operationResult = Success
devices.count = 109
devices[0] = zeusram:Drivec0t5000A720300762D0d0p0
devices[1] = zeusram:Drivec0t5000A7203007C443d0p0
devices[2] = zeusram:Drivec0t5000A7203007C447d0p0
devices[3] = zeusram:Drivec0t5000A7203007C44Fd0p0
devices[4] = zeusram:Drivec0t5000A7203007C454d0p0
devices[5] = zeusram:Drivec0t5000A7203007C45Bd0p0
devices[6] = gen4sas:Drivec0t5000A7203008A6ACd0p0
devices[7] = gen4sas:Drivec0t5000A7203008A6ADd0p0
devices[8] = gen4sas:Drivec0t5000A7203008A6AEd0p0
devices[9] = gen4sas:Drivec0t5000A7203008A6AFd0p0
devices[10] = gen4sas:Drivec0t5000A7203008A6B0d0p0
devices[11] = gen4sas:Drivec0t5000A7203008A6B2d0p0
devices[12] = other:Drivec0t5000C5005F972707d0p0
....
devices[76] = gen3sas:Drivec8t5000A72B3004E7CEd0p0
...
Execute the following command to perform the upgrade.
#> sdmcmdsol FirmwareUpgrade target=gen3sas:Drivec8t5000A72B3004E7CEd0p0 firmwareImage=ZRAM-C023
Results for FirmwareUpgrade
operationResult = Success
target = zeusram:Drivec8t5000A72B3004E7CEd0p0
Once the update has completed the device should be attached back to the volume. From NMC execute the following command.
#> nmc
#/> setup volume perflab-pool-01 attach-lun
Existing LUN : c8t5000A72B3004E7D4d0
New LUN to attach : c8t5000A72B3004E7CEd0
Attach 'c8t5000A72B3004E7CEd0' to form a mirror configuration (or be added into existing mirror, if it exists)
alongside 'c8t5000A72B3004E7D4d0' in the volume 'perflab-pool-01'? Yes
The operation will take some time. Run 'show volume perflab-pool-01 status' to see the in-progress status.
At this point the log mirror will automatically begin to resilver. The status of the resilver process can be viewed with the
'show volume perflab-pool-01 status'. Once the resilver has completed the update process should be repeated for the remaining
drive in the mirror.
Non-Mirrored Log:
The procedures for updating the firmware when the log device is not mirrored differ from the scenario where a mirror is used.
During the upgrade process the system is exposed to data loss so the procedures should be executed in a maintenance window.
Use the 'format' command to identify the STEC device.
#> format
...
76. c8t5000A72B3004E7CEd0 <STEC-ZeusRAM-C016-7.45GB>
/pci@7a,0/pci8086,340a@3/pci1000,3080@0/iport@f0/disk@w5000a72b3004e7ce,0
?
Use NMC to determine whether the devices are part of a pool.
#> nmc
#/> show lun c8t5000A72B3004E7CEd0
LUN ID Device Type Size Volume Mounted Attach GUID
c8t5*7CEd0 sd85 disk 8GB perflab-pool-01 no mpt_sas 5000a7203004e7ce
In this case the device is part of volume 'perflab-pool-01'. Use the following NMC command view the pool configuration.
#/> show volume perflab-pool-01 status
? logs
c8t5000A72B3004E7CEd0 ONLINE 0 0 0
?
The STEC device is configured as a non-mirrored lun that is functioning as the log or write-cache. The lun must be
removed from the volume prior to performing the device upgrade.
WARNING: Once the lun has been removed the system is exposed to data loss. It is recommended the following procedures
are executed during the next scheduled maintenance window.
The device can be removed with the remove-lun command in NMC.
#/> setup volume perflab-pool-01 remove-lun
LUN to remove : c8t5000A72B3004E7CEd0
Remove 'c8t5000A72B3004E7CEd0' from volume 'perflab-pool-01'? Yes
Done. Run 'show volume perflab-pool-01 status' to display the volume configuration and status.
Once the device has been detached the firmware upgrade can be initiated. Return to a standard bash shell.
#/> options expert_mode=1
#/> !bash
Once in the bash shell the sdmcmdsol can be used to determine the device reference for the detached STEC device.
#> sdmcmdsol ScanLocal
? devices[76] = gen3sas:Drivec8t5000A72B3004E7CEd0p0
...
Execute the following command to perform the upgrade.
#> sdmcmdsol FirmwareUpgrade target=gen3sas:Drivec8t5000A72B3004E7CEd0p0 firmwareImage=ZRAM-C023
Once the update has completed the device should be added back to the volume. From NMC execute the following command.
#> nmc
#/> setup volume perflab-pool-01 grow
Introduction
The instructions below explain how to upgrade the STEC ZeusRAM firmware.
Procedures
To obtain the latest firmware and utilities register for support with STEC at
http://support.stec-inc.com/wscgi-bin/PRSIL.sh/tsPortal/registrationTS.html
The firmware image and OpenSolaris installation utility is required to perform the update.
Mirrored Log:
Begin by identifying the STEC devices in your system using the 'format' command from the bash CLI.
#> format
...
76. c8t5000A72B3004E7CEd0 <STEC-ZeusRAM-C016-7.45GB>
/pci@7a,0/pci8086,340a@3/pci1000,3080@0/iport@f0/disk@w5000a72b3004e7ce,0
77. c8t5000A72B3004E7D4d0 <STEC-ZeusRAM-C016-7.45GB>
/pci@7a,0/pci8086,340a@3/pci1000,3080@0/iport@f0/disk@w5000a72b3004e7d4,0
?Use NMC to determine whether the devices are part of a pool.
#> nmc
#/> show lun c8t5000A72B3004E7CEd0
LUN ID Device Type Size Volume Mounted Attach GUID
c8t5*7CEd0 sd85 disk 8GB perflab-pool-01 no mpt_sas 5000a7203004e7ce
#/> show lun c8t5000A72B3004E7D4d0
LUN ID Device Type Size Volume Mounted Attach GUID
c8t5*7D4d0 sd83 disk 8GB perflab-pool-01 no mpt_sas 5000a7203004e7d4
In this case both devices are part of volume 'perflab-pool-01'. Use the following NMC command view the pool configuration.
#/> show volume perflab-pool-01 status
? logs
mirror-36 ONLINE 0 0 0
c8t5000A72B3004E7CEd0 ONLINE 0 0 0
c8t5000A72B3004E7D4d0 ONLINE 0 0 0
...
The STEC devices are configured as a mirrored vdev that is functioning as the log or write-cache. If a mirrored vdev is being
used for the log the devices can be safely removed ONE AT A TIME to perform the firmware upgrade.
NOTE: If you're log is not mirrored see 'Non-Mirrored Log'
WARNING: Once the mirror has been broken the system is exposed to data loss in certain corner cases, i.e. the remaining log
device fails and their is a loss of power.
The device can be detached with the detach-lun command in NMC.
#/> setup volume perflab-pool-01 detach-lun
LUN to detach : c8t5000A72B3004E7CEd0
Detach 'c8t5000A72B3004E7CEd0' from volume 'perflab-pool-01'? Yes
Done. Run 'show volume perflab-pool-01 status' to display the volume configuration and status.
Once the device has been detached the firmware upgrade can be initiated. Return to a standard bash shell.
#/> options expert_mode=1
#/> !bash
Once in the bash shell the sdmcmdsol can be used to determine the device reference for the detached STEC device.
#> sdmcmdsol ScanLocal
Results for ScanLocal
operationResult = Success
devices.count = 109
devices[0] = zeusram:Drivec0t5000A720300762D0d0p0
devices[1] = zeusram:Drivec0t5000A7203007C443d0p0
devices[2] = zeusram:Drivec0t5000A7203007C447d0p0
devices[3] = zeusram:Drivec0t5000A7203007C44Fd0p0
devices[4] = zeusram:Drivec0t5000A7203007C454d0p0
devices[5] = zeusram:Drivec0t5000A7203007C45Bd0p0
devices[6] = gen4sas:Drivec0t5000A7203008A6ACd0p0
devices[7] = gen4sas:Drivec0t5000A7203008A6ADd0p0
devices[8] = gen4sas:Drivec0t5000A7203008A6AEd0p0
devices[9] = gen4sas:Drivec0t5000A7203008A6AFd0p0
devices[10] = gen4sas:Drivec0t5000A7203008A6B0d0p0
devices[11] = gen4sas:Drivec0t5000A7203008A6B2d0p0
devices[12] = other:Drivec0t5000C5005F972707d0p0
....
devices[76] = gen3sas:Drivec8t5000A72B3004E7CEd0p0
...
Execute the following command to perform the upgrade.
#> sdmcmdsol FirmwareUpgrade target=gen3sas:Drivec8t5000A72B3004E7CEd0p0 firmwareImage=ZRAM-C023
Results for FirmwareUpgrade
operationResult = Success
target = zeusram:Drivec8t5000A72B3004E7CEd0p0
Once the update has completed the device should be attached back to the volume. From NMC execute the following command.
#> nmc
#/> setup volume perflab-pool-01 attach-lun
Existing LUN : c8t5000A72B3004E7D4d0
New LUN to attach : c8t5000A72B3004E7CEd0
Attach 'c8t5000A72B3004E7CEd0' to form a mirror configuration (or be added into existing mirror, if it exists)
alongside 'c8t5000A72B3004E7D4d0' in the volume 'perflab-pool-01'? Yes
The operation will take some time. Run 'show volume perflab-pool-01 status' to see the in-progress status.
At this point the log mirror will automatically begin to resilver. The status of the resilver process can be viewed with the
'show volume perflab-pool-01 status'. Once the resilver has completed the update process should be repeated for the remaining
drive in the mirror.
Non-Mirrored Log:
The procedures for updating the firmware when the log device is not mirrored differ from the scenario where a mirror is used.
During the upgrade process the system is exposed to data loss so the procedures should be executed in a maintenance window.
Use the 'format' command to identify the STEC device.
#> format
...
76. c8t5000A72B3004E7CEd0 <STEC-ZeusRAM-C016-7.45GB>
/pci@7a,0/pci8086,340a@3/pci1000,3080@0/iport@f0/disk@w5000a72b3004e7ce,0
?
Use NMC to determine whether the devices are part of a pool.
#> nmc
#/> show lun c8t5000A72B3004E7CEd0
LUN ID Device Type Size Volume Mounted Attach GUID
c8t5*7CEd0 sd85 disk 8GB perflab-pool-01 no mpt_sas 5000a7203004e7ce
In this case the device is part of volume 'perflab-pool-01'. Use the following NMC command view the pool configuration.
#/> show volume perflab-pool-01 status
? logs
c8t5000A72B3004E7CEd0 ONLINE 0 0 0
?
The STEC device is configured as a non-mirrored lun that is functioning as the log or write-cache. The lun must be
removed from the volume prior to performing the device upgrade.
WARNING: Once the lun has been removed the system is exposed to data loss. It is recommended the following procedures
are executed during the next scheduled maintenance window.
The device can be removed with the remove-lun command in NMC.
#/> setup volume perflab-pool-01 remove-lun
LUN to remove : c8t5000A72B3004E7CEd0
Remove 'c8t5000A72B3004E7CEd0' from volume 'perflab-pool-01'? Yes
Done. Run 'show volume perflab-pool-01 status' to display the volume configuration and status.
Once the device has been detached the firmware upgrade can be initiated. Return to a standard bash shell.
#/> options expert_mode=1
#/> !bash
Once in the bash shell the sdmcmdsol can be used to determine the device reference for the detached STEC device.
#> sdmcmdsol ScanLocal
? devices[76] = gen3sas:Drivec8t5000A72B3004E7CEd0p0
...
Execute the following command to perform the upgrade.
#> sdmcmdsol FirmwareUpgrade target=gen3sas:Drivec8t5000A72B3004E7CEd0p0 firmwareImage=ZRAM-C023
Once the update has completed the device should be added back to the volume. From NMC execute the following command.
#> nmc
#/> setup volume perflab-pool-01 grow