towerops/priv
Graham McIntire 29593ac734
refactor: migrate from etcd to Oban for distributed job coordination
Replaces etcd-based distributed locking with Oban's PostgreSQL-backed job queue.
This simplifies the architecture by eliminating the need for a separate etcd cluster
while providing better reliability and observability.

Changes:
- Add Oban dependency and migration (oban_jobs table)
- Create DevicePollerCoordinator and DeviceMonitorCoordinator Oban workers
- Remove EtcdCoordinator and EtcdLock modules
- Update application supervisor to start Oban
- Configure Oban with pollers (50 workers) and monitors (50 workers) queues
- Remove etcd StatefulSet from Kubernetes manifests
- Update monitoring supervisor documentation

Benefits:
- Simpler architecture (no etcd cluster to manage)
- PostgreSQL-based (uses existing database)
- Built-in uniqueness prevents duplicate jobs cluster-wide
- Better observability with Oban Web UI
- Automatic job rescue on node crashes
- Easier local development (no etcd required)

What was removed:
- etcd StatefulSet (3 pods)
- EtcdCoordinator module (320 lines)
- EtcdLock module (158 lines)
- eetcd dependency

All 3,686 tests passing.
2026-01-24 16:12:27 -06:00
..
gettext init 2025-12-21 11:10:43 -06:00
mibs Include MIB files in Docker image instead of using PVC 2026-01-19 14:01:03 -06:00
profiles import yamls 2026-01-21 14:30:04 -06:00
proto Add ICMP monitoring support to Phoenix agent channel 2026-01-19 13:46:20 -06:00
repo refactor: migrate from etcd to Oban for distributed job coordination 2026-01-24 16:12:27 -06:00
static sanitize snmp data and fix some cpu things 2026-01-22 16:53:01 -06:00