Every host the NetBird proxies serve (exactly the Ingresses labelled dns.renner.uno/public or netbird.renner.uno/public; verified by SNI probe of proxy-1 and proxy-2) gets a group with three kinds of check: - DNS: cluster services have no own record, so the check asserts the *.renner.uno wildcard answers (CNAME == proxy.renner.uno, Cloudflare resolver, IPv6 first). External names (apex, proxies, third-party) assert their own AAAA/A record instead. - HTTP reachability: a URL routed to the backend, redirects not followed, any status below 500 counts. - Response validation: health/API JSON or a page keyword; services fully behind the Authentik gate assert the login page. The proxies get their own group: proxy.renner.uno, and per instance its DNS plus reachability and a Gatus health check pinned to that proxy (URL host is the proxy, Host header status.renner.uno; Node derives SNI from the Host header, so the proxy routes it like a client request). Layout: monitors live in the kustomization of the app they monitor; external ones (proxies, apex, third-party) in apps/monitoring. The CRD moves to infrastructure/ so every app Kustomization can consume it; it carries prune: disabled, so leaving kuma-sync's inventory does not delete it. The old kuma-sync/monitors objects go; their Kuma monitors are recreated under the new owner keys (history since this morning is lost). App Kustomizations wait on their resources, and KumaMonitor Ready reflects whether Uptime Kuma on the VPS is reachable. Each consuming Kustomization therefore treats KumaMonitor as always current, so a Kuma outage cannot stall Flux. kuma-sync: dns monitors gain spec.dns.conditions (Kuma's "record" variable with its string operators, ANDed), mapped both ways so drift is detected and an emptied list clears Kuma's conditions. Until the new image rolls out the controller drops the field and the DNS checks only test resolvability.
10 lines
188 B
YAML
10 lines
188 B
YAML
apiVersion: kustomize.config.k8s.io/v1beta1
|
|
kind: Kustomization
|
|
resources:
|
|
- externalsecret.yaml
|
|
- mariadb.yaml
|
|
- pvc.yaml
|
|
- deployment.yaml
|
|
- ingress.yaml
|
|
- kumamonitors.yaml
|