pmdaib
is a Performance Metrics Domain Agent (PMDA) which exports information and
performance metrics about local Infiniband HCAs and local or remote Infiniband GUIDs.
A brief description of the
pmdaib
command line options follows:
-c
Location of the config file. By default, the config file is named
$PCP_PMDAS_DIR/ib/config.
See
CONFIG FILE
for more information.
-D
A debug values, as specified by
pmdbg (1)
-d
Specify an alternate performance metrics
domain
number. Almost never necessary.
-l
Location of the log file. By default, a log file named
ib.log
is written to
$PCP_LOG_DIR/pmcd.
If the log file cannot be created or is not writable, output
is written to the standard error instead.
-w
Write out the default config file to
$PCP_PMDAS_DIRS/ib
and exit immediately. The written config file will contain the local HCA ports.
It will not overwrite an existing file. This argument should only be used to create
the template config file and should never appear in
pmcd.conf.
See
CONFIG FILE
for more information on the file format and on monitoring
remote GUIDs.
CONFIG FILE
By default, the PMDA will operate without using a config file. In this mode of operation
the local HCA ports will be monitored. Note that if a new HCA is added to the machine that
instance domain naming may change because it will always be based on the kernel's naming.
In cases where this is not acceptable, or in the case where monitoring remote Infiniband
ports is required, a config file must be created. A "template" file can be created by
running the
pmdaib
daemon with the
-w
argument. This will create a config file with the local ports and GUIDs.
If the config file is
executable
then it will be run and the output will be used as the config file.
The config file is composed of line-based records. Blank lines and everything after
the
hash (#)
character are ignored. Each line has 6 fields:
[instName] [portGUID] [portNum] via [localPortName]:[localPortNum]
The first field is used to give a static instance name to the Infiniband port that
has a specific GUID. All of the other fields must be properly specified in order
to monitor a particular port.
For example, to monitor port 1 of the local HCA called 'mthca0' a possible config file
line would be:
myPort1 0xdeadbeef01234567 1 via mthca0:1
Remote ports can be easily monitored by specifying the GUID of the HCA or switch and
specifying the remote port number. The localPortName:localPortNum tuple
specifies which local HCA and port to use as the "first hop" in contacting the remote
GUID. E.g., to monitor port 13 of a remote switch which is connected to the fabric
on the first port of the second HCA: