From: Henrik Heil <hhml@zweipol.net>
Subject: Re: runit and System shutdown
Date: Mon, 30 Jan 2006 21:46:52 +0100 [thread overview]
Message-ID: <43DE7B3C.7080501@zweipol.net> (raw)
In-Reply-To: <20060127101745.GB4010@b491.dyndns.org>
Hi,
> i am using runit 1.0.5 on my Debian/Sarge for all the Daemons except
> postfix. runsvdir-start is run from inittab.
I have a similar setup on 2 servers and was wondering about the right
way to do this.
> To me this sounds like total loss of control. Its quite a
> mess. Is there something i dont understand? Shouldnt there be an
> init-script that does runsvctrl d /var/services/* as the first Action
> in Runlevel 0?
In addition to the the shutdown of runsv, services and logservices in no
particular order I recently noticed that with the default inittab-entry
in runlevel 6:
* sendsigs TERM makes runsvdir exit immediatly, tells all processes to
terminate an waits 5 seconds
* meanwhile SysV-init restarts runsvdir and runsvdir starts all services
* after 5 seconds all services are killed(-9) by sendsigs
I am using this inittab-entry for now:
RT1a:12345:respawn:/usr/sbin/runsvdir-start
RT1b:06:once:/usr/sbin/runsvdir-start
I am not shure about the shutdown-initscript. I was thinking in that
direction but would like to use "svwaitdown -x -t 10 /var/services/*"
because
* it waits for the services to actually stop.
* I believe it guarantees to stop the logservice after the service (is
this correct?).
So an (untested) shutdown-script would be:
kill `pidof runsvdir`
svwaitdown -x -t 10 /var/services/*
(only works if runsvdir does not respawn -- see above)
Apart from the SysV-integration problem with the respawning runsvdir I
think runit does the right thing when the commands receive a TERM signal:
If runsv receives a TERM it acts like runsvctl x.
If runsvdir receives a TERM signal, it exits with 0 immediately.
Even if you don't stop any services I believe it's unlikely that runsv
tries to restart a service before it receives sendsigs TERM and itsself
waits for the service to exit. So if you don't have somthing that takes
more than 5 seconds to stop nothing too bad should happen.
But I am still not too familiar with process supervision an would really
like to hear comments or a recommended way to stop runit under SysV-init
from the experts.
Regards,
Henrik
--
Henrik Heil, zweipol Coy & Heil GbR
http://www.zweipol.net/
next prev parent reply other threads:[~2006-01-30 20:46 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-01-27 10:17 Sascha Hüdepohl
2006-01-30 20:46 ` Henrik Heil [this message]
2006-02-01 10:28 ` Gerrit Pape
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=43DE7B3C.7080501@zweipol.net \
--to=hhml@zweipol.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).