0117 review: a holder's service declares no state — the manager's lifecycle is the machine's; a start-only setting's gap on a fresh machine
This commit is contained in:
@@ -70,7 +70,11 @@ with nothing more. Assigning a second is refused, naming the first.
|
|||||||
**What a holder declares** — only what keeps the manager and the mesh from contradicting each
|
**What a holder declares** — only what keeps the manager and the mesh from contradicting each
|
||||||
other:
|
other:
|
||||||
|
|
||||||
- the manager's package, and its service running and enabled at boot;
|
- the manager's package, present — and its service **with no state**: the manager's lifecycle is
|
||||||
|
the machine's. The mesh never starts, stops, enables or disables it, because stopping it takes
|
||||||
|
the link down, and a holder unassigned by mistake — or the wrong holder assigned — must not be
|
||||||
|
able to do that, nor start a second manager beside the one the machine runs. The service is
|
||||||
|
declared only so a change to the holder's settings reaches a *running* manager;
|
||||||
- the manager's own configuration that leaves the resolver file to the mesh (`dns=none` for
|
- the manager's own configuration that leaves the resolver file to the mesh (`dns=none` for
|
||||||
NetworkManager, `nohook resolv.conf` for dhcpcd, and nothing for systemd-networkd, which
|
NetworkManager, `nohook resolv.conf` for dhcpcd, and nothing for systemd-networkd, which
|
||||||
never writes the resolver file);
|
never writes the resolver file);
|
||||||
@@ -103,6 +107,10 @@ them, and the module's `access`, if it needs one, is read-only.
|
|||||||
adopted node the holder's drop-in arrives beside the predecessor's; both say the same thing,
|
adopted node the holder's drop-in arrives beside the predecessor's; both say the same thing,
|
||||||
and the predecessor's is retired by hand after the take, like any other file the mesh
|
and the predecessor's is retired by hand after the take, like any other file the mesh
|
||||||
replaced under another name.
|
replaced under another name.
|
||||||
|
- A setting a manager reads only at its start is not in force until then. On an adopted machine
|
||||||
|
the predecessor's identical line normally already is; on a machine that was not adopted,
|
||||||
|
dhcpcd's resolver hook keeps rewriting the resolver file until dhcpcd next starts, and the
|
||||||
|
operator restarts it once, in a window of their choosing.
|
||||||
- A machine running two managers is found at assignment: the second holder is refused, and the
|
- A machine running two managers is found at assignment: the second holder is refused, and the
|
||||||
operator decides which manager the machine keeps before either module is taken.
|
operator decides which manager the machine keeps before either module is taken.
|
||||||
- Workstations keep joining networks the way they always have. Under NetworkManager and
|
- Workstations keep joining networks the way they always have. Under NetworkManager and
|
||||||
|
|||||||
Reference in New Issue
Block a user