summaryrefslogtreecommitdiff
path: root/f3s/freebsd-hosts
AgeCommit message (Collapse)Author
2026-07-20f3s zusb README: note AWS CLI dependency for the backup's S3 sync legPaul Buetow
The quarterly backup script travels on the pool; its S3 sync needs awscli + /root/.aws/credentials symlink to /opt/snonux/secrets/aws.credentials on the hosting f-host. Snapshot export still works without it; only the offsite S3 sync is skipped.
2026-07-20f3s: add zusb removable backup pool scripts (zusb-load/zusb-unload)Paul Buetow
4-disk raidz2 USB-SATA pool used as offline backup storage, loaded ~once per quarter. Migrated from t450 to the f3s USB-key scheme: zusb/data/enc rekeyed from passphrase to a raw key on the F3S_KEYS sticks at /keys/zusb.key. Scripts + key deployed to all f-hosts (f0/f1/f2/f3) so the disk stack can be re-plugged to any host. Not auto-mounted.
2026-06-30f3s/shelly: rack-fan boot-time auto-on rc.d service + plug control scriptPaul Buetow
Add shellyfans rc.d service (boot-time auto-on for the rack fans on the Shelly Plug M Gen 3 at 192.168.1.28) and a standalone shelly-plug.sh helper to query/control the plug over its HTTP RPC API. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-20carp: rollback sink to last snapshot on BACKUP transitionPaul Buetow
After a CARP failover where f1 serves as MASTER, any NFS writes go to the sink dataset (zdata/sink/f0/zdata/enc/nfsdata). When f1 returns to BACKUP, zfs receive from f0 fails with "destination has been modified since most recent snapshot" because the filesystem state is ahead of the last received snapshot. Fix: on BACKUP transition, roll the sink back to the last zrepl snapshot before setting readonly=on. Writes during the MASTER window (health checks, test writes) are intentionally discarded — f0 is authoritative and replication resumes cleanly from the common snapshot. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-20carp: flip sink dataset read-write on MASTER takeover, read-only on BACKUPPaul Buetow
When f1 (BACKUP) becomes MASTER, its zrepl sink dataset (zdata/sink/f0/zdata/enc/nfsdata) was kept readonly=on. NFS clients could mount and read but all writes failed with EROFS. carpcontrol.sh now sets readonly=off before starting NFS services on MASTER takeover, and restores readonly=on before stopping them on BACKUP transition so zrepl can resume receiving snapshots from f0. Without this, every controlled CARP failover to f1 left NFS read-only until manually fixed with `zfs set readonly=off`. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-30f3s: add robust USB key mountingPaul Buetow