Files
claude-botandClaude Opus 5.5 444b20d70e
ci/woodpecker/pr/ci-scripts-test Pipeline was successful
ci/woodpecker/pr/ci-manifests-test Pipeline was successful
feat(cloudflare-lb-sync): manage proxy.renner.uno load balancer from the cluster
New in-house controller (kuma-sync house pattern) that reconciles a
CloudflareLoadBalancer resource into a DNS-only Cloudflare load balancer,
its pool and its health monitor, using cloudflare-go v7.

proxy.renner.uno had round-robin A/AAAA records without health checks, so
every proxy reboot blackholed part of the public traffic. The owner set up
a DNS-only load balancer by hand (hostname origins proxy-1/proxy-2, HTTPS
monitor with Host: status.renner.uno); this moves it into git.

- Identity is the load balancer hostname; pool and monitor are found via
  its references. Hand-made objects are adopted (the account allows only
  2 origins, so a parallel pool would be rejected) and tagged in their
  description; objects with another owner's tag are never written.
- Status shows per-origin health; resync every 2 minutes.
- Token from OpenBao homelab/infrastructure/k8s-cloudflare-lb via
  ExternalSecret; egress limited to api.cloudflare.com:443.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 20:46:01 +02:00
..