Forgotten attachment -.-

On Sun, Mar 13, 2016 at 02:38:25PM +0800, Casper Ti. Vector wrote:
> The lecture was given last evening, and was fairly successful (mainly
> except for low-level things I do not understand well and details I am
> not sufficiently familiar with, and an exceedingly terrible control of
> lecture length).
> 
> Attached is the finally used version of the outline; the example config
> tarball is unchanged.  Additionally, a virtualbox image of the example
> setup can be downloaded from:
> <https://drive.google.com/file/d/0B3FGvKEMCkmXeG5sZWMwOHhOX0k/>.
> 
> Do note that the logging config in the example is strongly unrecommended
> for a production setup: most importantly, services (except for ucspilogd
> and kmsg) do not have dedicated loggers, and the logs are all stored
> in tmps just like the catch-all logger.  (This paragraph is mostly
> equivalent to what I mean for the "Coarseness of logging setup in the
> example" in the outline).

-- 
My current OpenPGP key:
RSA4096/0x227E8CAAB7AA186C (expires: 2020.10.19)
7077 7781 B859 5166 AE07 0286 227E 8CAA B7AA 186C

1  Useful concepts

        1.1  System initialisation
                1.1.1  Chainloading
                1.1.2  Requirements and properties of PID 1
                        1.1.2.1  Functional requirements: longruns and oneshots
                        1.1.2.2  Signal handling
                        1.1.2.3  exit() and exec()
                1.1.3  Aside: history of init [init-hist]

        1.2  Process supervision
                1.2.1  Requirements [s6-ov]
                        1.2.1.1  Auto restart
                        1.2.1.2  Be itself supervised
                                # The need to be rooted in PID 1
                        1.2.1.3  Reproducable environment
                                # More of a consequence rather than a 
requirement
                1.2.2  Main choices
                        1.2.2.1  No supervision, or with PID files, or with
                                 /etc/inittab and /etc/ttys
                        1.2.2.2  monit and supervisord; upstart and systemd
                        1.2.2.3  daemontools(-encore), runit, perp, s6 and nosh
                1.2.3  Aside: the supervision mail list [sv-ml]

        1.3  Notification without running a service [ftrig]

2  Anatomy of s6 / s6-rc

        2.1  Process supervisior: s6-supervise and s6-svscan
                2.1.1  Configuration and runtime control [s6-ov]
                2.1.2  Readiness notification
                2.1.3  Chainloading and execline

        2.2  Service manager: s6-rc
                2.2.1  Interfaces provided by s6-rc
                2.2.2  Service directory deployment
                2.2.3  Why no OR dependencies for now [or-dep]
                        # Compare with "opportunist dependencies"

        2.3  Service logging
                2.3.1  s6-svscan as init: the fd-holding black magic [magic]
                2.3.2  s6-fdholder
                        # Restart of s6-fdholder [fh-restart]
                2.3.3  s6-log and ucspilogd
                        # /dev/log: SOCK_STREAM and SOCK_DGRAM [log-dgram]
                2.3.4  The good parts of "socket activation" [s6-sa]

        2.4  The DJB legacy and the Plan 9 spirit [djb]
                2.4.1  File system as the channel
                2.4.2  library organisation, eg. buffer.h <-> bio.h
                2.4.3  A glance at the source code

3  A simplified example of s6 / s6-rc deployment

        3.1  s6-linux-init and "refined" phases of init
                # Platform-dependency of stage 1
        3.2  "Runlevel" emulation with s6-rc
        3.3  `emptyenv -p' with setproctitle; `./nosetsid' with dcron
        3.4  Shuffling of fd in ucspilogd's `./run'
        3.5  Coarseness of logging setup in the example
        3.6  Instanced supervision
                # A hybrid of execline and shell? [el-hybrid]
        3.7  Aside: comparison of init scripts [run-comp]

--

[djb] <http://skarnet.org/software/skalibs/djblegacy.html>
[el-hybrid] <http://skarnet.org/cgi-bin/archive.cgi?
                    2:msp:1131:jgoekjpfpjmfnefbkcob>
[fh-restart] <http://skarnet.org/cgi-bin/archive.cgi?
                     2:mss:1107:klkgaflanpnghddcjfej>
[ftrig] <http://skarnet.org/software/s6/ftrig.html>
[init-hist] <http://blog.darknedgy.net/technology/2015/09/05/0/>
            <http://arxiv.org/pdf/0706.2748v2.pdf>
[log-dgram] <http://www.openwall.com/lists/musl/2015/08/10/1>
[magic] <http://skarnet.org/software/s6/s6-svscan-1.html#log>
[run-comp] <http://homepage.ntlworld.com/jonathan.deboynepollard/FGA/
                   run-scripts-and-service-units-side-by-side.html>
[or-dep] <http://skarnet.org/cgi-bin/archive.cgi?
                 2:msp:1063:blhpkmcfbdgbjkmbbckm>
[s6-sa] <http://skarnet.org/software/s6/socket-activation.html>
[s6-ov] <http://skarnet.org/software/s6/overview.html>
[sv-ml] <http://skarnet.org/lists.html>

Reply via email to