Repository navigation
Description
ADR-0027
deferred Proxmox Backup Server on a single argument: a hypervisor backing up
its own guests to itself is not a backup, there was nowhere off-host to send
it, and PVE already does the snapshots a local-only answer would need — so PBS
would add a service for a capability that already exists.
#268 closed on that decision.
The deferral named its own trigger, and the trigger has fired. The roadmap
states it precisely: "PBS follows the NAS answering on 10.0.40.30, not the
box arriving." smaug has answered on 10.0.40.30 since 2026-09-16.
This issue exists so that a fired trigger with a closed tracker does not become
an accepted ADR nobody acts on — which is the failure mode
#101 was filed against, and the
same shape that left the NAS purchase untracked when #95 closed on its decision.
What has to be re-read, not just executed
ADR-0027 designed its sync job against a Linux host. Two things changed under it:
smaugruns TrueNAS
(ADR-0040),
not the Ubuntu Server ADR-0016 chose.build-the-nas.md§8 states the
consequence: "ADR-0027's PBS, whose sync job wants another PBS instance — on
TrueNAS that is PBS in a VM or a change to an NFS/SMB datastore." Those are
materially different answers. A PBS VM on a NAS with 8 GB of ECC and one DIMM
in four slots is a real resource question; an NFS or SMB datastore is not the
verified, deduplicated, chunk-addressed thing PBS's sync job was chosen for.- There is still nowhere to send it. The pool
erebordoes not exist — the
two Exos X20 drives have not landed. So the trigger has fired while the
blocker has not cleared, and saying that plainly is the point: the work is
unblocked in reasoning and blocked in storage.
ADR-0029 also gives PBS no disk on Saruman's pool, on the grounds that "there
is nothing to give it yet" — which becomes untrue on the day this is built, and
is part of the same re-read.
What it needs
- Re-read ADR-0027 against TrueNAS and decide: PBS in a VM on
smaug, an
NFS/SMB datastore, or a superseding ADR saying PBS is not the answer here
at all. ADRs are not edited (ADR-0001), so whichever it is gets recorded
as an amendment note or a new record. → Decided 2026-09-23: ADR-0053 (docs(adr): run PBS on Saruman with its datastore on smaug over NFS (#… #659), PBS onSarumanasgolem, datastore onerebor/pbsover NFSv4. - If a VM: size it against 8 GB of ECC with one of four DIMM slots filled,
and say what gives way. If a datastore: say what is lost relative to the
sync job ADR-0027 specified, rather than letting it be assumed equivalent. - Give PBS a disk on
Saruman's pool, which ADR-0029 deliberately withheld. - A firewall rule, almost certainly —
Sarumanon VLAN 30 reaching in to
10.0.40.30. That is the same shape as
#446's ISO-store rule and
should be ordered and verified the same way: above Block access to
CasaBonita, checked frommorpheusrather than from the UI. - Say what is backed up and what is not. The lab has revert and not
backup until this lands, and ADR-0027 names what changes when it does.
Blocked on the pool. Tracked under
#413.
Found reconciling the tracker against the smaug build. Successor to #268,
which closed on the decision rather than on the work.
Corrected 2026-09-19
Point 2 is false now: "there is still nowhere to send it — the pool erebor does not exist." It exists, ONLINE, 18 TB usable (#522). ADR-0027's blocker and its trigger have both cleared, so this is a decision plus a build, and nothing gates it.
The substantive question stands: PBS in a VM on 8 GB ECC versus an NFS/SMB datastore on smaug, which are not equivalent to ADR-0027's sync job. Moved to the Saruman milestone: it wants a disk on Saruman's pool that ADR-0029 withheld — which #527 is about to create — and a Saruman → smaug rule of the same shape as #446's. roadmap.md's ADR-0027 paragraph carries the pre-pool wording; the docs PR from this pass fixes it.
Activity
Merge origin/main (#652, #658) into #485; README counts 53 ADRs
docs(readme): count 35 runbooks, with build-the-backup-guest.md (#485)
Gerrrt commentedon Sep 26, 2026
2026-09-26: Decided on 2026-09-23. ADR-0053 (#659) runs PBS on
Sarumanasgolem(10.0.30.80), with its datastore onerebor/pbsover NFSv4 and TrueNAS snapshots as the copy it can't prune. The runbook isbuild-the-backup-guest.md(#662). That settles the first box above, and the 8 GB sizing box is moot because nothing runs onsmaug.What's left is the build: the guest, the dataset and share, the
2049pass onmorpheus, and a verify job. The 2026-09-19 correction's "erebor… ONLINE" no longer holds. The pool has been DEGRADED since #558, and the runbook accepts starting on one disk. The domain now exists (#414), sogolemhas guests to protect.docs(backup): golem built on the network diagram; its key copies mark…
fix(lab): PBS_ENCRYPTION_KEY is one quoted line; §10 exports before i…
docs(backup): golem's agent reports and its key is copied; nine Alloy…
feat(lab): give golem its own token at the ingest proxy (#485) (#896)
docs(network): alexander is refused on golem's 2049 pass (#485)
docs(backup): golem is built and proved; the runbook's ACL fixed (#485)…
docs(changelog): remove the conflict markers the last merge committed (…
fix(backup): read encryption from crypt modes, and notice a missing v…
feat(backup): publish what golem's PBS last did, and seven lab rules …
feat(secrets): the lab's secrets open with the offline second too, an…