personal_infra/ansible/roles
counterweight 2a80f0e3ca
bitcoin-knots: ride out block-time RPC stalls
The RPC probe flapped while every other knots check stayed green. Each burst
lined up with a block: validation on the saturated HDD holds the node busy
while Fulcrum, mempool and DATUM all fetch the block, and bitcoind rejected
calls with "work queue depth exceeded" (93 times on 2026-10-18).

- 403: the probe runs every minute, so failure-threshold 4 rides out a
  1-3 minute burst while a real outage still alerts within ~5 minutes.
  Probes now take an optional failure_threshold over a shared probe_alert.
- rpcworkqueue=64 and rpcthreads=8, so bursts queue instead of failing.

Profiling later showed the stalls are per-input UTXO lookups at ~5 ms each -
HDD seek latency - so this treats the symptom. The fix is chainstate on SSD.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-19 22:10:25 +02:00
..
backup_source backups: monitor both the dump and the pull, per source 2026-09-14 09:22:12 +02:00
backup_store disk check: it never worked. Fix it, and the false DOWNs it hid behind 2026-09-15 20:42:59 +02:00
bitcoin_knots bitcoin-knots: ride out block-time RPC stalls 2026-10-19 22:10:25 +02:00
caddy_site ansible: delete the duplicated vars files, move globals to group_vars/all 2026-09-13 20:58:46 +02:00
datum_gateway uptime kuma: remove every live reference, repoint the probes to Gatus 2026-09-14 10:30:28 +02:00
forgejo_runner forgejo-runner: give CI jobs a Docker daemon of their own 2026-09-27 22:32:08 +02:00
fulcrum uptime kuma: remove every live reference, repoint the probes to Gatus 2026-09-14 10:30:28 +02:00
gatus gatus: show resolved values on successful conditions, ui as a pass-through 2026-09-14 22:14:44 +02:00
gatus_endpoint gatus: show resolved values on successful conditions, ui as a pass-through 2026-09-14 22:14:44 +02:00
healthcheck disk check: it never worked. Fix it, and the false DOWNs it hid behind 2026-09-15 20:42:59 +02:00
jar_lid_archive jar-lid-archive: a staging deployment on its own box 2026-10-03 23:56:30 +02:00
mempool uptime kuma: remove every live reference, repoint the probes to Gatus 2026-09-14 10:30:28 +02:00
monero monero: check every five minutes again 2026-10-19 22:10:24 +02:00
navidrome navidrome: a music server on its own box, with beets in front of it 2026-09-27 11:09:40 +02:00
phoenixd uptime kuma: remove every live reference, repoint the probes to Gatus 2026-09-14 10:30:28 +02:00
signal_api signal-api: bump to 0.101 - Signal refused the old client 2026-10-19 22:10:24 +02:00
socket_proxy bitcoin-knots, fulcrum, datum-gateway: add and use the socket_proxy role 2026-09-11 23:50:15 +02:00
xmrblocks monero: check every five minutes again 2026-10-19 22:10:24 +02:00