| local cluster = import "lib/cluster.libsonnet"; |
| local global = import "lib/global.libsonnet"; |
| |
| // Monitoring tiers set up on k0. See README for architectural background. |
| |
| { |
| local k0 = self, |
| local cfg = { |
| storageClasses+: { |
| prometheus: "waw-hdd-redundant-3", |
| victoria: "waw-hdd-redundant-3", |
| grafana: "waw-hdd-redundant-3", |
| }, |
| }, |
| |
| // Cluster tier - prometheus. |
| cluster: cluster.Cluster("k0") { |
| cfg+: cfg { |
| username: "cluster-k0", |
| upstreams: [ |
| { password: std.split(importstr "secrets/plain/global-agent-cluster-k0", "\n")[0], remote: k0.global.internalIngestURL }, |
| ], |
| }, |
| }, |
| |
| // Global tier - victoria metrics. |
| global: global.Global("k0") { |
| cfg+: cfg { |
| oauth: { |
| clientId: "22659ba3-c8b2-4855-9553-f78884e0d743", |
| clientSecret: std.split(importstr "secrets/plain/global-oauth-client-secret", "\n")[0], |
| }, |
| hosts: { |
| globalAPI: "monitoring-global-api.k0.hswaw.net", |
| globalDashboard: "monitoring-global-dashboard.k0.hswaw.net", |
| }, |
| agents: [ |
| // Ingestion from k0 cluster tier. |
| { username: k0.cluster.cfg.username, password: std.split(importstr "secrets/plain/global-agent-cluster-k0", "\n")[0], }, |
| ], |
| loopbackGrafanaUser: { |
| username: "grafana", |
| password: std.split(importstr "secrets/plain/global-agent-grafana", "\n")[0], |
| }, |
| }, |
| }, |
| } |