Useful Notes For Support during firmware upgrades

Useful notes for Support during firmware upgrades

 

Manually upgrading an NetApp Metadata array:

 

How to manually do an Array upgrade (Metadata that is NetApp OEM'ed) should this not complete, such as when the secondary node upgrades but the primary times out, then a failover is done so that the secondary node becomes primary and the upgrade is started again.  The secondary node will complete the upgrade but doesn't do the Array firmware step.

 

Log onto either MDC and do the following.

- cd /opt/DXi/scripts/

-./UpgradeArrays

 

When the upgrade runs this script it redirects the output to so no STDOUT is seen.  You can tail -f /var/log/DXi/UpgradeArrays.log to see the progress of the array upgrade.  Such as this example.

 

[root@upm440 scripts]# tail -f /var/log/DXi/UpgradeArrays.log
SMagent is running
Performing auto-discovery of array 1
New storage system was discovered at address 127.0.0.1.

Failed to discover array 1
Dec 15 13:46:37: Array list:
sps-qseries   127.0.0.1
M440MD_ARRAY  127.0.0.1

Dec 15 13:46:37: No arrays found on first attempt, sleeping for 30 seconds and then retrying

There is also a function in the UpgradeArrays script FlashNVSRAM() that looks at the /opt/DXi/scripts/LSI-FW for .dlp files to update the NVSRAM.

 

You can monitor the progress of the array upgrade by watching the SMcli spawned processes.

##Command used watch 'ps -ef | grep SMcli'


root     30236     1  0 Dec10 ?        00:00:42 /opt/SMgr/jre/bin/java -classpath /opt/SMgr/client/SMclient.jar -Ddevmgr.datadir=/var/opt/SM -Ds
root     46439  3324  0 13:38 pts/2    00:00:00 watch ps -ef | grep SMcli
root     47545 45255  0 13:39 pts/2    00:00:00 /bin/sh /usr/bin/SMcli -w 60080e50001f9d90000000004f0c5e4b -S -c show storageArray;
root     47574 47545  0 13:39 pts/2    00:00:00 sh /tmp/SMcli.47545
root     47599 46439  0 13:39 pts/2    00:00:00 sh -c ps -ef | grep SMcli
root     47601 47599  0 13:39 pts/2    00:00:00 grep SMcli

 


 

 

 

 Extracting files from .fw images:

 

Sometimes you will need to extract specfic files from the .fw files to troubleshoot.  This can be done by using the cpio command.

 

Extracting files from .fw images, removed STDOUT to make this easier to read.

cpio -idv < /usr/adic/HAM/shared/upload/QTM-DXiSNA-upd-5.3.0.OS6-16202-16195.1of2.fw

cpio -idv < /usr/adic/HAM/shared/upload/QTM-DXiSNA-upd-5.3.0.OS6-16202-16195.2of2.fw

 

Now you can see the files used for the upgrade that aren't local to the machine.

 

[root@upm440 5.3]# ls
base-version_info                                pycairo-1.8.6-py2.7-linux-x86_64.egg                     snfs_client_plus_mover_RedHat60AS_26x86_64.tar.gz
bootstrap-1.1.0-21362135.tar.gz                  QuantumApp-BHM-5.3.0-16202.el6.x86_64.rpm                SNFSClients.tar.gz
checkpoint                                       QuantumApp-DXiSNA-5.3.0-16202.el6.x86_64.rpm             snfs_gateway-agent_RedHat60AS_26x86_64.tar.gz
CommonFunctions.sh                               QuantumApp-G300-5.3.0-16202.el6.x86_64.rpm               start_status.pl
ExtractParts.sh                                  QuantumApp-M220-5.3.0-16202.el6.x86_64.rpm               supervisor-3.0-5.tar.gz
FirmwareBundle-5.2.2-1459.G300R.x86_64.rpm       QuantumBase-5.3.0-16202.el6.x86_64.rpm                   tg3-doc-3.137h-2.rhel6u6.x86_64.rpm
FirmwareBundle-5.2.2-1459.M440.x86_64.rpm        quantum_beanstalkd-1.10.0-2.x86_64.rpm                   ttcp-3.7-1.2.el6.rf.x86_64.rpm
FirmwareBundle-5.2.2-1459.M660R.x86_64.rpm       quantum_carbon-0.9.12-4.x86_64.rpm                       Twisted-14.0.0-py2.7-linux-x86_64.egg
FirmwareBundle-5.2.2-1459.PROF.x86_64.rpm        quantum_django-1.6.5-3.x86_64.rpm                        update_checkpoint.pl
FirmwareBundle-5.2.2-1461.dxSNA.el6.x86_64.rpm   quantum_django-tagging-0.3.2-3.x86_64.rpm                UpgradeBase.sh
FirmwareBundle-5.2.2-1462.G300.x86_64.rpm        quantum_graphite-web-0.9.12-3.x86_64.rpm                 Upgrade.BHM
igb-5.1.2-1.x86_64.rpm                           quantum-nephele-python-1-36.x86_64.rpm                   Upgrade.DXiSNA
kmod-tg3-3.137h-2.rhel6u6.x86_64.rpm             quantum_platform_utils-5.3.0.16188-py2.7.egg             Upgrade.G300
local_repo                                       quantum_psycopg2-2.5.3-3.x86_64.rpm                      Upgrade.G300R
lxml-3.4.4-py2.7-linux-x86_64.egg                quantum_python-2.7.9-2.x86_64.rpm                        Upgrade.M220
MegaCli-8.02.21-1.noarch.rpm                     quantum_python-devel-2.7.9-2.x86_64.rpm                  Upgrade.M660R
meld3-1.0.0-py2.7.egg                            quantum_python-setuptools-17.1.1-3.x86_64.rpm            vc
mod_wsgi-4.4.12-py2.7-linux-x86_64.egg           quantum-snfs-nas-1.2.0-4642.el6.x86_64.rpm               VerifyAPIVersion.sh
mod_wsgi_metrics-1.1.1-py2.7.egg                 quantum-upgrade.service                                  VersionCheck.sh
no_reboot                                        quantum_whisper-0.9.12-4.x86_64.rpm                      version_info.DXiSNA
PART                                             RedHat60AS_26x86_64_5.3.0_60525A.tar.gz                  version_info.G300
pexpect-2.3-py2.7.egg                            requests-2.7.0-py2.7.egg                                 version_info.M220
php-pecl-zmq-1.1.2-3.el6.5.5.quantum.x86_64.rpm  rootsh-1.5.3-4.el6.quantum.x86_64.rpm                    version_info.M440
platform.properties                              rpmUpgradeVerCheck.py                                    version_info.M660
PreUpgradeChk.BHM                                scli-1.7.3-14.i386.rpm                                   VersionTable.conf.G300
PreUpgradeChk.DXiSNA                             SMagent-LINUX.rpm                                        VersionTable.conf.M220
PreUpgradeChk.G300                               SMclient-LINUX.rpm                                       VersionTable.conf.M330
PreUpgradeChk.G300R                              SMesm-LINUX.rpm                                          VersionTable.conf.M440
PreUpgradeChk.M220                               SMruntime-LINUX.rpm                                      VersionTable.conf.M660
PreUpgradeChk.M660R                              SMutil-LINUX.rpm                                         zope.interface-4.1.1-py2.7-linux-x86_64.egg
Protobuf-PHP-0.9.4-3.tar.gz                      snapi_RedHat60AS_26x86_64_2.0.3_25257.tar.gz
psutil-2.2.1-py2.7-linux-x86_64.egg              snconnect_client-RedHat60AS_26x86_64-15-23526570.tar.gz
 

 

For example you can extract the client software from this version of .fw (5.3).

 

[root@upm440 5.3]# gunzip SNFSClients.tar.gz
 

[root@upm440 5.3]# ll | grep SNFSClients
-rw-r--r-- 1 root root 369930240 Dec 14 16:35 SNFSClients.tar
 

[root@upm440 5.3]# tar -xvf SNFSClients.tar
snfs_client_AIX71_powerpc_64.bin
snfs_client_Debian60_26x86_64.bin
snfs_client_Debian70_32x86_64.bin
snfs_client_Debian8_x86_64.bin
snfs_client_HPUX1131_ia64.bin
snfs_client_plus_mover_RedHat60AS_26x86_64.bin
snfs_client_plus_mover_RedHat7_x86_64.bin
snfs_client_plus_mover_SuSE110ES_26x86_64.bin
snfs_client_RedHat60AS_26x86_64.bin
snfs_client_RedHat7_x86_64.bin
snfs_client_SunOS5100i386_64.bin
snfs_client_SunOS5100sparc_64.bin
snfs_client_SunOS5110i386_64.bin
snfs_client_SunOS5110sparc_64.bin
snfs_client_SuSE110ES_26x86_64.bin
snfs_client_SuSE12_x86_64.bin
snfs_client_Ubuntu14_x86_64.bin
snfs_client_Windows_x86_64.zip
snfs_gateway-agent_RedHat60AS_26x86_64.bin
snfs_gateway-agent_RedHat7_x86_64.bin
snfs_gateway-agent_SuSE110ES_26x86_64.bin
 



This page was generated by the BrainKeeper Enterprise Wiki, © 2018