This is an automated archive made by the Lemmit Bot.
The original was posted on /r/selfhosted by /u/jbakers on 2026-03-28 15:39:35+00:00.
Got tired of my network breaking everytime I needed to update or restart my Pi-hole, so I set up a second one with keepalived. But configuring keepalived manually, writing health checks, adding notifications… it was alot of work — and I still had no dashboard to see what was actually happening.
So I built Pi-hole Sentinel. Quick note: I’m not a professional developer — I’m a service engineer (security systems, CCTV, access control) who runs a homelab. Built this using AI coding tools like Claude, GitHub Copilot and VS Code. The code has passed quality audits and is well tested, but I mention it for transparancy.
What it does:
- Automates the full keepalived HA setup across two Pi-holes via an interactive wizard
- Automatic DNS failover (< 3 seconds) with optional DHCP failover
- Lightweight FastAPI monitor with web dashboard — realtime status, failover history, and diagnostics
- Notifications on failover/recovery via Telegram, Discord, Pushover, Ntfy, or webhooks
- Run diagnostics (service status, logs, VIP checks) directly from the browser
Right now I use Nebula-sync seperately to keep Pi-hole config, blocklists and DHCP settings in sync between servers. Built-in config sync is planned for a future release, so eventually Sentinel will be a complete all-in-one HA solution.
Setup is pretty simple: clone the repo, run the setup script, follow the wizard. It handles SSH key distribution, keepalived config, health check scripts and service deployment for you.
Stack: Python/FastAPI + SQLite + keepalived (VRRP). Works alongside existing sync tools like Nebula-sync or Gravity-sync.
Currently in beta (v0.12), running on my own homelab. Feedback and testing very welcome.
GitHub: https://github.com/JBakers/pihole-sentinel License: GPLv3
Started this in Oct 2025, so I hope Im not breaking the New Project Friday rule

