Video Tutorial: Using invscout on AIX

Originally published by TechChannel September 1, 2021

In his latest video tutorial, IBM Champion Rob McNelly explains how to use the invscout command on AIX

Learn how to use the invscout command on AIX from IBM Champion Rob McNelly:

Transcript:

As I paddled my Kayak down the Colorado River, I realized that many of you had fallen behind on your system patching.

As server administrators, besides updating our operating system, and our virtual IO server, and our HMC code, we also need to keep our server firmware and physical device firmware up to date. There is nothing worse than having an outage that’s root cause was found to have been fixed in code that was delivered a year prior to the event. Vendors provide fixes for a reason. 

The physical network adapters, fibre adapters, etc on our machines have microcode that needs to be managed. I have recently met people that did not realize how easy it can be to validate that the code they are running is current. It is just as easy to use your system report to find and download the updated code you will need to install. Others did not realize that you can do it all from the command line, some thought you had to upload individual files through a web browser.

Today we will be looking at the invscout command. This is already installed on your system. You can use invscout to survey your LPAR for currently installed microcode and device firmware. You will need to run this tool in the LPAR that owns the physical adapters you are interested in checking, most of the time your VIO server will own the physical adapter you are checking, but in your environment you may also have adapters assigned directly to your LPARs, it will be up to you to know the appropriate place to run the command. 

There are good web sites available that will provide you with an overview and more in depth information. Just typing invscout into a search engine brought up these pages, there were others as well. 

https://www.ibm.com/docs/en/aix/7.2?topic=i-invscout-command
http://gibsonnet.net/blog/cgaix/html/MDS%20reports.html
https://unixhealthcheck.com/blog?id=230

For the purposes of this video, we will walk through how to perform this task on a single system using the command line, the unixhealthcheck web page has a nice script where you can automate running invscout on multiple systems at once.

I like Chris Gibson’s Web page, he outlines the basic steps you need to perform, starting with downloading the latest catalog file from the IBM website. In my example LPAR I will use the wget command, which I installed earlier using yum.

After you download the catalog file, you will want to move it to the /var/adm/invscout/microcode directory. Once you have the file in the correct place, you can simply run the invscout command. One of the files it outputs will include the hostname of the system followed with the .mup suffix. This is the file you need to upload to IBM to generate the report.

You can manually upload it to an IBM website, but I prefer using curl so I can use the command line. If you do not have curl loaded on your system, refer to my video on yum for an easy way to get curl installed.

Now I will scroll to the right so you can see the curl command I am running, I will run the curl command, and I will run the ls command.

After you have your html file, simply open it in a browser in order to display it. You will get information like the hostname and serial number, along with the system and device firmware levels. If there are updates available, there will be links you can click on that will take you right to fixcentral to download the code.

On the IBM microcode discovery site, you can either upload your file, or if you click on the menu on the left side of the page there is an option for programmatic upload. This is where you will find an example of the curl command you can use. Just change the @local.mup with your hostname, but be sure to keep the @ sign. You may need to redirect the output to a file, in my case I redirect to hostname .html.

curl -F “mdsData=@/var/adm/invscout/test.mup;type=multipart/form” -H “Expect:” http://www14.software.ibm.com/support/customercare/mds/mds > test.html

When you look more closely at the unixhealthcheck script, you will see that they set up a list of multiple servers to inventory at once. They download the catalog file from IBM, copy that file to the other systems where they want to run invscout, run the command, collect the output, concatenate the files into one big file, then use curl to upload that file. In their example they display the results on a web server, but you can just as easily look at that file in your browser.

This should be enough to get you started. Thanks for watching!