Here is an example shows how to perform firmware upgrade for IBM DS3700, DS3860, DS3500, and DS3200 etc. DS/DCS series storage controller, NARAM, ESM, disk drive Firmware.

To be noted is that make sure your system is problem free before you moving ahead.

1. Download the firmware package

Go to ibm fix center to get latest firmware package and readme.

https://www-933.ibm.com/support/fixcentral/

Note: you need to provide your machine SN to get files downloaded.  In most of cases, you need to click the following packages and download them.

Controller firmware
ESM & HDD firmware
Storage Manager

Other packages like:

Linux RDAC driver, and Remote support manager are options to you when you need.

2. Read the readme and fix list

The most important is to read Readme make sure if there are some restrictions and compatability issues. Best to have a check done by your vendor support.

3. Upgrade Storage Manager

The first thing you wnat to do is to have Storage Manager upgraded. Lower version Storage Manager can't manage the Storage that has higher firmware.

Depends on your the node that runs Storage Manager, follow the readme instruction, perform the package upgrade. For example, on Linux

unzip the package, cd to the unzipped folder,  yum localupdate *.rpm

Note: On linux, there will be a SMmonitor started at background, if you prefer it runs and monitor your storage, make sure to chkcfg it on.

# chkconfig --list SMmonitor
SMmonitor          0:off    1:off    2:on    3:on    4:on    5:on    6:off

Tips, if you want to limit the memory usage by this background process, change the Java memory setting in /etc/init.d/SMmonitor by change

 -Xmx768m -XX:MaxPermSize=128m to  -Xmx128m -XX:MaxPermSize=64m

4. Check system status and clear event log

Make sure the system is in optimal mode, collect support data, and clear event log.

You may ask, why do I need to clear the event log?

The tricky part is that, the process of DS/DCS storage firmware will check event log see if there is a major outstanding issue there, it's a safe process, however, it takes forever if the event log is long.

5. Upgrade Controller firmware

Controller firmware doesn't require dowtime. Can be done in low I/O window one at a time. You need to make sure your multipath drivers are properly set to fail over I/O in case controller is down. Best practice is to be done together with the NVSRAM. Info and instructions in the readme file.

Via Storage Manager, chose 'upgrade' memu, --> controller Firmware --> upgrade

Chose the firmware file(usually <file>.dlp, packed in a zip file)

Best to click NVSRAM together, chose NVSRAM file(usually named as <file>.dlp, packed in the same zip file with controller's).

If you decided transfer the firmware first, then later you can activate via

Via Storage Manager, chose 'upgrade' memu, --> controller Firmware --> activate

It takes about less than 8 minutes / controller.

6. Upgrade NVSRAM Firmware

Best to have it done together with controller firmware, see instructions above

7. Upgrade ESM Firmware

Can be done in low I/O window one at a time. Info and instructions in the readme file.

Via Storage Manager, chose 'upgrade' menu, --> ESM firmware

chose one ESM at a time, chose the file(usually named as <file>.esm)

8. Upgrade disk drive Firmware

Note: disk drive firmware need i/o downtime, make sure there is no i/o during the disk drive firmware upgrade.

The process is similar to controller/esm firmware, you can perform disk drive firmware by single, or same type disk drives in a batch.