notes/notes-on-s6-init-talk-fosdem17.md
This commit is contained in:
parent
a5447945e1
commit
e907de2deb
|
@ -0,0 +1,67 @@
|
||||||
|
---
|
||||||
|
title: "Notes on Laurent Bercot's talk at FOSDEM 2017"
|
||||||
|
---
|
||||||
|
|
||||||
|
Talk more about s6 and init than s6 and supervision.
|
||||||
|
|
||||||
|
We can get to 100% satisfaction with an init system. Lots of people
|
||||||
|
are still unhappy with their init system though.
|
||||||
|
|
||||||
|
This talk is about design of an init system.
|
||||||
|
|
||||||
|
4 elements:
|
||||||
|
|
||||||
|
- /sbin/init (the startup scripts/programs/processes)
|
||||||
|
- PID 1
|
||||||
|
- process supervision
|
||||||
|
- service management
|
||||||
|
|
||||||
|
These 4 elements don't have to be in the same process.
|
||||||
|
|
||||||
|
02:55
|
||||||
|
|
||||||
|
Process supervision: supervision tree, rooted at pid1.
|
||||||
|
|
||||||
|
"Supervision only applies to daemons" - huh, interesting
|
||||||
|
|
||||||
|
Service management: bring services up/down; More generally, change
|
||||||
|
from one state to another.
|
||||||
|
|
||||||
|
Services: oneshots (short-lived, with side-effects) or longruns
|
||||||
|
(daemons). Have dependencies (enforced by service manager).
|
||||||
|
|
||||||
|
- Ah, a oneshot might be a traditional-init-like "run a program to
|
||||||
|
set things up" so that the service is "running" even though there's
|
||||||
|
no particular process you can point to that *is* the service?
|
||||||
|
|
||||||
|
- 10:30 - Void Linux has only longruns (?) and so "hacks",
|
||||||
|
"longruns that do nothing" are used to emulate oneshots
|
||||||
|
|
||||||
|
05:40
|
||||||
|
|
||||||
|
Ah this is an interesting perspective. Bercot classifies various
|
||||||
|
systems in terms of the 4 elements:
|
||||||
|
|
||||||
|
/sbin/init pid1 supervision svcmgr
|
||||||
|
Integrated init systems
|
||||||
|
(systemd, launchd, upstart) ✓ ✓ ✓ ✓
|
||||||
|
|
||||||
|
sysvinit, BSD init ✓ ✓ ✓
|
||||||
|
- sysv-rc, /etc/rc ✓
|
||||||
|
|
||||||
|
OpenRC ✓
|
||||||
|
|
||||||
|
08:10
|
||||||
|
|
||||||
|
Daemontools family - daemontools (1998!), daemontools-encore, runit,
|
||||||
|
perp, s6 - supervision suites; nosh - suite of tools similar to s6
|
||||||
|
|
||||||
|
09:55
|
||||||
|
|
||||||
|
Supervision suites are not enough - only 1/4 of an init system.
|
||||||
|
|
||||||
|
11:40
|
||||||
|
|
||||||
|
s6: technical aspects
|
||||||
|
|
||||||
|
"reproducible launch environment" even for oneshots
|
Loading…
Reference in New Issue