You are not logged in.
I have used daemontools quite extensively, and for quite a while.
I am curious if runit is worth switching over to, and how it compares to tried and true daemontools.
I am considering it, due to daemontools not being very well supported in some cases.
Does anyone have real world experience with both runit and daemontools, and could provide a comparison?
Is it worth switching, or is daemontools still the best option out there?
Last edited by cactus (2011-03-17 20:38:37)
"Be conservative in what you send; be liberal in what you accept." -- Postel's Law
"tacos" -- Cactus' Law
"t̥͍͎̪̪͗a̴̻̩͈͚ͨc̠o̩̙͈ͫͅs͙͎̙͊ ͔͇̫̜t͎̳̀a̜̞̗ͩc̗͍͚o̲̯̿s̖̣̤̙͌ ̖̜̈ț̰̫͓ạ̪͖̳c̲͎͕̰̯̃̈o͉ͅs̪ͪ ̜̻̖̜͕" -- -̖͚̫̙̓-̺̠͇ͤ̃ ̜̪̜ͯZ͔̗̭̞ͪA̝͈̙͖̩L͉̠̺͓G̙̞̦͖O̳̗͍
Offline
Can't help, but have you come to a conclusion on your own to your own question? Just curious.
Offline
So far I have just stuck with daemontools. The evil you know, so to speak.
I keep thinking about just giving runit a try on one system and see how I like it, but I haven't done so yet.
"Be conservative in what you send; be liberal in what you accept." -- Postel's Law
"tacos" -- Cactus' Law
"t̥͍͎̪̪͗a̴̻̩͈͚ͨc̠o̩̙͈ͫͅs͙͎̙͊ ͔͇̫̜t͎̳̀a̜̞̗ͩc̗͍͚o̲̯̿s̖̣̤̙͌ ̖̜̈ț̰̫͓ạ̪͖̳c̲͎͕̰̯̃̈o͉ͅs̪ͪ ̜̻̖̜͕" -- -̖͚̫̙̓-̺̠͇ͤ̃ ̜̪̜ͯZ͔̗̭̞ͪA̝͈̙͖̩L͉̠̺͓G̙̞̦͖O̳̗͍
Offline
Ran across this.
http://rubyists.github.com/2011/05/02/r … -else.html
Guess it is time to give runit a try!
"Be conservative in what you send; be liberal in what you accept." -- Postel's Law
"tacos" -- Cactus' Law
"t̥͍͎̪̪͗a̴̻̩͈͚ͨc̠o̩̙͈ͫͅs͙͎̙͊ ͔͇̫̜t͎̳̀a̜̞̗ͩc̗͍͚o̲̯̿s̖̣̤̙͌ ̖̜̈ț̰̫͓ạ̪͖̳c̲͎͕̰̯̃̈o͉ͅs̪ͪ ̜̻̖̜͕" -- -̖͚̫̙̓-̺̠͇ͤ̃ ̜̪̜ͯZ͔̗̭̞ͪA̝͈̙͖̩L͉̠̺͓G̙̞̦͖O̳̗͍
Offline
opinions and observations so far:
runit's runsvdir only shows the stderr from a ./service/run script in the proctitle ps output. I found this an odd difference, as daemontool's readproctitle shows both stdout and stderr.
similarly runsv redirects only the stdout to a log service running via ./service/log/run, not the stderr (this goes to readproctitle). This was also somewhat unexpected. Granted it is very common if you are using a logging service to redirect stderr to stdout with an `exec 2>&1` at the start of a ./service/run script...but I still found it another oddity.
runit has a cool hack for process dependency support.
#!/bin/sh
set -e
sv -w7 check postgresql
exec some/app/with/a/dep/on/postgresql
runit's sv adds a service name argument to the path to the SVDIR for you. So you can be anywhere and say `sv up serviceName` and `/etc/service/serviceName/run` is started. daemontool's svc requires the full path to the service directory such as `svc -u /etc/service/serviceName`.
runit's sv has a few more signals it can send a supervised process for you (sigusr1,2, quit, etc) as apposed to daemontool's svc
instead of separate programs for setuidgid, setenvgid, etc.. like daemontools has, runit has a single chpst command that accepts arguments to achieve the same goals
runit's sv status output is much nicer/far more informative
runit's has man pages!
Last edited by cactus (2011-05-13 04:01:21)
"Be conservative in what you send; be liberal in what you accept." -- Postel's Law
"tacos" -- Cactus' Law
"t̥͍͎̪̪͗a̴̻̩͈͚ͨc̠o̩̙͈ͫͅs͙͎̙͊ ͔͇̫̜t͎̳̀a̜̞̗ͩc̗͍͚o̲̯̿s̖̣̤̙͌ ̖̜̈ț̰̫͓ạ̪͖̳c̲͎͕̰̯̃̈o͉ͅs̪ͪ ̜̻̖̜͕" -- -̖͚̫̙̓-̺̠͇ͤ̃ ̜̪̜ͯZ͔̗̭̞ͪA̝͈̙͖̩L͉̠̺͓G̙̞̦͖O̳̗͍
Offline