Whamcloud - gitweb
LU-12635 build: Support for gcc -Wimplicit-fallthrough
[fs/lustre-release.git] / lustre / doc / lst.8
1 .TH lst 8 "2017 Jan 12" Lustre "configuration utilities"
2 .SH NAME
3 lst \- Start the Lustre LNET Self-test
4 .SH SYNOPSIS
5 .B "lst"
6 .br
7 .B "lst --list-commands"
8 .SH DESCRIPTION
9 LNET self-test helps site administrators confirm that Lustre
10 Networking (LNET) has been properly installed and configured.
11 The self-test also confirms that LNET and the network software
12 and hardware underlying it are performing according to expectations.
13 .LP
14 Every LNET self-test runs in the context of a session.  A node can be
15 associated with only one session at a time to ensure the session has
16 exclusive use of the nodes on which it is running. A session is created,
17 controlled and monitored from a single node; this is referred to as the
18 self-test console.
19 .LP
20 Any node may act as the self-test console.  Nodes are named and allocated
21 to a self-test session in groups.  This allows all nodes in a group to
22 be referenced by a single name.
23 .LP
24 Test configurations are built by describing and running test batches.
25 A test batch is simply a named collection of tests, with each test
26 composed of a number of individual point-to-point tests running in parallel.
27 These individual point-to-point tests are instantiated according to the
28 test type, source group, target group and distribution specified when the
29 test is added to the test batch.
30 .LP
31 .SH OPTIONS
32 .TP
33 .B --list-commands
34 Output a list of the commands supported by the lst utility
35 .SH MODULES
36 To run LNET self-test, load these modules: libcfs, lnet, lnet_selftest
37 and any one of the klnds (i.e, ksocklnd, ko2iblnd...).
38 To load all necessary modules, run modprobe lnet_selftest, which
39 recursively loads the modules that lnet_selftest depends on.
40 .LP
41 There are two types of nodes for LNET self-test: the console node and
42 test nodes. Both node types require all previously-specified modules
43 to be loaded. (The userspace test node does not require these modules.)
44 .LP
45 A console user can invite a test node to join the test session by running
46 lst add_group \fINID\fR.
47 .LP
48 .SH UTILITIES
49 .B lst
50 is the user interface for the self-test console (run on console node).
51 It provides a list of commands to control the entire test system,
52 such as create session, create test groups, etc.
53 .LP
54 .SH EXAMPLE SCRIPT
55 Below is a sample LNET self-test script which simulates the traffic
56 pattern of a set of Lustre servers on a TCP network, accessed by Lustre
57 clients on an IB network (connected via LNET routers), with half the
58 clients reading and half the clients writing.
59 .LP
60 .nf
61 #!/bin/bash
62 export LST_SESSION=$$
63 lst new_session read/write
64 lst add_group servers 192.168.10.[8,10,12-16]@tcp
65 lst add_group readers 192.168.1.[1-253/2]@o2ib
66 lst add_group writers 192.168.1.[2-254/2]@o2ib
67 lst add_batch bulk_rw
68 lst add_test --batch bulk_rw --from readers --to servers \
69     brw read check=simple size=1M
70 lst add_test --batch bulk_rw --from writers --to servers \
71     brw write check=full size=4K
72 # start running
73 lst run bulk_rw
74 # display server stats for 30 seconds
75 lst stat servers & sleep 30; kill $!
76 # tear down
77 lst end_session
78 .fi
79 .SH SEE ALSO
80 This manual page was extracted from Introduction to LNET Self-Test,
81 section 19.4.1 of the Lustre Operations Manual.  For more detailed
82 information, please refer to that document.