--- # yaml-language-server: $schema=https://ks.hsn.dev/helm.toolkit.fluxcd.io/helmrelease_v2beta2.json apiVersion: helm.toolkit.fluxcd.io/v2 kind: HelmRelease metadata: name: grafana spec: interval: 30m chart: spec: chart: grafana version: 8.3.5 sourceRef: kind: HelmRepository name: grafana namespace: flux-system install: remediation: retries: 3 upgrade: cleanupOnFail: true remediation: retries: 3 uninstall: keepHistory: false dependsOn: - name: kube-prometheus-stack namespace: observability - name: loki namespace: observability values: replicas: 1 envFromSecret: grafana-secret dashboardProviders: dashboardproviders.yaml: apiVersion: 1 providers: - name: default orgId: 1 folder: "" type: file disableDeletion: false editable: true options: path: /var/lib/grafana/dashboards/default-folder - name: ceph orgId: 1 folder: Ceph type: file disableDeletion: false editable: true options: path: /var/lib/grafana/dashboards/ceph-folder - name: crunchy-postgres orgId: 1 folder: Crunchy-postgres type: file disableDeletion: false editable: true options: path: /var/lib/grafana/dashboards/crunchy-postgres-folder - name: flux orgId: 1 folder: Flux type: file disableDeletion: false editable: true options: path: /var/lib/grafana/dashboards/flux-folder - name: kubernetes orgId: 1 folder: Kubernetes type: file disableDeletion: false editable: true options: path: /var/lib/grafana/dashboards/kubernetes-folder - name: nginx orgId: 1 folder: Nginx type: file disableDeletion: false editable: true options: path: /var/lib/grafana/dashboards/nginx-folder - name: prometheus orgId: 1 folder: Prometheus type: file disableDeletion: false editable: true options: path: /var/lib/grafana/dashboards/prometheus-folder - name: thanos orgId: 1 folder: Thanos type: file disableDeletion: false editable: true options: path: /var/lib/grafana/dashboards/thanos-folder - name: unifi orgId: 1 folder: Unifi type: file disableDeletion: false editable: true options: path: /var/lib/grafana/dashboards/unifi-folder datasources: datasources.yaml: apiVersion: 1 deleteDatasources: - { name: Alertmanager, orgId: 1 } - { name: Loki, orgId: 1 } - { name: Prometheus, orgId: 1 } datasources: - name: Prometheus type: prometheus uid: prometheus access: proxy url: http://thanos-query-frontend.observability.svc.cluster.local:10902 jsonData: prometheusType: Thanos timeInterval: 1m isDefault: true - name: Loki type: loki uid: loki access: proxy url: http://loki-gateway.observability.svc.cluster.local jsonData: maxLines: 250 - name: Alertmanager type: alertmanager uid: alertmanager access: proxy url: http://alertmanager-operated.observability.svc.cluster.local:9093 jsonData: implementation: prometheus dashboards: default: cloudflared: # renovate: depName="Cloudflare Tunnels (cloudflared)" gnetId: 17457 revision: 6 datasource: - { name: DS_PROMETHEUS, value: Prometheus } external-dns: # renovate: depName="External-dns" gnetId: 15038 revision: 3 datasource: Prometheus minio: # renovate: depName="MinIO Dashboard" gnetId: 13502 revision: 25 datasource: - { name: DS_PROMETHEUS, value: Prometheus } node-exporter-full: # renovate: depName="Node Exporter Full" gnetId: 1860 revision: 33 datasource: Prometheus postgres: # renovate: depName="PostgreSQL Database" gnetId: 9628 revision: 7 datasource: - { name: DS_PROMETHEUS, value: Prometheus } smartctl-exporter: # renovate: depName="smartctl_exporter" gnetId: 20204 revision: 1 datasource: - { name: DS_PROMETHEUS, value: Prometheus } spegel: # renovate: depName="Spegel" gnetId: 18089 revision: 1 datasource: - { name: DS_PROMETHEUS, value: Prometheus } unpackerr: # renovate: depName="Unpackerr" gnetId: 18817 revision: 1 datasource: - { name: DS_PROMETHEUS, value: Prometheus } zfs: # renovate: depName="ZFS" gnetId: 7845 revision: 4 datasource: Prometheus dragonflydb: url: https://raw.githubusercontent.com/dragonflydb/dragonfly/main/tools/local/monitoring/grafana/provisioning/dashboards/dashboard.json datasource: - { name: DS_PROMETHEUS, value: Prometheus } cert-manager: url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/cert-manager/dashboards/cert-manager.json datasource: Prometheus external-secrets: url: https://raw.githubusercontent.com/external-secrets/external-secrets/main/docs/snippets/dashboard.json datasource: Prometheus node-feature-discovery: url: https://raw.githubusercontent.com/kubernetes-sigs/node-feature-discovery/master/examples/grafana-dashboard.json datasource: Prometheus crunchy-postgres: pgbackrest: url: https://raw.githubusercontent.com/CrunchyData/pgmonitor/development/grafana/containers/pgbackrest.json datasource: - { name: DS_PROMETHEUS, value: Prometheus } pods: url: https://raw.githubusercontent.com/CrunchyData/pgmonitor/development/grafana/containers/pod_details.json datasource: - { name: DS_PROMETHEUS, value: Prometheus } postgresql: url: https://raw.githubusercontent.com/CrunchyData/pgmonitor/development/grafana/containers/postgresql_details.json datasource: - { name: DS_PROMETHEUS, value: Prometheus } postgresql-overview: url: https://raw.githubusercontent.com/CrunchyData/pgmonitor/development/grafana/containers/postgresql_overview.json datasource: - { name: DS_PROMETHEUS, value: Prometheus } postgresql-health: url: https://raw.githubusercontent.com/CrunchyData/pgmonitor/development/grafana/containers/postgresql_service_health.json datasource: - { name: DS_PROMETHEUS, value: Prometheus } postgresql-alerts: url: https://raw.githubusercontent.com/CrunchyData/pgmonitor/development/grafana/containers/prometheus_alerts.json datasource: - { name: DS_PROMETHEUS, value: Prometheus } query-stats: url: https://raw.githubusercontent.com/CrunchyData/pgmonitor/development/grafana/containers/query_statistics.json datasource: - { name: DS_PROMETHEUS, value: Prometheus } ceph: ceph-cluster: # renovate: depName="Ceph Cluster" gnetId: 2842 revision: 17 datasource: Prometheus ceph-osd: # renovate: depName="Ceph - OSD (Single)" gnetId: 5336 revision: 9 datasource: Prometheus ceph-pools: # renovate: depName="Ceph - Pools" gnetId: 5342 revision: 9 datasource: Prometheus flux: flux-cluster: url: https://raw.githubusercontent.com/fluxcd/flux2-monitoring-example/main/monitoring/configs/dashboards/cluster.json datasource: Prometheus flux-control-plane: url: https://raw.githubusercontent.com/fluxcd/flux2-monitoring-example/main/monitoring/configs/dashboards/control-plane.json datasource: Prometheus kubernetes: kubernetes-api-server: # renovate: depName="Kubernetes / System / API Server" gnetId: 15761 revision: 16 datasource: Prometheus kubernetes-coredns: # renovate: depName="Kubernetes / System / CoreDNS" gnetId: 15762 revision: 17 datasource: Prometheus kubernetes-global: # renovate: depName="Kubernetes / Views / Global" gnetId: 15757 revision: 37 datasource: Prometheus kubernetes-namespaces: # renovate: depName="Kubernetes / Views / Namespaces" gnetId: 15758 revision: 34 datasource: Prometheus kubernetes-nodes: # renovate: depName="Kubernetes / Views / Nodes" gnetId: 15759 revision: 29 datasource: Prometheus kubernetes-pods: # renovate: depName="Kubernetes / Views / Pods" gNetId: 15760 revision: 21 datasource: Prometheus kubernetes-volumes: # renovate: depName="K8s / Storage / Volumes / Cluster" gnetId: 11454 revision: 14 datasource: Prometheus nginx: nginx: url: https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/grafana/dashboards/nginx.json datasource: Prometheus nginx-request-handling-performance: url: https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/grafana/dashboards/request-handling-performance.json datasource: Prometheus prometheus: prometheus: # renovate: depName="Prometheus" gnetId: 19105 revision: 3 datasource: Prometheus thanos: thanos-bucket-replicate: url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/thanos/dashboards/bucket-replicate.json datasource: Prometheus thanos-compact: url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/thanos/dashboards/compact.json datasource: Prometheus thanos-overview: url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/thanos/dashboards/overview.json datasource: Prometheus thanos-query: url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/thanos/dashboards/query.json datasource: Prometheus thanos-query-frontend: url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/thanos/dashboards/query-frontend.json datasource: Prometheus thanos-receieve: url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/thanos/dashboards/receive.json datasource: Prometheus thanos-rule: url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/thanos/dashboards/rule.json datasource: Prometheus thanos-sidecar: url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/thanos/dashboards/sidecar.json datasource: Prometheus thanos-store: url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/thanos/dashboards/store.json datasource: Prometheus unifi: unifi-insights: # renovate: depName="UniFi-Poller: Client Insights - Prometheus" gnetId: 11315 revision: 9 datasource: Prometheus unifi-network-sites: # renovate: depName="UniFi-Poller: Network Sites - Prometheus" gnetId: 11311 revision: 5 datasource: Prometheus unifi-uap: # renovate: depName="UniFi-Poller: UAP Insights - Prometheus" gnetId: 11314 revision: 10 datasource: Prometheus unifi-usw: # renovate: depName="UniFi-Poller: USW Insights - Prometheus" gnetId: 11312 revision: 9 datasource: Prometheus sidecar: dashboards: enabled: true searchNamespace: ALL labelValue: "" label: grafana_dashboard folderAnnotation: grafana_folder provider: disableDelete: true foldersFromFilesStructure: true datasources: enabled: true searchNamespace: ALL labelValue: "" plugins: - grafana-clock-panel - grafana-piechart-panel - grafana-worldmap-panel - natel-discrete-panel - pr0ps-trackmap-panel - vonage-status-panel serviceMonitor: enabled: true ingress: enabled: true ingressClassName: external-nginx annotations: external-dns.alpha.kubernetes.io/cloudflare-proxied: "true" external-dns.alpha.kubernetes.io/target: external.hsn.dev hosts: - &host grafana.hsn.dev tls: - hosts: - *host persistence: enabled: false testFramework: enabled: false topologySpreadConstraints: - maxSkew: 1 topologyKey: kubernetes.io/hostname whenUnsatisfiable: DoNotSchedule labelSelector: matchLabels: app.kubernetes.io/name: grafana