rewrite as overview
[rrq/overlay-boot.git] / README.adoc
1 The overlay-boot Project
2 ========================
3
4 Brief
5 -----
6
7 The *overlay-boot* project implements a "minimalist approach" for
8 dividing a single host into "subhosts" for administratively separated
9 services. The project provides core support for "subhosts" that are
10 independent operating system environments but using overlay root
11 filesystems, and with their services executed with separated
12 namespaces by a common kernel.
13
14 The concept is similar to "containers" and "virtual machines", but
15 with much lighter touch that is aimed at light-weight technical
16 separation of service environments within a common adminstration
17 framework.
18
19  * *overlay-boot* implements a simple and efficient networking
20    principle where networking is achived via network namspaces and
21    virtual cabling. There is an overarching adminstrative control at
22    the host end while the subhosts are adminstrated separately as if
23    they were alone.
24
25  * *overlay-boot* includes support for overlay root filesystem with
26    persistent idividual overlays for the subhosts. This is scripted to
27    be open for any storage solutions, including the sharing of file
28    system subtrees, disk and partition image files and logical volume
29    set ups.
30
31  * *overlay-boot* includes a scripted service oriented "subhost init"
32    procedure that is open for all kinds of service management,
33    including the trivial case of "no services" (as is necessary for
34    installing and configuring the service or services of a subhost).
35
36 A usage example (minimal)
37 -------------------------
38
39 A subhost is techincally defined as a directory that contains three
40 mount points "worK', "root" and "live", and a configuration file with
41 at least a definition of the BASE variable with the pathname of the
42 subhost directory. For convenience, the BASE pathname is understood as
43 relative to its own directory, and thus, if the configuration resides
44 in the subhost directory a simple "BASE=." assignment is a sufficient
45 configuration.
46
47 Refer to the overlay-boot manpage for all the configuration options.
48
49 . The minimal overlay subhost setup
50 ====
51 ----
52 # mkdir /ex1 /ex1/work /ex1/root /ex1/live
53 # echo BASE=. > /ex1/ex1.conf
54 ----
55 ====
56
57 The minimal overlay subhost may then be started with
58 ====
59 ----
60 # overlay-boot /ex1/ex1.conf
61 ----
62 ====
63
64 and it may be stopped with:
65 ====
66 ----
67 # overlay-stop /ex1/ex1.conf
68 ----
69 ====
70
71 The subhost environment may be "entered" with
72 ====
73 ----
74 # overlay-go ex1
75 ----
76 ====
77