diff options
author | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-08-09 20:32:44 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-08-09 20:32:44 +0200 |
commit | f790234f2ff2e1d6c7a230e5c1d9dac280a12d44 (patch) | |
tree | b4815bc05f3bc7f54ebf39c773af30cce3a5d19a /doc | |
parent | Merge pull request #942 from lunn/eigrpd-debug (diff) | |
parent | watchfrr: print specific error for removed options (diff) | |
download | frr-f790234f2ff2e1d6c7a230e5c1d9dac280a12d44.tar.xz frr-f790234f2ff2e1d6c7a230e5c1d9dac280a12d44.zip |
Merge pull request #892 from opensourcerouting/watchfrr-simplify
simplify watchfrr, add --terminal, improve startup logging
Diffstat (limited to 'doc')
-rw-r--r-- | doc/watchfrr.8.in | 166 |
1 files changed, 45 insertions, 121 deletions
diff --git a/doc/watchfrr.8.in b/doc/watchfrr.8.in index 82098e1b0..782ac7b46 100644 --- a/doc/watchfrr.8.in +++ b/doc/watchfrr.8.in @@ -20,59 +20,6 @@ daemon's VTY UNIX stream socket, and send echo commands to ensure the daemon responds. When the daemon crashes, EOF is received from the socket, so that watchfrr can react immediately. .PP -This program can run in one of the following 5 modes: -.TP -.B Mode 0: monitor -In this mode, the program serves as a monitor and reports status changes. -.IP -Example usage: watchfrr \-d zebra ospfd bgpd -.TP -.B Mode 1: global restart -In this mode, whenever a daemon hangs or crashes, the given command is used -to restart all watched daemons. -.IP -Example usage: watchfrr \-dz \e -.br --R '/sbin/service zebra restart; /sbin/service ospfd restart' \e -.br -zebra ospfd -.TP -.B Mode 2: individual daemon restart -In this mode, whenever a single daemon hangs or crashes, the given command -is used to restart this daemon only. -.IP -Example usage: watchfrr \-dz \-r '/sbin/service %s restart' \e -.br -zebra ospfd bgpd -.TP -.B Mode 3: phased zebra restart -In this mode, whenever a single daemon hangs or crashes, the given command -is used to restart this daemon only. The only exception is the zebra -daemon; in this case, the following steps are taken: (1) all other daemons -are stopped, (2) zebra is restarted, and (3) other daemons are started -again. -.IP -Example usage: watchfrr \-adz \-r '/sbin/service %s restart' \e -.br -\-s '/sbin/service %s start' \e -.br -\-k '/sbin/service %s stop' zebra ospfd bgpd -.TP -.B Mode 4: phased global restart for any failure -In this mode, whenever a single daemon hangs or crashes, the following -steps are taken: (1) all other daemons are stopped, (2) zebra is restarted, -and (3) other daemons are started again. -.IP -Example usage: watchfrr \-Adz \-r '/sbin/service %s restart' \e -.br -\-s '/sbin/service %s start' \e -.br -\-k '/sbin/service %s stop' zebra ospfd bgpd -.PP -Important: It is believed that mode 2 (individual daemon restart) is not -safe, and mode 3 (phased zebra restart) may not be safe with certain -routing daemons. -.PP In order to avoid restarting the daemons in quick succession, you can supply the .B \-m @@ -87,6 +34,36 @@ the restart delay is set to the value of otherwise the interval is doubled (but capped at the value of .BR \-M ). .SH OPTIONS +The following 3 options specify scripts that +.B watchfrr +uses to perform start/stop/restart actions. These options are mandatory +unless the +.B --dry +option is used: +.TP +.BI \-s " command" "\fR, \fB\-\-start\-command " command +Supply a Bourne shell +.I command +to start a single daemon. The command string should contain the '%s' +placeholder to be substituted with the daemon name. +.TP +.BI \-k " command" "\fR, \fB\-\-kill\-command " command +Supply a Bourne shell +.I command +to stop a single daemon. The command string should contain the '%s' +placeholder to be substituted with the daemon name. +.TP +.BI \-r " command" "\fR, \fB\-\-restart " command +Supply a Bourne shell +.I command +to restart a single daemon. The command string should contain the '%s' +placeholder to be substituted with the daemon name. +.PP +Other options: +.TP +.BI \-\-dry +Run watchfrr in "dry-run" mode, only monitoring the specified daemons but not +performing any start/stop/restart actions. .TP .BR \-d ", " \-\-daemon Run in daemon mode. When supplied, error messages are sent to Syslog @@ -97,10 +74,6 @@ Set the VTY socket .I directory (the default value is "/var/run/frr"). .TP -.BR \-e ", " \-\-no\-echo -Do not ping the daemons to test whether they respond. This option is -necessary if one or more daemons do not support the echo command. -.TP .BI \-l " level" "\fR, \fB\-\-loglevel " level Set the logging .I level @@ -131,68 +104,6 @@ Set the restart (kill) timeout in seconds (the default value is "20"). If any background jobs are still running after this period has elapsed, they will be killed. .TP -.BI \-r " command" "\fR, \fB\-\-restart " command -Supply a Bourne shell -.I command -to restart a single daemon. The command string should contain the '%s' -placeholder to be substituted with the daemon name. -.IP -Note that -.B \-r -and -.B \-R -options are not compatible. -.TP -.BI \-s " command" "\fR, \fB\-\-start\-command " command -Supply a Bourne shell -.I command -to start a single daemon. The command string should contain the '%s' -placeholder to be substituted with the daemon name. -.TP -.BI \-k " command" "\fR, \fB\-\-kill\-command " command -Supply a Bourne shell -.I command -to stop a single daemon. The command string should contain the '%s' -placeholder to be substituted with the daemon name. -.TP -.BR \-R ", " \-\-restart\-all -When one or more daemons are shut down, try to restart them using the -Bourne shell command supplied on the command line. -.IP -Note that -.B \-r -and -.B \-R -options are not compatible. -.TP -.BR \-z ", " \-\-unresponsive\-restart -When a daemon is in an unresponsive state, treat it as being shut down for -the restart purposes. -.TP -.BR \-a ", " \-\-all\-restart -When zebra hangs or crashes, restart all daemons taking the following -steps: (1) stop all other daemons, (2) restart zebra, and (3) start other -daemons again. -.IP -Note that this option also requires -.BR \-r , -.BR \-s , -and -.B \-k -options to be specified. -.TP -.BR \-A ", " \-\-always\-all\-restart -When any daemon (i.e., not just zebra) hangs or crashes, restart all -daemons taking the following steps: (1) stop all other daemons, (2) restart -zebra, and (3) start other daemons again. -.IP -Note that this option also requires -.BR \-r , -.BR \-s , -and -.B \-k -options to be specified. -.TP .BI \-p " filename" "\fR, \fB\-\-pid\-file " filename Set the process identifier .I filename @@ -204,9 +115,8 @@ When the supplied is found in any of the command line option arguments (i.e., .BR \-r , .BR \-s , -.BR \-k , or -.BR \-R ), +.BR \-k ), replace it with a space. .IP This is an ugly hack to circumvent problems with passing the command line @@ -217,6 +127,20 @@ Display the version information and exit. .TP .BR \-h ", " \-\-help Display the usage information and exit. +.SH PREVIOUS OPTIONS +Prior versions of \fBwatchfrr\fR supported some additional options that no +longer exist: +.IP +.BR \-a ,\ \-A ,\ \-e ,\ \-R ,\ \-z +.PP +The \fB-a\fR, \fB-A\fR and \fB-R\fR options were used to select alternate +monitoring modes that offered different patterns of restarting daemons. The +"correct" mode (phased restart) is now the default. The \fB-e\fR and \fB-z\fR +options used to disable some monitoring aspects, watchfrr now always has all +monitoring features enabled. +.PP +Removing these options should result in correct operation, if it does not +please file a bug report. .SH SEE ALSO .BR zebra (8), .BR bgpd (8), |