Add HOME and PATH environment variables to the LaunchAgent plist.
Minikube needs HOME to find its config files (~/.minikube/) and
PATH to find docker for status checks.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The previous replace_all edit corrupted the variable definition from
"kubectl" to "$KUBECTL", causing an unbound variable error.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Remove checks for local prometheus/loki/grafana (now in k8s)
- Update alloy check to use launchctl (no longer brew service)
- Add k8s pod health checks for monitoring stack
- Update HTTP endpoints to use Tailscale URLs
- Reorganize sections for clarity
CGO-enabled build required for macOS native DNS resolver (Tailscale MagicDNS).
Homebrew bottle is built with CGO_ENABLED=0 which uses Go's pure DNS resolver
that doesn't respect /etc/resolver/* on macOS.
- Remove Homebrew installation, use ~/.local/bin/alloy
- Add LaunchAgent plist (mcquack.eblume.alloy)
- Update config paths to ~/.config/grafana-alloy
- Add build instructions in defaults/main.yml
- Add alloy's own logs to mcquack_logs collection
Major observability stack migration:
- Deploy Prometheus in k8s with 20Gi PVC, Tailscale Ingress
- Deploy Loki in k8s with 20Gi PVC, Tailscale Ingress
- Update Grafana to use k8s-internal endpoints for data sources
- Update Alloy on indri to push to k8s via Tailscale endpoints
- Prometheus scrapes sifaka via LAN IP (Docker NAT, same as NFS)
- Deprecate ansible prometheus/loki roles
Alloy on indri continues to collect:
- System metrics (via prometheus.exporter.unix)
- Textfile metrics (borgmatic, plex)
- Logs (forgejo, tailscale, borgmatic, zot, plex)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add tcp:9187 to tag:homelab → tag:k8s ACL rule for Prometheus
to scrape CloudNativePG metrics endpoint.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add Tailscale service exposing CNPG metrics on port 9187 (cnpg-metrics.tail8d86e.ts.net)
- Add Prometheus scrape config for cnpg-postgres job
- Update PostgreSQL dashboard to use CNPG metric names (cnpg_* prefix)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
After minikube migration from podman to docker driver, the hostname
host.containers.internal no longer resolves. Use host.minikube.internal
which is the correct hostname for docker driver.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>