opafindgood (8) - Linux Manuals



Checks for hosts that are able to be pinged, accessed via SSH, and active on the Intel(R) Omni-Path Fabric. Produces a list of good hosts meeting all criteria. Typically used to identify good hosts to undergo further testing and benchmarking during initial cluster staging and startup.

The resulting good file lists each good host exactly once and can be used as input to create mpi_hosts files for running mpi_apps and the HFI-SW cable test. The files alive, running, active, good, and bad are created in the selected directory listing hosts passing each criteria.

This command assumes the Node Description for each host is based on the hostname-s output in conjunction with an optional hfi1_# suffix. When using a /etc/sysconfig/opa/hosts file that lists the hostnames, this assumption may not be correct.

This command automatically generates the file FF_RESULT_DIR/punchlist.csv. This file provides a concise summary of the bad hosts found. This can be imported into Excel directly as a *.csv file. Alternatively, it can be cut/pasted into Excel, and the Data/Text to Columns toolbar can be used to separate the information into multiple columns at the semicolons.

A sample generated output is:

# opafindgood
3 hosts will be checked
2 hosts are pingable (alive)
2 hosts are ssh'able (running)
2 total hosts have FIs active on one or more fabrics (active)
No Quarantine Node Records Returned
1 hosts are alive, running, active (good)
2 hosts are bad (bad)
Bad hosts have been added to /root/punchlist.csv
# cat /root/punchlist.csv
2015/10/04 11:33:22;phs1fnivd13u07n1 hfi1_0 p1 phs1swivd13u06 p16;Link errors
2015/10/07 10:21:05;phs1swivd13u06;Switch not found in SA DB
2015/10/09 14:36:48;phs1fnivd13u07n4;Doesn't ping
2015/10/09 14:36:48;phs1fnivd13u07n3;No active port

For a given run, a line is generated for each failing host. Hosts are reported exactly once for a given run. Therefore, a host that does not ping is NOT listed as can't ssh nor No active port. There may be cases where ports could be active for hosts that do not ping, especially if Ethernet host names are used for the ping test. However, the lack of ping often implies there are other fundamental issues, such as PXE boot or inability to access DNS or DHCP to get proper host name and IP address. Therefore, reporting hosts that do not ping is typically of limited value.

Note that opafindgood queries the SA for NodeDescriptions to determine hosts with active ports. As such, ports may be active for hosts that cannot be accessed via SSH or pinged.

By default, opafindgood checks for and reports nodes that are quarantined for security reasons. To skip this, use the -Q option.


opafindgood [-R|-A|-Q] [-d dir] [-f hostfile] [-h 'hosts'] [-t portsfile]
[-p ports] [-T timelimit]


Produces full help text.
Skips the running test (SSH). Recommended if password-less SSH is not set up.
Skips the active test. Recommended if Intel(R) Omni-Path Fabric software or fabric is not up.
Skips the quarantine test. Recommended if Intel(R) Omni-Path Fabric software or fabric is not up.
-d dir
Directory in which to create alive, active, running, good, and bad files. Default is /etc/sysconfig/opa directory.
-f hostfile
File with hosts in cluster. Default is /etc/sysconfig/opa/hosts directory.
-h hosts
List of hosts to ping.
-t portsfile
File with list of local HFI ports used to access fabric(s) for analysis. Default is /etc/sysconfig/opa/ports file.
-p ports
List of local HFI ports used to access fabric(s) for analysis. The default is the first active port. The first HFI in the system is 1. The first port on an HFI is 1.Uses the format hfi:port, for example:

0:0 First active port in system.

0: y Port y within system.

 x:0  First active port on HFI x.

 xy  HFI x, port y.

-T timelimit
Time limit in seconds for host to respond to SSH. Default = 20 seconds.

Environment Variables

The following environment variables are also used by this command:

List of hosts, used if -h option not supplied.

File containing list of hosts, used in absence of -f and -h.

List of ports, used in absence of -t and -p.

File containing list of ports, used in absence of -t and -p.

Maximum concurrent operations.


opafindgood -f allhosts
opafindgood -h 'arwen elrond'
HOSTS='arwen elrond' opafindgood
HOSTS_FILE=allhosts opafindgood
opafindgood -p '1:1 1:2 2:1 2:2'