supervision - discussion about system services, daemon supervision, init, runlevel management, and tools such as s6 and runit
 help / color / mirror / Atom feed
From: Bernhard Graf <list-supervision@augensalat.de>
To: supervision@list.skarnet.org
Subject: Re: using runit as init
Date: Thu, 10 Jan 2008 09:39:31 +0100	[thread overview]
Message-ID: <200801100939.31805.list-supervision@augensalat.de> (raw)
In-Reply-To: <20080109233504.GW19934@utopia.intra.guy>

KORN Andras wrote:

> > I would like to just link init scripts into runsvdir's directory,
> > so they are started automatically. But as we know init scripts
> > terminate and runsv would restart them immediately. I'd like to
> > have a non-respawn mode for runsv.
>
> So have your script remove the symlink to the directory that contains
> it from /service before it exits (or in ./finish).

In the sense of self-modifying code? No, thanks!

> > Having all this it would be simple to convert the links in
> > directories /etc/init.d/rc[0123456S].d into correspondig links
> > in /etc/runit/runsvdir/[0123456S] and replace
> > init-daemon-install-tools like chkconfig or insserv by
> > runit-compliant versions.
> > So no need to change all daemons with those init.d start-stop
> > scripts. Even those that are installed later would continue to
> > work.
>
> I think this is a misguided attempt to provide "uniformity".
> Traditional initscript are quite horrible; I invite you to read, for
> example, Ubuntu's apache2 initscript and be appalled at all the
> unnecessary complexity and race conditions galore.

I'm not advocating init scripts. Compared to daemontools scripts they 
really suck. As I already wrote several times I'm looking for a way to 
replace traditional init by something than *can* supervise but also 
handles the old init scripts correctly.

> One of the chief motivations for switching away from an init-like
> system, where services daemonise, to a runit-like system where they
> are supervised by their parent process is, or at least should be, the
> desire to get away from those race conditions and the fragility of it
> all. To get away from pid lotto.
>
> What reason would justify importing that mess into this clean new
> service supervision and system startup scheme?

I really like the way runit works. I'm a long time user of DJBware and 
know the concept of daemontools quite well.
Maybe I'd be happy with /package too.

But I'm a lazy boy, using a widely accepted Linux distribution saves me 
a lot of time. Therefore I want a drop-in replacement for SysV init.
Most people are like me. And that's the reason why most people stick 
with archaic software like SysV init. Give them an alternative that 
simply works in their current environment and is better / cleaner / 
smaller, and more developers / package maintainers would start putting 
daemontools-like run scripts into their packages, saving you the work 
of adjusting your setup on every host over and over again.

-- 
Bernhard Graf


      reply	other threads:[~2008-01-10  8:39 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-03 20:51 Bernhard Graf
2008-01-04  0:22 ` Mike Buland
2008-01-05  0:06   ` Bernhard Graf
     [not found]   ` <12EC84FDD73F4BD8A78E7501EB19F1E2@home.internal>
2008-01-05  7:45     ` rehan khan
2008-01-05 23:17       ` Bernhard Graf
2008-01-08  7:11         ` Vincent Danen
2008-01-08 22:28           ` Bernhard Graf
2008-01-09  2:05             ` Vincent Danen
2008-01-09 23:06               ` Bernhard Graf
2008-01-09 23:34                 ` Mike Buland
2008-01-09 23:51                   ` Charlie Brady
2008-01-10  9:22                     ` Bernhard Graf
2008-01-10  9:20                   ` Bernhard Graf
2008-01-10 20:06                     ` Mike Buland
2008-01-11  7:58                       ` Bernhard Graf
2008-01-11 14:30                         ` Mike Buland
2008-01-12 10:18                           ` Bernhard Graf
2008-01-12 17:13                             ` supervising (Re: using runit as init) Charlie Brady
2008-01-12 17:32                               ` supervising mysql (Re: supervising (Re: using runit as init)) Charlie Brady
2008-01-13  4:40                             ` using runit as init Vincent Danen
2008-01-13 15:36                               ` Charlie Brady
2008-01-13 18:28                                 ` Mike Buland
2008-01-13 18:39                                   ` Charlie Brady
2008-01-13 18:49                                     ` Mike Buland
2008-01-14  3:55                                       ` Vincent Danen
2008-01-14 15:11                                         ` Charlie Brady
2008-01-14 15:21                                           ` Vincent Danen
     [not found]                                     ` <6A64B0D384404190ACB76E0A376CD148@home.internal>
2008-01-13 21:06                                       ` rehan khan
2008-01-14  3:53                                 ` Vincent Danen
     [not found]                             ` <CDFFB8AF013F4762AE02CF6A1BDCB27A@home.internal>
2008-01-13 10:35                               ` rehan khan
2008-01-14  3:50                                 ` Vincent Danen
2008-01-13 18:52                             ` Mike Buland
     [not found]                     ` <85040AD9CA634253A8FDB9F7DA6BD200@home.internal>
2008-01-10 22:08                       ` rehan khan
2008-01-11  1:28                         ` Charlie Brady
     [not found]                   ` <C1A5323F485E4A75B75ADB58B664E35E@home.internal>
2008-01-10 21:56                     ` rehan khan
2008-01-09 23:35                 ` KORN Andras
2008-01-10  8:39                   ` Bernhard Graf [this message]

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=200801100939.31805.list-supervision@augensalat.de \
    --to=list-supervision@augensalat.de \
    --cc=supervision@list.skarnet.org \
    /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).