Whamcloud - gitweb
6e048657ae34ef0ccebe1ee948fc683003a5b537
[fs/lustre-release.git] / lustre / doc / lnetctl.8
1 .
2 .TH lnetctl 8 "2017 Jan 12" Lustre "configuration utilities"
3 .
4 .SH "SYNOPSIS"
5 \fBlnetctl\fR
6 .
7 .br
8 .B lnetctl --list-commands
9 .br
10 \fBlnetctl\fR \fB<cmd> <subcmd> [optional parameters]\fR
11 .
12 .br
13 .SH "DESCRIPTION"
14 \fBlnetctl\fR is used to configure LNet parameters allowing various configuration
15 and debugging features to be accessed\.
16 .
17 .P
18 \fBlnetctl\fR can be invoked in interactive mode by issuing lnetctl command\.
19 After that, commands are issued as below\.
20 .
21 .P
22 To get a complete listing of available commands, type
23 .B --list-commands
24 at the lnetctl prompt\. To get basic help on the meaning and syntax of a command
25 type \fB<command>\fR \-\-help\.
26 .
27 .P
28 For non\-interactive use the \fBlnetctl\fR utility can be invoked from the
29 command line as follows:
30 .
31 .P
32 lnetctl \fIcommand\fR \fIsubcommand\fR [optional parameters]
33 .
34 .SS "LNet Initialization:"
35 .
36 .TP
37 \fBlnetctl lnet\fR configure [\-\-all]
38 Brings up the LNet Network Interface (NI) system\. If the \-\-all option is
39 provided it will load network interfaces defined in the modprobe files\.
40 Otherwise, it doesn\'t initialize any networks by default\.
41 .
42 .TP
43 \fBlnetctl lnet\fR unconfigure
44 Brings down the LNet Network Interface (NI) system including any configured
45 networks\.
46 .
47 .SS "Network Configuration"
48 .
49 .TP
50 \fBlnetctl net\fR add
51 Configures a network interface either given the network name and physical
52 interface device name, or given the ip2net parameter\. Other parameters
53 are optional\.
54 .
55 .br
56 \-\-net: net name (e.g. tcp0)
57 .
58 .br
59 \-\-if: physical interface (e.g. eth0)
60 .
61 .br
62 \-\-ip2net: specify networks based on IP address patterns
63 .
64 .br
65 \-\-peer\-timeout: time to wait before declaring a peer dead (in seconds).
66 Default value for o2iblnd and socklnd is 180 seconds.
67 .
68 .br
69 \-\-peer\-credits: define the max number of in\-flight messages per peer.
70 .
71 .br
72 \-\-peer\-buffer\-credits: the max number of routed in\-flight messages
73 per peer.
74 .
75 .br
76 \-\-credits: The total number of in\-flight messages over a network interface.
77 .
78 .br
79 \-\-cpt: The CPU partitions on which the created network interface is bound to.
80 Refer to the Lustre Manual Section "Binding Network Interface Against CPU
81 Partitions" for more details. For example to bind a Network Interface to
82 CPU partitions 0 and 1, you would specify this parameter as \-\-cpt [0,
83 1]
84 .
85 .br
86
87 .
88 .TP
89 \fBlnetctl net\fR del
90 Delete a network interface given the network name\.
91 .
92 .br
93 \-\-net: net name (e.g. tcp0)
94 .
95 .br
96
97 .
98 .TP
99 \fBlnetctl net\fR show
100 Show all currently configured network interfaces if no parameters given or filter
101 on the network name\. More details can be shown by specifying the \-\-verbose
102 parameter\.
103 .
104 .br
105 \-\-net: net name (e.g. tcp0) to filter on
106 .
107 .br
108 \-\-verbose: display detailed output per network
109
110 .
111 .SS "Peer Configuration"
112 .TP
113 \fBlnetctl peer\fR add
114 Configure an LNET peer with at least one supplied NID\.  The primary NID must be specified.  By default, peers are marked as multi-rail capable\.
115 .
116 .br
117 .
118 \-\-nid: one or more peer NIDs to add to the peer\.
119 .
120 .br
121 .
122 \-\-prim_nid: Primary NID of the peer\.
123 .
124 .br
125 \-\-non_mr: create this peer as not Multi-Rail capable\.
126 .
127 .br
128
129 .TP
130 \fBlnetctl peer\fR del
131 Delete a peer NID.  The primary NID must be specified.  If the removed NID is the primary NID, the peer entry will be deleted.
132 .
133 .br
134 .
135 \-\-nid: one or more peer NIDs to remove from the peer\.
136 .
137 .br
138 .
139 \-\-prim_nid: Primary NID of the peer\.
140 .
141 .br
142
143 .TP
144 \fBlnetctl peer\fR show
145 Show configured peers.  By default, lists all peers and associated NIDs.
146 .
147 .br
148 .
149 \-\-nid: list of primary nids to filter on
150 .
151 .br
152 .
153 \-\-verbose: Include extended statistics, including credits and counters.
154 .
155 .br
156
157 .
158 .SS "Route Configuration"
159 .
160 .TP
161 \fBlnetctl route\fR add
162 Add a route\.
163 .
164 .br
165 \-\-net: net name (e.g. tcp0)
166 .
167 .br
168 \-\-gateway: gateway nid (e.g. 10\.1\.1\.2@tcp)
169 .
170 .br
171 \-\-hop: number to final destination (1 < hops < 255)
172 .
173 .br
174 \-\-priority: priority of route (0 \- highest prio)
175 .
176 .br
177
178 .
179 .TP
180 \fBlnetctl route\fR del
181 Delete a route specified via the network and gateway\.
182 .
183 .br
184 \-\-net: net name (e.g. tcp0)
185 .
186 .br
187 \-\-gateway: gateway nid (e.g. 10\.1\.1\.2@tcp)
188 .
189 .br
190
191 .
192 .TP
193 \fBlnetctl route\fR show
194 Show all currently configured routes if no parameters given, or filter on
195 given parameters\. More details can be shown by specifying the \-\-verbose
196 parameter\.
197 .
198 .br
199 \-\-net: net name (e.g. tcp0) to filter on
200 .
201 .br
202 \-\-gateway: gateway nid (e.g. 10\.1\.1\.2@tcp) to filter on
203 .
204 .br
205 \-\-hop: number to final destination (1 < hops < 255) to filter on
206 .
207 .br
208 \-\-priority: priority of route (0 \- highest prio to filter on)
209 .
210 .br
211 \-\-verbose: display detailed output per route
212 .
213 .br
214
215 .
216 .SS "Routing Information"
217 .
218 .TP
219 \fBlnetctl routing\fR show
220 Show router buffers values as well as show the status of routing (IE: whether
221 the node is set to be a router)
222 .
223 .SS "Value Setting"
224 Individual values can be set using the \fBlnetctl set\fR command\.
225 .
226 .TP
227 \fBlnetctl set\fR tiny_buffers \fIvalue\fR
228 Set the number of tiny buffers in the system\. This is the total number of tiny
229 buffers for all CPU partitions\.
230 .
231 .TP
232 \fBlnetctl set\fR small_buffers \fIvalue\fR
233 Set the number of small buffers in the system\. This is the total number of
234 small buffers for all CPU partitions\.
235 .
236 .TP
237 \fBlnetctl set\fR large_buffers \fIvalue\fR
238 Set the number of large buffers in the system\. This is the total number of
239 large buffers for all CPU partitions\.
240 .
241 .TP
242 \fBlnetctl set\fR routing \fI[0, 1]\fR
243 0 value indicates to disable routing\. 1 value indicates to enable routing\.
244 When routing is disabled the values of the buffers that might have been changed
245 are not remembered, and the next time routing is enabled the default buffer
246 count will be used\.
247 .
248 .TP
249 \fBlnetctl set\fR drop_asym_route \fI[0, 1]\fR
250 0 value indicates to accept asymmetrical route messages\. 1 value indicates to
251 drop them\. Asymmetrical route is when a message from a remote peer is coming
252 through a router that would not be used by this node to reach the remote peer\.
253 .
254 .TP
255 \fBlnetctl set\fR response_tracking \fI[0, 1, 2, 3]\fR
256 Set the behavior of response tracking\.
257   0 - Only LNet pings and discovery pushes utilize response tracking\.
258   1 - GETs are eligible for response tracking\.
259   2 - PUTs are eligible for response tracking\.
260   3 - Both PUTs and GETs are eligible for response tracking (default)\.
261   Note: Regardless of the value of the response_tracking parameter LNet
262         pings and discovery pushes always utilize response tracking\.
263 .
264 .TP
265 \fBlnetctl set\fR recovery_limit \fIvalue\fR
266 Set how long LNet will attempt to recover unhealthy peer interfaces\.
267   0 - Recover indefinitely (default)\.
268   >0 - Recover for the specified number of seconds\.
269 .
270 .SS "Import and Export YAML Configuration Files"
271 LNet configuration can be represented in YAML format\. A YAML configuration
272 file can be passed to the lnetctl utility via the \fBimport\fR command\. The
273 lnetctl utility will attempt to configure all elements defined in the YAML
274 file\.
275 .
276 .P
277 Similarly the \fBexport\fR command can be used to dump all supported LNet
278 configuration to stdout\. The output can be redirected to a file\.
279 .
280 .TP
281 \fBlnetctl import\fR \fIFILE\fR:
282
283 .
284 .TP
285 \fBlnetctl import\fR < \fIFILE\fR
286 \fBimport\fR command uses the specified YAML configuration file to configure
287 LNet parameters defined within\. The import command by default adds the LNet
288 parameters defined in the YAML file, but this default behavior can be
289 overwritten by specifying the desired behavior\.
290 .
291 .br
292 \-\-add: add configuration
293 .
294 .br
295 \-\-del: delete configuration
296 .
297 .br
298 \-\-show: show configuration
299 .
300 .br
301 \-\-exec: execute command
302 .
303 .br
304 \-\-help: display this help
305 .
306 .TP
307 \fBlnetctl export\fR \fIFILE\fR:
308
309 .
310 .TP
311 \fBlnetctl export\fR > \fIFILE\fR
312 \fBexport\fR command dumps the LNet configuration, state information, and stats
313 in YAML format to stdout, which can be redirected to a normal file\. The output
314 of the \fBexport\fR command can be used as input to the \fBimport\fR command\.
315 .
316 .br
317 \-\-backup: dump only elements necessary to recreate the current configuration.
318 .
319 .br
320 \-\-help: display this help
321 .
322 .SS "LNet Statistics"
323 .
324 .TP
325 \fBlnetctl stats\fR
326 Show LNET statistics
327 .
328 .br
329 \-> Number of messages allocated
330 .
331 .br
332 \-> Maximum number of messages allocated
333 .
334 .br
335 \-> Number of errors encountered
336 .
337 .br
338 \-> Number of messages sent
339 .
340 .br
341 \-> Number of messages received
342 .
343 .br
344 \-> Number of messages routed
345 .
346 .br
347 \-> Total size in bytes of messages sent
348 .
349 .br
350 \-> Total size in bytes of messages received
351 .
352 .br
353 \-> Total size in bytes of messages routed
354 .
355 .br
356 \-> Total size in bytes of messages dropped
357 .
358 .br
359
360 .
361 .SS "Showing Peer Credits"
362 .
363 .TP
364 \fBlnetctl peer_credits\fR
365 Show details on configured peer credits
366 .
367 .br
368 \-> Peer nid
369 .
370 .br
371 \-> State
372 .
373 .br
374 \-> Reference count on the peer
375 .
376 .br
377 \-> Maximum transmit credits
378 .
379 .br
380 \-> Available transmit credits
381 .
382 .br
383 \-> Available router credits
384 .
385 .br
386 \-> Minimum router credits\.
387 .
388 .SH "OPTIONS"
389 .TP
390 .B --list-commands
391 Output a list of the commands supported by the lnetctl utility
392 .SH "EXAMPLES"
393 .
394 .SS "Initializing LNet after load"
395 .
396 .IP "\(bu" 4
397 lnetctl lnet configure
398 .
399 .IP "\(bu" 4
400 lnetctl lnet configure \-\-all
401 .
402 .IP "" 0
403 .
404 .SS "Shutting down LNet"
405 .
406 .IP "\(bu" 4
407 lnetctl lnet unconfigure
408 .
409 .IP "" 0
410 .
411 .SS "Add network"
412 .
413 .IP "\(bu" 4
414 lnetctl net add \-\-net tcp0 \-\-if eth0
415 .
416 .IP "\(bu" 4
417 lnetctl net add \-\-ip2net "tcp0(eth0) 192\.168\.0\.[2,4]; tcp0 192\.168\.0\.*;
418 o2ib0 132\.6\.[1\-3]\.[2\-8/2]"
419 .
420 .IP "" 0
421 .
422 .SS "Delete network"
423 .
424 .IP "\(bu" 4
425 lnetctl net del \-\-net tcp0
426 .
427 .IP "" 0
428 .
429 .SS "Show network"
430 .
431 .TP
432 lnetctl net show \-\-verbose:
433
434 .
435 .P
436 net:
437 .
438 .br
439         \- nid: 0@lo
440 .
441 .br
442           status: up
443 .
444 .br
445           tunables:
446 .
447 .br
448                 peer_timeout: 0
449 .
450 .br
451                 peer_credits: 0
452 .
453 .br
454                 peer_buffer_credits: 0
455 .
456 .br
457                 credits: 0
458 .
459 .br
460         \- nid: 192\.168\.205\.130@tcp1
461 .
462 .br
463           status: up
464 .
465 .br
466           interfaces:
467 .
468 .br
469                 0: eth3
470 .
471 .br
472                 1: eth4
473 .
474 .br
475           tunables:
476 .
477 .br
478                 peer_timeout: 180
479 .
480 .br
481                 peer_credits: 8
482 .
483 .br
484                 peer_buffer_credits: 0
485 .
486 .br
487                 credits: 256
488 .
489 .br
490 .
491 .SS "Add route"
492 .
493 .IP "\(bu" 4
494 lnetctl route add \-\-net tcp0 \-\-gateway 10\.10\.10\.1@tcp1 \-\-hop 1
495 \-\-priority 1
496 .
497 .IP "" 0
498 .
499 .SS "Delete route"
500 .
501 .IP "\(bu" 4
502 lnetctl route del \-\-net tcp0 \-\-gateway 10\.10\.10\.1@tcp1
503 .
504 .IP "" 0
505 .
506 .SS "Show route"
507 .
508 .IP "\(bu" 4
509 lnetctl route show \-\-verbose
510 .
511 .IP "" 0
512 .
513 .P
514 route:
515 .
516 .br
517         \- net: tcp
518 .
519 .br
520           gateway: 192\.168\.205\.131@tcp1
521 .
522 .br
523           hop: 1
524 .
525 .br
526           priority: 0 state: down
527 .
528 .br
529 .
530 .SS "Show routing"
531 .
532 .IP "\(bu" 4
533 lnetctl routing show
534 .
535 .IP "" 0
536 .
537 .P
538 routing:
539 .
540 .br
541         \- cpt[0]:
542 .
543 .br
544           tiny:
545 .
546 .br
547                 npages: 0
548 .
549 .br
550                 nbuffers: 2048
551 .
552 .br
553                 credits: 2048
554 .
555 .br
556                 mincredits: 2048
557 .
558 .br
559           small:
560 .
561 .br
562                 npages: 1
563 .
564 .br
565                 nbuffers: 16384
566 .
567 .br
568                 credits: 16384
569 .
570 .br
571                 mincredits: 16384
572 .
573 .br
574           large:
575 .
576 .br
577                 npages: 256
578 .
579 .br
580                 nbuffers: 1024
581 .
582 .br
583                 credits: 1024
584 .
585 .br
586                 mincredits: 1024
587 .
588 .br
589         \- enable: 1
590 .
591 .SS "Setting variables"
592 .
593 .IP "\(bu" 4
594 lnetctl set tiny_buffers 2048
595 .
596 .IP "\(bu" 4
597 lnetctl set small_buffers 16384
598 .
599 .IP "\(bu" 4
600 lnetctl set large_buffers 256
601 .
602 .IP "\(bu" 4
603 lnetctl set routing 1
604 .
605 .IP "" 0
606 .
607 .SS "Importing YAML files for configuring"
608 .
609 .IP "\(bu" 4
610 lnetctl import lnet\.conf
611 .
612 .IP "\(bu" 4
613 lnetctl import < lnet\.conf
614 .
615 .IP "" 0
616 .
617 .SS "Exporting LNet Configuration"
618 .
619 .IP "\(bu" 4
620 lnetctl export lnet\.conf
621 .
622 .IP "\(bu" 4
623 lnetctl export > lnet\.conf
624 .
625 .IP "" 0
626 .
627 .SS "Showing LNet Stats"
628 .
629 .IP "\(bu" 4
630 lnetctl stats show
631 .
632 .IP "" 0
633 .
634 .P
635 statistics:
636 .
637 .br
638         msgs_alloc: 0
639 .
640 .br
641         msgs_max: 1
642 .
643 .br
644         errors: 0
645 .
646 .br
647         send_count: 89
648 .
649 .br
650         recv_count: 0
651 .
652 .br
653         route_count: 0
654 .
655 .br
656         drop_count: 19
657 .
658 .br
659         send_length: 0
660 .
661 .br
662         recv_length: 0
663 .
664 .br
665         route_length: 0
666 .
667 .br
668         drop_length: 0
669 .
670 .br
671 .
672 .SS "Showing peer information"
673 .
674 .IP "\(bu" 4
675 lnetctl peer show
676 .
677 .IP "" 0
678 .
679 .P
680 peer:
681 .
682 .br
683     \- primary nid: 10\.148\.0\.8@o2ib
684 .
685 .br
686       Multi\-Rail: True
687 .
688 .br
689       peer ni:
690 .
691 .br
692         \- nid: 10\.148\.0\.8@o2ib
693 .
694 .br
695           state: NA
696 .
697 .br
698     \- primary nid: 10\.148\.0\.20@o2ib
699 .
700 .br
701       Multi\-Rail: True
702 .
703 .br
704       peer ni:
705 .
706 .br
707         \- nid: 10\.148\.0\.20@o2ib
708 .
709 .br
710           state: NA
711 .
712 .br
713         \- nid: 10\.148\.0\.25@o2ib
714 .
715 .br
716           state: NA
717 .
718 .br
719
720 .SH SEE ALSO
721 .BR lustre (7)
722