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 |