From 1ba4972d41a0810e28edfd140240c42b4fc77afe Mon Sep 17 00:00:00 2001 From: unkin-agent Date: Fri, 2 Oct 2026 22:51:14 +1000 Subject: [PATCH] feat(grafana): sync kubernetes dashboards from victoria-metrics-k8s-stack --- .../au-syd1/grafana/kustomization.yaml | 8 ++ apps/overlays/au-syd1/grafana/values.yaml | 120 ++++++++++++++++++ 2 files changed, 128 insertions(+) create mode 100644 apps/overlays/au-syd1/grafana/values.yaml diff --git a/apps/overlays/au-syd1/grafana/kustomization.yaml b/apps/overlays/au-syd1/grafana/kustomization.yaml index 6796c57..73d62ab 100644 --- a/apps/overlays/au-syd1/grafana/kustomization.yaml +++ b/apps/overlays/au-syd1/grafana/kustomization.yaml @@ -6,3 +6,11 @@ namespace: grafana resources: - ../../../base/grafana + +helmCharts: + - name: victoria-metrics-k8s-stack + repo: https://artifactapi.k8s.syd1.au.unkin.net/api/v1/virtual/helm + version: "0.95.0" + releaseName: k8s-dashboards + namespace: grafana + valuesFile: values.yaml diff --git a/apps/overlays/au-syd1/grafana/values.yaml b/apps/overlays/au-syd1/grafana/values.yaml new file mode 100644 index 0000000..9e9b37e --- /dev/null +++ b/apps/overlays/au-syd1/grafana/values.yaml @@ -0,0 +1,120 @@ +--- +# Only the dashboard sync-job: it fetches upstream dashboards and writes +# GrafanaDashboard CRs for the grafana-operator instance in this namespace. +victoria-metrics-operator: + enabled: false +defaultRules: + enabled: false +vmsingle: + enabled: false +vmagent: + enabled: false +vmalert: + enabled: false +alertmanager: + enabled: false +grafana: + enabled: false +prometheus-node-exporter: + enabled: false +kube-state-metrics: + enabled: false +kubelet: + enabled: false +kubeApiServer: + enabled: false +kubeControllerManager: + enabled: false +coreDns: + enabled: false +kubeEtcd: + enabled: false +kubeScheduler: + enabled: false + +defaultDatasources: + victoriametrics: + datasources: + - name: VictoriaMetrics + type: prometheus + uid: det2y55dac4jkc + isDefault: true + +defaultDashboards: + grafanaOperator: + enabled: true + dashboards: + kubelet: + enabled: true + apiserver: + enabled: false + k8s-resources-multicluster: + enabled: false + k8s-resources-windows-cluster: + enabled: false + k8s-resources-windows-namespace: + enabled: false + k8s-resources-windows-pod: + enabled: false + k8s-windows-cluster-rsrc-use: + enabled: false + k8s-windows-node-rsrc-use: + enabled: false + node-cluster-rsrc-use: + enabled: false + node-rsrc-use: + enabled: false + nodes: + enabled: false + nodes-aix: + enabled: false + nodes-darwin: + enabled: false + prometheus: + enabled: false + prometheus-remote-write: + enabled: false + sources: + # Already managed in apps/base/grafana/dashboards. + node-exporter-full: + enabled: false + victoriametrics-cluster: + enabled: false + victoriametrics-vmagent: + enabled: false + victorialogs-cluster: + enabled: false + kubernetes-views-global: + url: https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github_user/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-views-global.json + kubernetes-views-namespaces: + url: https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github_user/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-views-namespaces.json + kubernetes-views-pods: + url: https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github_user/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-views-pods.json + kubernetes-views-nodes: + url: https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github_user/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-views-nodes.json + kubernetes-system-api-server: + url: https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github_user/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-system-api-server.json + enabled: true + kube-prometheus: + url: https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github_user/prometheus-operator/kube-prometheus/main/manifests/grafana-dashboardDefinitions.yaml + +syncJob: + resources: + requests: + cpu: 50m + memory: 64Mi + limits: + cpu: 500m + memory: 256Mi + # artifactapi serves an internal-CA certificate. + env: + - name: SSL_CERT_FILE + value: /etc/ssl/vault-ca/ca.crt + extraVolumes: + - name: vault-ca-cert + secret: + secretName: vault-ca-cert + extraVolumeMounts: + - name: vault-ca-cert + mountPath: /etc/ssl/vault-ca + readOnly: true -- 2.47.3