Verifying network operation with the mmnetverify command

Verify network operation with the mmnetverify command.

Important: Proper operation of IBM Spectrum Scale™ depends on reliable TCP/IP communication among the nodes of a cluster. Before you create or reconfigure an IBM Spectrum Scale cluster, ensure that proper host name resolution and ICMP echo (network ping) are enabled among the nodes.

With the mmnetverify command, you can do many types of network checks either before or after you create or reconfigure a cluster. Run the command beforehand to verify that the nodes can communicate properly. Run the command afterward at any time to verify communication or to analyze a network problem. For more information, see the topic mmnetverify command.

The mmnetverify command uses the concepts of local nodes and target nodes. A local node is a node from which a network test is run. You can enter the command on one node and have it run on multiple separate local nodes. A target node is a node against which a test is run.

You can run tests on one node against multiple nodes. The following command runs tests on node1 against node2 and then on node1 against node3:
mmnetverify connectivity --N node1 --target-nodes node2,node3
You can also run tests on multiple nodes against multiple nodes. The following command runs tests on node1 against node1 and node2 and then on node2 against node1 and node2:
mmnetverify connectivity --N node1,node2  --target-nodes node1,node2
It is not necessary to enter the command from a node that is involved in testing. For example, you can run the following command from node1, node2, node3, or any other node in the cluster:
mmnetverify data --N node1 --target-nodes node2,node3
To run tests against all the nodes in the cluster, omit the --target-nodes parameter (example 1). Similarly, to run the test on all the nodes in the cluster, omit the --N parameter (example 2):
(1) mmnetverify data-medium --N node1
(2) mmnetverify data-medium --target-nodes node2,node3,node4
To run all the tests, omit the test parameter:
mmnetverify --N node1 --target-nodes node2,node3,node4

The groups of tests include connectivity, port, data, bandwidth, and flood tests. You can run tests individually or as a group. For example, you can run resolution, ping, shell, and copy tests individually, or you can run all of them by specifying the keyword connectivity.

The command writes the results of tests to the console by default, or to a log file as in the following example:
mmnetverify port --N node1 --target-nodes all --log-file results.log
If you are running tests against nodes that are not organized into a cluster, you must specify the nodes in a configuration file. The file must at minimum contain a list of the nodes in the test. You must also include the node from which you are starting the command:
node node_starting
node node1
node node2
node node3
node node4
Run the command in the usual way and include the configuration file:
mmnetverify ping --N node1,node2,node3,node4 --target-nodes                   
node1,node2,node3,node4  --configuration-file config.txt
You can also use the configuration file for other purposes, such as specifying a nondefault shell command or file copy command.