IBM Support

HMC Scanner for POWER Server Config and Performance Stats

How To


Use the HMC Scanner to quickly extract all the details of the POWER Servers the HMC is connected too and saved in a Microsoft Excel spreadsheet.
The tool is available at the end of this document as a compressed file that needs to be extracted on an empty directory. Latest version is 0.11.50: "" or ""


image 8621 HMC Scanner is a Java program that uses SSH to connect to an HMC or SDMC or FSM or IVM (IVM is experimental). It downloads the system configuration and produces a single Excel spreadsheet that contains the configuration of servers and LPARs. In PureFlex environments, only Power Systems compute nodes are detected. Optional HTML and CSV outputs are available.

The result is a simple way to document configuration and to easily look at most important configuration parameters.

Excel information is organized in tabs:

  • System summary: name, serial number, cores, memory, service processor IP for each server
  • LPAR Summary: list of all LPAR by serve with status, environment, version, processor mode
  • LPAR CPU: processor configuration of each LPAR
  • LPAR MEM: memory configuration of each LPAR
  • Physical Slots: list of all slots of each system with LPAR assignment, description, physical location, drc_index
  • Virtual Ethernet: network configuration of each virtual switch and each LPAR
  • Virtual SCSI: configuration of all virtual SCSI adapters, both client and server
  • VSCSI Map: devices mapped by each VIOS to partitions
  • Virtual Fibre: Virtual Fibre channel configuration of client and server with identification of physical adapter assigned
  • SEA: SEA configuration and statistics for all VIOS
  • SW Cores: LPAR and virtual processor pool configuration matrix to compute the number of software licenses. Simulation of alternative scenarios is possible.
You can use optional flags to download historical CPU usage data from HMC and to add it in the report. You need to enable HMC performance data collection before running the scanner or the report will contain empty fields. See FAQ section for examples. Data collection is off by default on the HMC. The following tabs are related to managed system performance:
  • CPU Pool Usage: monthly average history of CPU usage of each system.
  • Sys RAM Usage: monthly average history of physical memory assignement to each LPAR.
  • LPAR CPU Usage:monthly average history of CPU usage of each LPAR.
  • CPU Pool Daily Usage: 1 year of CPU usage of every pool and subpools of each system. Based on daily averages.
  • LPAR Daily Usage: 1 year of CPU usage of every LPAR of each system. Based on daily averages.
  • CPU Pool HourlyUsage: 2 months of CPU usage of every pool and sub-pools of each system. Based on hourly averages.
  • LPAR Hourly Usage: 2 months of CPU usage of every LPAR of each system. Based on hourly averages.

The tool is constantly updated to match changes in tool syntax and to manage new data types or new features. If you have any problem or any suggestion to improve HMC Scanner, send me (Federico Vagnini in IBM, Italy) an mail ([email protected]). Since new features are mostly suggested by users, propose yours! Always include the downloaded files to allow be proper debugging.

This tool is not officially supported by IBM. No guarantee is given or implied, and you cannot obtain help from IBM. It a personal project of the author, Federico Vagnini (IBM Italy).

See also pGraph page form the same author. It allows multiple nmon, vmstat, iostat, sar, lslparutil files to be loaded regardless of their size. Graphs are provided together with a useful "time zoom" that allows you to select the time period to show.


HMC scanner is based on Java and work on any platform provided that you have a Java runtime environment available. It is a command line tool and scripts are provided for Korn Shell on AIX and Windows command line. These scripts can be easily adapted to work on other platforms. Users normally run the scanner on AIX, Linux, Windows, iOS but other platforms may work as well.


HMC scanner must be used on a system with Java 1.6 or later. It must be capable of contacting HMC/SDMC/FSM/IVM with a direct SSH connection or by using an SSH connection through a HTTP, SOCKS4 or SOCKS5 proxy server. The HMC/SDMC/FSM/IVM must allow remote SSH command execution.

Follow the following steps:

1. Download the latest available code since it contains latest fixes and capabilities. You can find it at the end of this document as a zip file
2. Unzip the code into a new empty directory
3. Inspect the hmcScanner.ksh and hmscScanner.bat files to check that they are able to locate Java executable on your system
4. If you want to collect performance data, make sure data collection was enabled (see following sections and FAQ)
5. Run the scanner by providing HMC address, user,Finally tpassword
The most common usage is:
  • Unix-like OS: hmcScanner.ksh HMC_name_or_IP hscroot -p password -stats
  • Windows: hmcScanner.bat HMC_name_or_IP hscroot -p password -stats
The scanner contacts HMC with a direct SSH connection. It creates a directory with the HMC name or IP and downloads a set of configuration data. Data is then parsed to create an final Excel report. The downloaded data remains on disk.
A sample execution is the following:
C:\Federico\HMCscanner>hmcscanner.bat hscroot -p abc123 -stats
hmcScanner version 0.10
Detecting manager type: HMC
Detecting managed systems: 16 systems present.
Starting managed system configuration collection:
   Scanning 750e-8233-E8B-SN1003C8P:      ............... DONE
   Scanning New_DNS:                      ............... DONE
   Scanning PowerHA-1:                    ............... DONE
   Scanning PowerHA-2:                    ............... DONE
   Scanning Server-8406-70Y-SN06AD0EA:    ............... DONE
   Scanning Server-8406-70Y-SN06AD10A:    ............... DONE
   Scanning Server-8406-71Y-SN06ACE4A:    ............... DONE
   Scanning Server-9110-51A-SN10AC29C:    ............... DONE
   Scanning i7-8233-E8B-SN10080EP:        ............... DONE
   Scanning op1:                          ............... DONE
   Scanning p6-8203-E4A-down:             ............... DONE
   Scanning p6-8203-E4A-up:               ............... DONE
   Scanning p7-8233-E8B-SN100805P:        ............... DONE
   Scanning pSAP:                         ............... DONE
   Scanning pSeries-9113-550-SN65FDE9C:   ............... DONE
   Scanning tsia:                         ............... DONE
Collection successfully finished. Data is in C:\Federico\HMCscanner\\

Performance data collection:
   Loading 750e-8233-E8B-SN1003C8P:      .......... .
   Loading New_DNS:                      .. .
   Loading PowerHA-1:                    . .
   Loading PowerHA-2:                    ... .
   Loading Server-8406-70Y-SN06AD0EA:    . .
   Loading Server-8406-70Y-SN06AD10A:    . .
   Loading Server-8406-71Y-SN06ACE4A:    . .
   Loading Server-9110-51A-SN10AC29C:    .. .
   Loading i7-8233-E8B-SN10080EP:        .................. ..
   Loading op1:                          .. .
   Loading p6-8203-E4A-down:             ....... .
   Loading p6-8203-E4A-up:               .............. ..
   Loading p7-8233-E8B-SN100805P:        ................................. ..
   Loading pSAP:                         .... .
   Loading pSeries-9113-550-SN65FDE9C:   ............... ..
   Loading tsia:                         .. .
................................................ DONE
Starting Excel file creation. Done: C:\Federico\HMCscanner\

If you do not provide a password on the command line, the scanner will use a public key. On Unix it is assumed to be $HOME/.ssh/id_rsa. You can set the key to use by adding the -key parameter (the key must not have a password). If no key is available, the scanner asks for the password interactively (not suited for batch processing)

Performance data
Data collection need to be explicitly enabled on the HMC since it is not active by default. Easiest way to enable it is to log into the HMC with administrative rights on the command line and issue the following command: chlparutil -r config -s 300. This command enable data collection for all current managed system on the HMC but not on future ones. Wait for a couple of days to see performance data on the report.
You can check whether data collection is active by looking at scanner's report. Select the System_Summary tab and look at the Perf Sample Rate column: if the cell is empty or has a zero value, data collection is not active.

Additional Information

There are few parameters that can be changed in order to override default setup. Run the batch file with no parameters to get syntax help or use full java syntax:

  • hmcScanner.bat
  • hmcScanner.ksh
hmcScanner.Loader <HMC name/IP> <user> [-p <password>] [-dir <local dir>] [-perf <start> <end> <d|h>] [-readlocal] 
                                       [-key [file] ] [-stats] [-sanitize] [-csv] [-csvchar <char>] [-html]
                                       [-log <file>] 
                                       [-proxy <http|socks4|socks5> <host> <port> [user] [password] ] 
                                       [-m <managed system>] [-timeout <secconds>] [-novios]

    -dir <local dir> is the directory where data will be stored. Default is current directory.
    -perf <start> and <end> is data collection retrieval interval. Syntax is: YYYYMMDD
               <d|h> d=daily data samples; h=hourly data samples
    -readlocal will force reading of existing local data without contacting HMC
    -key will use OpenSSH private key (default $HOME/.ssh/id_rsa)
    -stats will produce system statistics. It does NOT require -perf!
    -sanitize will remove sensitive data.
    -csv creates one .csv file for each sheet in a separate directory.
    -csvchar defines che separator char is CSV (default is comma).
    -html creates HTML report in a separate directory.
    -log <file> logs SSH activity into file
    -proxy <http|socks4|socks5> <host> <port> [user] [password]
           select proxy type, host, port to use for SSH communication
    -m <managed system> restrics the scan to the provided managed system
    -timeout <seconds> Timeout SSH connection after idle seconds. Use with care! Default is no timeout.
    -csvdir <directory> directory where csv files will be written. Default is <hmc>_<date>_<time>_CSV
    -htmldir <directory> directory where html files will be written. Default is <hmc>_<date>_<time>_HTML
    -novios do not collect data from VIOS to speed up pure hw config scanning.
