Annotation of embedaddon/quagga/doc/watchquagga.8, revision 1.1

1.1     ! misho       1: .\" This file was originally generated by help2man 1.36.
        !             2: .TH WATCHQUAGGA 8 "July 2010"
        !             3: .SH NAME
        !             4: watchquagga \- a program to monitor the status of quagga daemons
        !             5: .SH SYNOPSIS
        !             6: .B watchquagga
        !             7: .RI [ option ...]
        !             8: .IR daemon ...
        !             9: .br
        !            10: .B watchquagga
        !            11: .BR \-h " | " \-v
        !            12: .SH DESCRIPTION
        !            13: .B watchquagga
        !            14: is a watchdog program that monitors the status of supplied quagga
        !            15: .IR daemon s
        !            16: and tries to restart them in case they become unresponsive or shut down.
        !            17: .PP
        !            18: To determine whether a daemon is running, it tries to connect to the
        !            19: daemon's VTY UNIX stream socket, and send echo commands to ensure the
        !            20: daemon responds. When the daemon crashes, EOF is received from the socket,
        !            21: so that watchquagga can react immediately.
        !            22: .PP
        !            23: This program can run in one of the following 5 modes:
        !            24: .TP
        !            25: .B Mode 0: monitor
        !            26: In this mode, the program serves as a monitor and reports status changes.
        !            27: .IP
        !            28: Example usage: watchquagga \-d zebra ospfd bgpd
        !            29: .TP
        !            30: .B Mode 1: global restart
        !            31: In this mode, whenever a daemon hangs or crashes, the given command is used
        !            32: to restart all watched daemons.
        !            33: .IP
        !            34: Example usage: watchquagga \-dz \e
        !            35: .br
        !            36: -R '/sbin/service zebra restart; /sbin/service ospfd restart' \e
        !            37: .br
        !            38: zebra ospfd
        !            39: .TP
        !            40: .B Mode 2: individual daemon restart
        !            41: In this mode, whenever a single daemon hangs or crashes, the given command
        !            42: is used to restart this daemon only.
        !            43: .IP
        !            44: Example usage: watchquagga \-dz \-r '/sbin/service %s restart' \e
        !            45: .br
        !            46: zebra ospfd bgpd
        !            47: .TP
        !            48: .B Mode 3: phased zebra restart
        !            49: In this mode, whenever a single daemon hangs or crashes, the given command
        !            50: is used to restart this daemon only. The only exception is the zebra
        !            51: daemon; in this case, the following steps are taken: (1) all other daemons
        !            52: are stopped, (2) zebra is restarted, and (3) other daemons are started
        !            53: again.
        !            54: .IP
        !            55: Example usage: watchquagga \-adz \-r '/sbin/service %s restart' \e
        !            56: .br
        !            57: \-s '/sbin/service %s start' \e
        !            58: .br
        !            59: \-k '/sbin/service %s stop' zebra ospfd bgpd
        !            60: .TP
        !            61: .B Mode 4: phased global restart for any failure
        !            62: In this mode, whenever a single daemon hangs or crashes, the following
        !            63: steps are taken: (1) all other daemons are stopped, (2) zebra is restarted,
        !            64: and (3) other daemons are started again.
        !            65: .IP
        !            66: Example usage: watchquagga \-Adz \-r '/sbin/service %s restart' \e
        !            67: .br
        !            68: \-s '/sbin/service %s start' \e
        !            69: .br
        !            70: \-k '/sbin/service %s stop' zebra ospfd bgpd
        !            71: .PP
        !            72: Important: It is believed that mode 2 (individual daemon restart) is not
        !            73: safe, and mode 3 (phased zebra restart) may not be safe with certain
        !            74: routing daemons.
        !            75: .PP
        !            76: In order to avoid restarting the daemons in quick succession, you can
        !            77: supply the
        !            78: .B \-m
        !            79: and
        !            80: .B \-M
        !            81: options to set the minimum and maximum delay between the restart commands.
        !            82: The minimum restart delay is recalculated each time a restart is attempted.
        !            83: If the time since the last restart attempt exceeds twice the value of
        !            84: .BR  \-M ,
        !            85: the restart delay is set to the value of
        !            86: .BR \-m ,
        !            87: otherwise the interval is doubled (but capped at the value of
        !            88: .BR \-M ).
        !            89: .SH OPTIONS
        !            90: .TP
        !            91: .BR \-d ", " \-\-daemon
        !            92: Run in daemon mode. When supplied, error messages are sent to Syslog
        !            93: instead of standard output (stdout).
        !            94: .TP
        !            95: .BI \-S " directory" "\fR, \fB\-\-statedir " directory
        !            96: Set the VTY socket
        !            97: .I directory
        !            98: (the default value is "/var/run/quagga").
        !            99: .TP
        !           100: .BR \-e ", " \-\-no\-echo
        !           101: Do not ping the daemons to test whether they respond. This option is
        !           102: necessary if one or more daemons do not support the echo command.
        !           103: .TP
        !           104: .BI \-l " level" "\fR, \fB\-\-loglevel " level
        !           105: Set the logging
        !           106: .I level
        !           107: (the default value is "6"). The value should range from 0 (LOG_EMERG) to 7
        !           108: (LOG_DEBUG), but higher number can be supplied if extra debugging messages
        !           109: are required.
        !           110: .TP
        !           111: .BI \-m " number" "\fR, \fB\-\-min\-restart\-interval " number
        !           112: Set the minimum
        !           113: .I number
        !           114: of seconds to wait between invocations of the daemon restart commands (the
        !           115: default value is "60").
        !           116: .TP
        !           117: .BI \-M " number" "\fR, \fB\-\-max\-restart\-interval " number
        !           118: Set the maximum
        !           119: .I number
        !           120: of seconds to wait between invocations of the daemon restart commands (the
        !           121: default value is "600").
        !           122: .TP
        !           123: .BI \-i " number" "\fR, \fB\-\-interval " number
        !           124: Set the status polling interval in seconds (the default value is "5").
        !           125: .TP
        !           126: .BI \-t " number" "\fR, \fB\-\-timeout " number
        !           127: Set the unresponsiveness timeout in seconds (the default value is "10").
        !           128: .TP
        !           129: .BI \-T " number" "\fR, \fB\-\-restart\-timeout " number
        !           130: Set the restart (kill) timeout in seconds (the default value is "20"). If
        !           131: any background jobs are still running after this period has elapsed, they
        !           132: will be killed.
        !           133: .TP
        !           134: .BI \-r " command" "\fR, \fB\-\-restart " command
        !           135: Supply a Bourne shell
        !           136: .I command
        !           137: to restart a single daemon. The command string should contain the '%s'
        !           138: placeholder to be substituted with the daemon name.
        !           139: .IP
        !           140: Note that
        !           141: .B \-r
        !           142: and
        !           143: .B \-R
        !           144: options are not compatible.
        !           145: .TP
        !           146: .BI \-s " command" "\fR, \fB\-\-start\-command " command
        !           147: Supply a Bourne shell
        !           148: .I command
        !           149: to start a single daemon. The command string should contain the '%s'
        !           150: placeholder to be substituted with the daemon name.
        !           151: .TP
        !           152: .BI \-k " command" "\fR, \fB\-\-kill\-command " command
        !           153: Supply a Bourne shell
        !           154: .I command
        !           155: to stop a single daemon. The command string should contain the '%s'
        !           156: placeholder to be substituted with the daemon name.
        !           157: .TP
        !           158: .BR \-R ", " \-\-restart\-all
        !           159: When one or more daemons are shut down, try to restart them using the
        !           160: Bourne shell command supplied on the command line.
        !           161: .IP
        !           162: Note that
        !           163: .B \-r
        !           164: and
        !           165: .B \-R
        !           166: options are not compatible.
        !           167: .TP
        !           168: .BR \-z ", " \-\-unresponsive\-restart
        !           169: When a daemon is in an unresponsive state, treat it as being shut down for
        !           170: the restart purposes.
        !           171: .TP
        !           172: .BR \-a ", " \-\-all\-restart
        !           173: When zebra hangs or crashes, restart all daemons taking the following
        !           174: steps: (1) stop all other daemons, (2) restart zebra, and (3) start other
        !           175: daemons again.
        !           176: .IP
        !           177: Note that this option also requires
        !           178: .BR \-r ,
        !           179: .BR \-s ,
        !           180: and
        !           181: .B \-k
        !           182: options to be specified.
        !           183: .TP
        !           184: .BR \-A ", " \-\-always\-all\-restart
        !           185: When any daemon (i.e., not just zebra) hangs or crashes, restart all
        !           186: daemons taking the following steps: (1) stop all other daemons, (2) restart
        !           187: zebra, and (3) start other daemons again.
        !           188: .IP
        !           189: Note that this option also requires
        !           190: .BR \-r ,
        !           191: .BR \-s ,
        !           192: and
        !           193: .B \-k
        !           194: options to be specified.
        !           195: .TP
        !           196: .BI \-p " filename" "\fR, \fB\-\-pid\-file " filename
        !           197: Set the process identifier
        !           198: .I filename
        !           199: (the default value is "/var/run/quagga/watchquagga.pid").
        !           200: .TP
        !           201: .BI \-b " string" "\fR, \fB\-\-blank\-string " string
        !           202: When the supplied
        !           203: .I string
        !           204: is found in any of the command line option arguments (i.e.,
        !           205: .BR \-r ,
        !           206: .BR \-s ,
        !           207: .BR \-k ,
        !           208: or
        !           209: .BR \-R ),
        !           210: replace it with a space.
        !           211: .IP
        !           212: This is an ugly hack to circumvent problems with passing the command line
        !           213: arguments containing embedded spaces.
        !           214: .TP
        !           215: .BR \-v ", " \-\-version
        !           216: Display the version information and exit.
        !           217: .TP
        !           218: .BR \-h ", " \-\-help
        !           219: Display the usage information and exit.
        !           220: .SH SEE ALSO
        !           221: .BR zebra (8),
        !           222: .BR bgpd (8),
        !           223: .BR isisd (8),
        !           224: .BR ospfd (8),
        !           225: .BR ospf6d (8),
        !           226: .BR ripd (8),
        !           227: .BR ripngd (8)
        !           228: .PP
        !           229: See the project homepage at <http://www.quagga.net/>.
        !           230: .SH AUTHORS
        !           231: Copyright 2004 Andrew J. Schorr

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>