a54d367c242ed05300a5bbec84bf3a2f35eefd89
preRegisterPrimary legte unbedingt eine Platzhalter-Zeile fuer den Primary an. Sobald der Primary sich aber selbst gemeldet hat, existiert bereits eine Zeile mit seiner ECHTEN Node-ID und demselben FQDN — und UpsertSelf nutzt ON CONFLICT (id), greift also nicht. Die Synthetik-ID "prenode-<fqdn>" lief damit in den fqdn-Unique-Index: duplicate key value violates unique constraint "ha_nodes_fqdn_unique" bei JEDEM API-Start auf dem Standby. Folgenlos — die echte Zeile ist ja korrekt und der Firewall-Reload lief trotzdem — aber es sah nach einem Defekt aus und verdeckte echte Warnungen im selben Log. Jetzt wird zuerst die IP einer vorhandenen Zeile aufgefrischt (mehr will die Funktion gar nicht) und nur bei RowsAffected()==0 der Platzhalter angelegt — also genau dann, wenn der Primary sich noch nie gemeldet hat. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
EdgeGuard
Native Reverse-Proxy / Loadbalancer / Forward-Proxy / VPN / Firewall — als signiertes .deb für Debian 13 + Ubuntu 24.04, amd64 + arm64.
Status: v0.x — Neufassung des bisherigen Docker-Stacks, parallel zum Bestand
proxy-lb-waf.
Installation
curl -fsSL https://get.edgeguard.netcell-it.de | sudo bash
Unterstützte Plattformen: Debian 13 (Trixie), Ubuntu 24.04 LTS (Noble) — amd64 + arm64.
Architektur in Kürze
- Daten-Services (v1): HAProxy (TLS-Termination + LB + L7-Routing), Squid, WireGuard, Unbound, nftables — alle nativ via APT, Configs aus PostgreSQL generiert.
- Control-Plane:
edgeguard-api(Go/Gin),management-ui(React/AntD), PostgreSQL 16, KeyDB Active-Active. - Cluster: N symmetrische Peers, KeyDB AA für Shared State, PG Streaming Replication, Floating-IP des Hosters statt VRRP.
- Auslieferung: signierte
.deb, Update viaapt. Update-Trigger via UI/API.
Volle Architektur: docs/architecture.md.
Build
make build # Host-Architektur
make deb # amd64 + arm64 .deb
make publish # deb + Upload Gitea Package Registry
Repo
- Lokal:
/var/www/edgeguard-native - Gitea:
https://git.netcell-it.de/projekte/edgeguard-native
Description
EdgeGuard Native — Reverse-Proxy / Loadbalancer / Forward-Proxy / VPN / Firewall ohne Docker, .deb-Auslieferung fuer Debian 13
Languages
Go
52.8%
TypeScript
36.4%
Shell
4.6%
CSS
4.4%
Smarty
1.5%
Other
0.3%