MDS reports at your fingertips

Many AIX and Power System administrators use Microcode Discovery Services to regularly check the versions of adapter firmware and system firmware. The following steps are usually necessary:

– Download the current catalog file catalog.mic.

– Run Inventory Scout to generate the microcode upload file.

– Upload the microcode upload file to IBM http://www14.software.ibm.com/support/customercare/mds/mds

In many cases, the upload is carried out via a browser. The report is shown in the form of an HTML output. Alternatively, you can also upload e.g. with the help of curl and request the data in JSON format.

$ curl -F "mdsData=@ms01-vio1.mup;type=multipart/form" -F "format=json" -H "Expect:" http://www14.software.ibm.com/support/customercare/mds/mds -o ms01-vio1.mup

The returned JSON file contains all information that is otherwise displayed in the browser.

With a small script, the JSON file can be displayed relatively easily in readable ASCII form. We have created the script mds_report for this purpose and made it available in our download area (https://powercampus.de/download). The script expects a microcode upload file as an argument, here is a sample output:

$ mds_report ms01-vio1.mup
ms01-vio1.mup upload microcode upload file to IBM ... uploaded

Microcode by Host

ms01-vio1
IP Addr: X.X.X.X
Model: 8205-E6D   Serial: XXXXXX
Microcode catalog: 2020.07.30

DEVICES          INSTALLED        LATEST           RECOMMEND   PKGNAME
system           AL770_126        AL770_126        None        8231-E1D; 8231-E2D; 8246-L1D; 8246-L1T; 8246-L2D; 8246-L2T; 8202-E4D; 8205-E6D; 8268-E1D; 8493-SV6 HV16 System Firmware
sissas0          0422003f         0422003f         None        PCI Express x8 Ext Dual-x4 3Gb SAS RAID Adapter (CCIN: 574E)
ent0,1,2,3       10080180         10240310         Update      4-Port Gigabit Ethernet PCI-Express Adapter
ent4,5,6,7       0400401800007    0400401800009    Update      PCIe2 2-Port 10GbE SFP+Copper or 10GbE SR Adapter
fcs0,1,2,3       210301           210313           Update      PCIe2 4-Port 8Gb Fibre Channel Adapter, FC 5729
fcs4,5,6,7       0320080270       0325080271       Update      8Gb PCIe2 Low Profile 4-Port FC Adapter
hdisk0,1         37343138         37343139         Update      Savvio 15K.3 146/300GB SAS Disk Drive
cd0              RA65             RA65             None        SATA DVD-RAM Drive RMBO0140512

Microcode by Type

IMPACT        SEVERITY    RELDATE       LATEST           PKGNAME
Security      SPE         2018.05.27    AL770_126        8231-E1D; 8231-E2D; 8246-L1D; 8246-L1T; 8246-L2D; 8246-L2T; 8202-E4D; 8205-E6D; 8268-E1D; 8493-SV6 HV16 System Firmware
Usability     ATT         2013.06.06    0422003f         PCI Express x8 Ext Dual-x4 3Gb SAS RAID Adapter (CCIN: 574E)
Usability     ATT         2019.06.20    10240310         4-Port Gigabit Ethernet PCI-Express Adapter
Usability     ATT         2016.11.14    0400401800009    PCIe2 2-Port 10GbE SFP+Copper or 10GbE SR Adapter
Usability     ATT         2019.06.17    210313           PCIe2 4-Port 8Gb Fibre Channel Adapter, FC 5729
Usability     ATT         2020.01.28    0325080271       8Gb PCIe2 Low Profile 4-Port FC Adapter
Function      ATT         2019.04.30    37343139         Savvio 15K.3 146/300GB SAS Disk Drive
New           NEW         2014.10.24    RA65             SATA DVD-RAM Drive RMBO0140512
$

The output is very similar to the output in the browser. In the first section “Microcode by Host” the update recommendations for the system firmware and adapter firmware are given. In the second section “Microcode by TypeImpact and Severity, as well as the release date of the last available firmware version are shown.

If access to the Internet is only possible via a proxy, the proxy can be specified using the -x argument, as shown in the following example:

$ mds_report -x http://10.0.0.217:1234 ms07-vio1.mup
ms07-vio1.mup upload microcode upload file to IBM ... uploaded

Microcode by Host

ms07-vio1
IP Addr: X.X.X.X
Model: 8408-44E   Serial: XXXXXXX
Microcode catalog: 2020.07.30

DEVICES          INSTALLED        LATEST           RECOMMEND   PKGNAME
system           SV860_138        SV860_215        Update      8247-21L, 8247-22L, 8247-42L, 8284-21A, 8284-22A, 8286-41A, 8286-42A, 8408-44E, 8408-E8E, 5148-21L, 5148-22L - system-v860.60
sissas0          15511800         19512900         Update      PCIe3 RAID SAS Adapter Quad-port 6Gb x8...
ses0,1,2,3       1D0B             1D0B             None        SAS Enclosure Services for Power 8 4U High Function DASD backplane 8408-E8E
pdisk0,1         37363135         37363142         Update      BP5XX15KHDD 15KRPM 73/146/300/600GB SAS Disk Drive
fcs0,1           00010000020025201919  00012000040025700015  Update      PCIe2 2-Port 16Gb FC Adapter
fcs2,3,4,5       0320080270       0325080271       Update      8Gb PCIe2 Low Profile 4-Port FC Adapter

Microcode by Type

IMPACT        SEVERITY    RELDATE       LATEST           PKGNAME
Security      HIPER       2020.03.04    SV860_215        8247-21L, 8247-22L, 8247-42L, 8284-21A, 8284-22A, 8286-41A, 8286-42A, 8408-44E, 8408-E8E, 5148-21L, 5148-22L - system-v860.60
Availability  ATT         2020.02.25    19512900         PCIe3 RAID SAS Adapter Quad-port 6Gb x8...
New           NEW         2015.06.03    1D0B             SAS Enclosure Services for Power 8 4U High Function DASD backplane 8408-E8E
Function      ATT         2020.04.16    37363142         BP5XX15KHDD 15KRPM 73/146/300/600GB SAS Disk Drive
Usability     ATT         2020.02.18    00012000040025700015  PCIe2 2-Port 16Gb FC Adapter
Usability     ATT         2020.01.28    0325080271       8Gb PCIe2 Low Profile 4-Port FC Adapter
$

If you want to use the script more often, you should enter the proxy in the script itself, for this there is the PROXY variable, which can be set as follows:

$ grep ^PROXY mds_report
PROXY="http://10.0.0.217:1234"
$

(Where 10.0.0.217:1234 is just an example, you have to supply your own values here.)

It is then no longer necessary to specify a proxy using the -x option.

If the script is executed as root on an AIX system, the proxy configuration is automatically adopted from ESA (Electronic Service Agent).

If you need the URLs to download the firmware, you should use the option -u (show download URLs). The links for the firmware versions are then displayed at the end of the output, here is an example:

$ mds_report -u ms03-vio1.mup
/appdata/daten/fk450/aix/mds/virt-aix23-vio1.mup upload microcode upload file to IBM ... uploaded

Microcode by Host

ms03-vio1
IP Addr: X.X.X.X
Model: 9009-22A   Serial: XXXXXXX
Microcode catalog: 2020.07.30

DEVICES          INSTALLED        LATEST           RECOMMEND   PKGNAME
system           VL910_144        VL940_050        Update      9008-22L; 9009-22A; 9009-41A; 9009-42A; 9223-22H; and 9223-42H-system
sissas0          19511400         19512900         Update      PCIe3 RAID SAS Adapter Quad-port 6Gb x8...
pdisk0           36383035         36383035         None        AL14SE 600/1200/1800 GB 4K Hard Disk Drive
pdisk1,2         41374B30         41374B30         None        Ultrastar C15K600-5xx
fcs0,1,2,3,4,5,6,7  00011000040041500005  00012000040025700015  Update      PCIe3 4-Port 16Gb FC Adapter

Microcode by Type

IMPACT        SEVERITY    RELDATE       LATEST           PKGNAME
Availability  SPE         2020.05.21    VL940_050        9008-22L; 9009-22A; 9009-41A; 9009-42A; 9223-22H; and 9223-42H-system
Availability  ATT         2020.02.25    19512900         PCIe3 RAID SAS Adapter Quad-port 6Gb x8...
Data          HIPER       2016.12.01    36383035         AL14SE 600/1200/1800 GB 4K Hard Disk Drive
Function      ATT         2015.08.18    41374B30         Ultrastar C15K600-5xx
Usability     ATT         2020.02.18    00012000040025700015  PCIe3 4-Port 16Gb FC Adapter

Downloads

http://www.ibm.com/support/fixcentral/quickorder?product=ibm/power/900922A&release=all&platform=all&function=fixId&includeSupersedes=0&source=fc&fixids=01VL940_050_027
http://www.ibm.com/support/fixcentral/quickorder?product=ibm/io&release=all&platform=all&function=fixId&includeSupersedes=0&source=fc&fixids=40145679_20200224110413_GRP
http://www.ibm.com/support/fixcentral/quickorder?product=ibm/io&release=all&platform=all&function=fixId&includeSupersedes=0&source=fc&fixids=1354333840_20161130155709_GRP
http://www.ibm.com/support/fixcentral/quickorder?product=ibm/io&release=all&platform=all&function=fixId&includeSupersedes=0&source=fc&fixids=1448849004_20150813164908_GRP
http://www.ibm.com/support/fixcentral/quickorder?product=ibm/io&release=all&platform=all&function=fixId&includeSupersedes=0&source=fc&fixids=427029183_20200213134040_GRP
$

The script generally takes less than 1 second to run!

We tested the script on AIX, Linux, and MacOS. Under MacOS there is usually no ksh93. But the installed ksh supports all the necessary features that are required by the mds_report script. If you change the interpreter in the first line of the script to ksh, the script will also run on a Mac.

A good description of Inventory Scout and MDS can be found here: http://gibsonnet.net/blog/cgaix/html/MDS%20reports.html (Chris Gibson)

You can find out how to automate Inventory Scout in our article Automating Inventory Scout