The default location of downloaded files can be modified by using the -dir parameter. A new directory is created there.

The spreadsheet file can be generated again from already downloaded files by using the -readlocal switch. HMC is not contacted.

In order to have in the spreadsheet the tabs with the history of CPU and memory usage, the HMC must collect performance data and you have to provide the -stats switch. Allow some more time to download the data.

The -perf switch has no effect in spreadsheet content. It is just a simple way to download lslparutil data from HMC in raw format. It can be later loaded by tools like pGraph.

Known issues

  • LPAR names with commas prevent hmcScanner from working. Best practice is to have alphanumeric characters and underscore.
  • If you encounter Java memory errors, change maximum Java allowed values by editing script and adding "-Xmx1024m" before "hmcScanner.Loader"
  • VIOS partitions with a huge set of disks can require a long time to download data. Allow hmcScanner to run and finish or use -novios to skip data collection from VIOS

If you find errors or have question, email me: 

hmcScanner FAQ

  • Which kind of information can be retrieved by hmcScanner and how?
    • hmcScanner runs commands on HMC only and can retrieve only information known by HMC. The LPARs present on managed systems are not contacted by any means. The HMC uses RMC protocol to contact the LPAR to get some information but is it not able to run operating system commands. Only exception is VIOS: HMC can use RMC protocol to run padmin commands and hmcScanner exploits this option to get VIOS specific configuration.
  • The data related to VIOS configuration is missing in hmcScanner report
    • When RMC protocol is not working, HMC can not run commands on a VIOS.  Ensure that there is network connectivity between HMC and VIOS and that no firewall blocks TCP/UDP on port 657 bidirectional. The protocol is the same used by dynamic LPAR reconfiguration. The RMC status is shown in hmcScanner report under LPAR_Summary tab under RMC State column.
  • The operating system version in the report is missing or obsolete
    • Operating system version is detected by HMC by using RMC protocol. If protocol is not working the value can not be identified or updated. Updates are not immediately available. Please run the following command on all managed systems: lssyscfg -r lpar -m <managed system> --osrefresh -F name, os_version
  • There is no performance data in the report even if I use -stats flag, or data is present only for some LPARs
    • Performance data needs to be enabled on the HMC for each managed system. By default it is not activated. You can see the status in the report in the System_Summary tab under the Per Sample Rate column: if the cell is empty or has a zero value, data collection is not active. You can enable the data collection on the GUI looking at managed system menu or by using the CLI: chlparutil -r config -s <seconds> -m <managed system> (I suggest 30 minutes) or chlparutil -r config -s <seconds> for all managed systems. If you add a new managed system it will not have collection enabled. If you have a dual HMC setup and want both HMCs to collect data, you need to enable collection on both HMCs.
  • I see performance data on the report but I was expecting more data
    • There is currently a bug on HMC software that prevents a full extraction of performance data using lslparutil command as hmcScanner does. In order to fix the issue you need to upgrade the HMC code version V8 R8.2 Service pack 2 or later (PTF MH01488 HMC V8 R8.2.0 Service Pack 2)

Document Location


Download HMC Scanner

HMC Scanner code: Always use the latest version since it fixes bugs and introduce new capabilities.

I keep old versions just in case but check the list from the top.

Version Date posted Package


05 September 2023
Update 50 of version 0.11 - Required for POWER10 systems
Fixed issue preventing SRIOV data to be present in report
Choose only one file and uncompress it in an empty directory.
Both files have the same scanner code but use two different SSH libraries: the newjsch is the most recent and will become the default in the next future and should be preferred since the other may have issues with strong password ciphers.
23 August 2023
Update 49 of version 0.11
Bug fixes, SRIOV enabled by default, HTML reports working on Firefox
02 May 2022
Update 46 of version 0.11


23 May 2019

Update 42 of version 0.11.

Full package: download and unzip. Use bat or ksh script.

This version has an update to SSH library that is required to connect to an HMC of version 930 or higher


09 May 2017

Update 35 of version 0.11

Check you have version 0.11.24 installed, download the jar file and rename it as "hmcScanner.jar"

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SWG10","label":"AIX"},"Component":"","Platform":[{"code":"PF002","label":"AIX"}],"Version":"All Versions","Edition":"","Line of Business":{"code":"LOB08","label":"Cognitive Systems"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"HW1W1","label":"Power -\u003EPowerLinux"},"Component":"","Platform":[{"code":"PF016","label":"Linux"}],"Version":"All Versions","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SWG60","label":"IBM i"},"Component":"","Platform":[{"code":"PF012","label":"IBM i"}],"Version":"All Versions","Edition":"","Line of Business":{"code":"LOB57","label":"Power"}}]

Document Information

Modified date:
05 September 2023