User Tools

Site Tools


storage:v7k_firmwaredisk

Upgrade drive firmware on V3700, V5000, V7000, Flash9000

The drive upgrade procedure is currently available only by using the CLI.

Copy the firmware on V3700 on local

Download the firmware from the IBM Fix Central site: www-933.ibm.com/support/fixcentral/ Copy the file to the V3700, or V7000

Using scp, copy the firmware upgrade file and the Software Upgrade Test Utility package to the /home/admin/upgrade directory by using the management IP address.

root@nim:~/v3700/firmware# scp IBM2072_DRIVE_20121210.bin superuser@v3700-cl-bcp:/home/admin/upgrade
superuser@v3700-prod's password:
IBM2072_DRIVE_20121210.bin

Or pscp

C:\Users\Administrator\Downloads>pscp  v7000\IBM2076_DRIVE_20170509 superuser@v3700-cl-bcp:/home/admin/upgrade
superuser@v3700-cl-bcp's password:
IBM2076_DRIVE_20170509    | 90335 kB | 22583.9 kB/s | ETA: 00:00:00 | 100%

For new versions

IBM_FlashSystem:f7krcs1:superuser>svcupgradetest -w  IBM_FlashSystem7x00_and_StorwizeV7000_8.5.0.0_AND_LATER_ALL_DRIVES_230925
rbash: svcupgradetest: command not found

IBM_FlashSystem:f7krcs1:superuser>svctask applysoftware -file IBM_INSTALL_FROM_8.5_AND_LATER_upgradetest_41.1
CMMVC9001I The package installed successfully.

IBM_FlashSystem:f7krcs1:superuser>svcupgradetest -w  IBM_FlashSystem7x00_and_StorwizeV7000_8.5.0.0_AND_LATER_ALL_DRIVES_230925
svcupgradetest version 41.1

Please wait, the test may take several minutes to complete.

Build version 231005_1440

Results of running svcupgradetest:
==================================

All drives have passed all the required pre-firmware upgrade checks.
Proceed with drive firmware upgrade shortly.

IBM_FlashSystem:f7krcs1:superuser>applydrivesoftware -file IBM_FlashSystem7x00_and_StorwizeV7000_8.5.0.0_AND_LATER_ALL_DRIVES_230925 -all

IBM_FlashSystem:f7krcs1:superuser>lsdriveupgradeprogress
id status    estimated_completion_time
0  upgrading 231011142128
1  scheduled
2  scheduled
3  scheduled
4  scheduled
5  scheduled
6  scheduled
7  scheduled
8  scheduled
9  scheduled
10 scheduled
11 scheduled
12 scheduled
13 scheduled
14 scheduled
15 scheduled

Check for firmware on V3700

Run the following command for the drive that you are upgrading.

lsdependentvdisks -drive drive_id

IBM_2072:v3700-prod:superuser>for i in {0..23}
do
lsdependentvdisks -drive $i
done

If any volumes are returned, continuing with this procedure takes the volumes offline. To avoid losing access to data, resolve any redundancy errors to remove this problem before you continue with the upgrade procedure. Download the firmware

Apply the firmware

v7.4 and later allows to upgrade drives using the GUI:

Pools -> Internal Storage panel in the GUI and select Actions -> Upgrade All 

Using command line:

Run the applydrivesoftware command. You must specify the firmware upgrade file, the firmware type, and the drive ID:

applydrivesoftware -file name -type firmware -drive drive_id (or -all)

To apply the upgrade even if it causes one or more volumes to go offline, specify the -force option.

Attention: Do not use the -type fpga option, which upgrades Field Programmable Gate Array (FPGA) firmware, unless directed to do so by an IBM service representative.

IBM_2072:v3700-bcp:superuser>applydrivesoftware -file /home/admin/upgrade/IBM2072_DRIVE_20121210 -type firmware -all

Check the upgrade progress

IBM_Storwize:v3700-cl-bcp1:admin>lsdriveupgradeprogress
id status    estimated_completion_time
3  completed 170619100341
7  scheduled 170619100847

You can also specify drives ID (maximum 120 drives per command)

  Ex:  svctask applydrivesoftware -drive 0:1:2:3:4:5:6:7:8:9:10:11:12  -file /home/admin/upgrade/IBM2076_DRIVE_20170321-4849214870136115798 -type firmware

And can be done with a loop:

IBM_2072:v3700:superuser>for i in {1..23}
do
applydrivesoftware -file IBM2072_DRIVE_20121210.bin -type firmware -drive $i
done

Or

IBM_2072:v3700:superuser> svcinfo lsdrive -nohdr |while read did name IO_group_id;do echo "Updating drive "$did;svctask applydrivesoftware -file IBM2076_DRIVE_20110928 -type firmware -drive $did;sleep 10s;done

For NVMe drives and FCM

For some kind of NVMe disks, you have to upgrade them sequentialy one by one ! Using graphical interface, or command line (easier !)

So a new tool appears to achieve this task utilitydriveupgrade , you can choose ALL

IBM_Storwize:V7K-gen3:superuser> utilitydriveupgrade -drivemodel ALL -file IBM2076_DRIVE_20110928
IBM_Storwize:V7K-gen3:superuser> utilitydriveupgrade -drive 8,9,10,11 -filename IBM_StorwizeV7000_NVME_DRIVE_200116
Upgrading drive id 11, ( 1 / 4 )
Waiting for array to synchronize.
Upgrading drive id 10, ( 2 / 4 )
...

Check firmware level on all disks

Check the status of all disks

IBM_2072:v3700:superuser> svcinfo lsdrive -nohdr |while read did error use;do svcinfo lsdrive $did |while read id value;do if [[ $id == "firmware_level" ]];then echo $did"   "$value;fi;done;done

0   291E
1   291E
2   B546

This should be done for all the drives.

ERRORS

Jobs are still pending during days when using command lsdriveupgradeprogress

Try to apply the firmware on a not existing disk

IBM_Storwize:V7K:superuser >applydrivesoftware -drive 999  -file /home/admin/upgrade/IBM_FlashSystem7x00_and_StorwizeV7000_SAS_DRIVE_201027 -type firmware
CMMVC5804E The action failed because an object that was specified in the command does not exist.

IBM_Storwize:V7K:superuser>lsdriveupgradeprogress
IBM_Storwize:V7K:superuser>

All pending jobs have deseappear !

storage/v7k_firmwaredisk.txt · Last modified: 2024/09/10 17:12 by manu