Architecture
Built using the Loki & Promtail Helm Charts. Logs are collected by Promtail Pods & automatically assigned to a tenant based on the namespace. Tenants query Loki using their OrgID.
flowchart LR A[Tenant] -->|1| grafana(Grafana) subgraph tn[Tenant Namespace] qsa([Query Service Account]) <-.-> grafana end subgraph Monitoring Namespace subgraph Loki Query Frontend grafana -->|2| krp(kube-rbac-proxy) end krp -->|7| quer subgraph Loki inge(Ingester) inge --> s3 quer(Querier) --> s3 end end tn -->|Logs| promt(Promtail) promt --> inge s3[(BackBlaze B2)] subgraph Kubernetes krp -->|3| sar{{SubjectAccessReview}} sar <-->|4| qsa sar -->|5| krp end
Usage
No work from the Tenant’s side, as logs are automatically collected. To read them, first create a Service Account as described in Observability Usage. Then create a Grafana Instance & a Loki GrafanaDataSource
.