Prometheus, Mimir and Loki in KubeCrow

Charts, log history and log search from the backends already in your clusters: found automatically, with nothing to install.

KubeCrow reads metrics and logs from the backends already running in your clusters. There’s nothing to install and no port-forward to keep open: it finds them by their usual service names and labels and reaches them through the Kubernetes API server’s service proxy.

What it finds

Settings → Observability shows what was found for each cluster. If something isn’t found (it may just be restarting), KubeCrow checks again by itself (after two minutes, then less often) and says when.

Multi-tenant Mimir and Loki

A multi-tenant backend wants an X-Scope-OrgID tenant. When none is set, KubeCrow looks for the tenants your shippers send with in the configs of Alloy, Promtail, Fluent Bit, Vector, OpenTelemetry or Prometheus remote-write (tenant_id, X-Scope-OrgID), tries them, and shows the one in use and where it came from. Only tenant names are read from those configs. A tenant you type in Settings always wins.

What uses them

Without Prometheus

The Health chart still works: KubeCrow samples metrics-server every 30 seconds itself and keeps 24 hours per cluster on your Mac, so the history survives a restart. Longer ranges, per-pod history and right-sizing need Prometheus.

Permission needed

Reaching a backend through the API server needs get on services/proxy in the backend’s namespace. See permissions KubeCrow needs.

Questions

Do I need to port-forward Prometheus or Loki for KubeCrow?

No. KubeCrow reaches them through the Kubernetes API server’s service proxy, which needs get on services/proxy in their namespace.

Does KubeCrow work with Grafana Mimir and multi-tenant Loki?

Yes. It finds the tenant in your log and metrics shippers’ configs, or you can set it in Settings → Observability.