Skip to content

Hosting

The tab for people who run a Platform instance or change the resources the estate declares: hosts, DNS records, tunnels, repository settings and credentials. It holds no lore and no feature work. Nerthus.Core's dev hosts are described in Nerthus.Core (until cutover).

A Platform site

A site is one Postgres and the instances that share it; a host is a machine; an instance is one nerthus serve process running one or more roles (the ecosystem map lists them). No production site exists, and no site runs Platform yet: an instance runs on a laptop or in CI.

The estate's resources

Nerthus.Config declares every host, DNS record, tunnel, R2 bucket and GitLab project setting in Nerthus.Infra, records what it last observed, and plans the difference. Drift is reported and never fixed on its own.

  • Read a plan - what each line of a plan means, and when one refuses to apply.

The runbooks

Each runbook is one situation and its procedure.

  • Add a read host - a host declared into a site with an instance that serves reads, and the tunnel replica that follows from it.
  • Adopt a host - a rented machine made a host of the estate: its key confirmed at the console, the agent installed, its identity minted there, its row declared.
  • Apply from the laptop - the bootstrap way of changing the estate's resources, what it refuses before it acts, and the branch it leaves.
  • Build and destroy a ceremony box - the throwaway machine a root credential is rotated on, the three properties that make it one, and the hash that proves them.
  • Mint the Cloudflare token - the one scoped token nerthus-config reads Cloudflare with, and why the account token is not it.
  • Move a site's pin - the image a site runs, moved forward by a merge request, and why a rollback is a higher version rather than an older digest.
  • Read a dead-man alert - what the three messages mean, what the status codes behind them say, and what to check when the webhook itself has gone quiet.
  • Reach a host when the mesh is down - the admin tunnel behind Cloudflare Access, the one command that opens it, and the trap that looks like a mail problem.
  • Retire a host - the agent taken off a machine and its row, key and edge removed from the declaration, for the next plan to delete.
  • Rotate a root credential - the account logins and the recovery identity, which live outside the vault and rotate by hand.

Under Nerthus.Core (until cutover)

These runbooks keep Core's dev hosts running and are deleted with Core.

See also