Commit Graph

11 Commits

Author SHA1 Message Date
vivek
0905eabe10 Quagga: Display useful info when doing service quagga status
Ticket: CM-7132
Reviewed By: CCR-3461
Testing Done: the usual

Today, 'service quagga status' merely sets the return code and nothing
more. Like other services, it'd be good to print some useful output as
well.

Example output:
    cumulus@top1$ sudo service quagga status ospfd
    [ ok ] ospfd-1 is running.
    [ ok ] ospfd-2 is running.
    cumulus@top1$ sudo service quagga status
    [ ok ] zebra is running.
    [ ok ] ospfd-1 is running.
    [ ok ] ospfd-2 is running.
    [ ok ] ospf6d is running.
    cumulus@top1$ sudo service quagga status
    [ ok ] zebra is running.
    [ ok ] ospfd-1 is running.
    [FAIL] ospfd-2 is not running ... failed!
    [ ok ] ospf6d is running.
    cumulus@top1$ echo $?
    1
    cumulus@top1$

Signed-off-by: Dinesh G Dutt <ddutt@cumulusnetworks.com>
Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>
2015-10-20 22:09:58 -07:00
Daniel Walton
18b7046a93 'service quagga reload' is no longer experimental
Ticket: CM-7305
Reviewed By: sharpd@cumulusnetworks.co
Testing Done:
2015-09-01 09:58:50 -07:00
Donald Sharp
54f41f07b7 Call of quagga-reload.py does not return error code 2015-07-22 12:35:37 -07:00
Donald Sharp
b9d9b73d58 quagga-fix-stop-vty.patch
When stopping quagga, we do not wait for quagga to
finish shutting down before we start attempting
to delete the sockets for the various protocols.
2015-07-22 12:35:36 -07:00
Donald Sharp
71e7cd63d4 watchquagga-mode-3-fix.patch
Watchquagga: In phased restart with zebra, invoke restart all when zebra dies

To correctly handle starting and stopping of individual daemons not affecting
watchquagga's monitoring, we resorted to fixing up watchquagga's daemon watch
list every time a daemon was started or stopped. This was done by restarting
watchquagga itself. This meant the handling of phased restart of individual
daemons was broken in watchquagga as it attempted to stop daemons individually
before starting them all individually. Fix this by restarting all when this
happens. This does make mode 4 indistinguishable from mode 1, but I don't
understood the point of mode 4 and we don't think users change watchquagga
modes.

Signed-off-by: Dinesh G Dutt <ddutt@cumulusnetworks.com>
2015-07-22 12:35:36 -07:00
Donald Sharp
f8971778ad quagga: quagga-startup-fds.patch
Setup default number of filedescriptors allowed in quagga defaults and ulimit calls
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Reviewed-by:
2015-05-19 18:29:16 -07:00
Donald Sharp
2b1ce39c22 initd-status.patch
Add support for service quagga status.

As per LSB initscript status code definitions, support is added for
querying status of quagga. All daemons supposed to have been enabled, will
be checked as running and if any one of them is found to be not running, the
appropriate status code is returned.

Note that if watchquagga is running, a status indicating a problem maybe a
trasient problem because watchquagga will start back an unresponsive or dead
process.
http://refspecs.linuxbase.org/LSB_4.1.0/LSB-Core-generic/LSB-Core-generic/iniscrptact.html
2015-05-19 18:04:13 -07:00
Donald Sharp
2fc76430f4 initd-reload.patch
init.d: Add reload option

Add an option to apply only modifications to running configuration from the
specified configuration file. The default modification file is
/etc/quagga/Quagga.conf. A new script, quagga-reload.py, has been added to
the tools directory.
2015-05-19 18:04:11 -07:00
Donald Sharp
759a13f3cc If the .conf file for a process is missing have /etc/init.d/quagga touch it so we can start the process 2015-05-19 18:03:46 -07:00
Donald Sharp
8c5fbd4858 initd: initd-mi.patch
Support Multi-Instance protocol daemons initd

OSPFd is the first of the multi-instance daemons. This patch allows the
starting, stopping, restarting and monitoring of multiple instances of
the same protocol daemon.

Multiple instances are specified in the daemons file using a new variable:
ospfd_instances="1,2"

Absence of this variable means ospfd will start in legacy, single instance
mode. The original "ospfd=yes" line is still required.

Daemons are started with the "-n <instance>" option. Each daemon is named
"<daemon>-<instance>", for example "ospfd-1", "ospfd-2" etc. Similarly,
pid files are ospfd-1.pid and vty files are named ospfd-1.vty.

We're also introducing a new file, /etc/default/quagga to store the
default value for the maximum instances associated with a daemon.

watchquagga and others are unmodified and everything else just works once
this code is in place.

The code has been enhanced to support restarting watchquagga with only the
updated daemons when an individual daemon is stopped or started. For example,
without this patch, stopping just bgpd would terminate watchquagga even if
ospfd and zebra are still running. Similarly, starting just bgpd when ospfd
and zebra are running wouldn't update watchquagga to include bgpd. Furthermore,
when the daemons file is modified and a daemon is no longer deemed necessary
and quagga restarted, the daemon is not killed. For example, switching
ospfd=yes to ospfd=no and restarting the quagga will leave ospfd daemon
running. This case is also fixed with this patch.

However, adding a new instance to the ospfd_instances file and starting
just that instance will start just that instance and add it to watchquagga.
Similarly, a single instance maybe stopped or restarted.

Caveat emptor: With multi-instance daemons, stopping a single instance and then
starting a different instance will cause all instances to be monitored by
watchquagga i.e. all instances will be restarted, if necessary.

Signed-off-by: Dinesh G Dutt <ddutt at cumulusnetworks.com>
2015-05-19 18:03:41 -07:00
Donald Sharp
4d91638215 Debian Packaging Files
This is the collection of Debian packaging files used to compile
our code
2015-05-19 16:26:49 -07:00