This is an automated email from the ASF dual-hosted git repository.
lhotari pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar-helm-chart.git
The following commit(s) were added to refs/heads/master by this push:
new d486e4a Add default configuration for Pulsar Grafana dashboards (#439)
d486e4a is described below
commit d486e4a42d09c870f3c371747c1178b25ba260a2
Author: Lari Hotari <[email protected]>
AuthorDate: Wed Jan 24 11:12:57 2024 -0800
Add default configuration for Pulsar Grafana dashboards (#439)
* Add default configuration for dashboards
---
README.md | 22 +++++++++++++--
charts/pulsar/values.yaml | 71 +++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 90 insertions(+), 3 deletions(-)
diff --git a/README.md b/README.md
index 784f6d0..21ec12f 100644
--- a/README.md
+++ b/README.md
@@ -162,12 +162,28 @@ verified in some [tests](./.ci/clusters).
## Grafana Dashboards
-The Apache Pulsar Helm Chart uses the `kube-prometheus-stack` Helm Chart to
deploy Grafana. Dashboards are loaded via a Kubernetes `ConfigMap`. Please see
their documentation for loading those dashboards.
+The Apache Pulsar Helm Chart uses the `kube-prometheus-stack` Helm Chart to
deploy Grafana.
-The `apache/pulsar` GitHub repo contains some dashboards
[here](https://github.com/apache/pulsar/tree/master/grafana).
+There are several ways to configure Grafana dashboards. The default
`values.yaml` comes with examples of Pulsar dashboards which get downloaded
from the Apache-2.0 licensed [streamnative/apache-pulsar-grafana-dashboard OSS
project](https://github.com/streamnative/apache-pulsar-grafana-dashboard) by
URL.
-### Third Party Dashboards
+Dashboards can be configured in `values.yaml` or by adding `ConfigMap` items
with the label `grafana_dashboard: "1"`.
+In `values.yaml`, it's possible to include dashboards by URL or by grafana.com
dashboard id (`gnetId` and `revision`).
+Please see the [Grafana Helm chart documentation for importing
dashboards](https://github.com/grafana/helm-charts/blob/main/charts/grafana/README.md#import-dashboards).
+You can connect to Grafana by forwarding port 3000
+```
+kubectl port-forward $(kubectl get pods -l app.kubernetes.io/name=grafana -o
jsonpath='{.items[0].metadata.name}') 3000:3000
+```
+And then opening the browser to http://localhost:3000 . The default user is
`admin`.
+
+You can find out the password with this command
+```
+kubectl get secret -l app.kubernetes.io/name=grafana
-o=jsonpath="{.items[0].data.admin-password}" | base64 --decode
+```
+
+### Pulsar Grafana Dashboards
+
+* The `apache/pulsar` GitHub repo contains some Grafana dashboards
[here](https://github.com/apache/pulsar/tree/master/grafana).
* StreamNative provides Grafana Dashboards for Apache Pulsar in this [GitHub
repository](https://github.com/streamnative/apache-pulsar-grafana-dashboard).
* DataStax provides Grafana Dashboards for Apache Pulsar in this [GitHub
repository](https://github.com/datastax/pulsar-helm-chart/tree/master/helm-chart-sources/pulsar/grafana-dashboards).
diff --git a/charts/pulsar/values.yaml b/charts/pulsar/values.yaml
index 4b4b218..8486e4b 100644
--- a/charts/pulsar/values.yaml
+++ b/charts/pulsar/values.yaml
@@ -1193,6 +1193,77 @@ kube-prometheus-stack:
enabled: true
grafana:
enabled: true
+ # Use random password at installation time for Grafana by default by
setting empty value to `adminPassword`.
+ # You can find out the actual password by running the following command:
+ # kubectl get secret -l app.kubernetes.io/name=grafana
-o=jsonpath="{.items[0].data.admin-password}" | base64 --decode
+ adminPassword:
+ # Configure Pulsar dashboards for Grafana
+ dashboardProviders:
+ dashboardproviders.yaml:
+ apiVersion: 1
+ providers:
+ - name: 'pulsar'
+ orgId: 1
+ folder: 'Pulsar'
+ type: file
+ disableDeletion: true
+ editable: true
+ options:
+ path: /var/lib/grafana/dashboards/pulsar
+ dashboards:
+ pulsar:
+ # Download the maintained dashboards from ASL 2.0 licenced repo
https://github.com/streamnative/apache-pulsar-grafana-dashboard
+ bookkeeper:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/bookkeeper.json
+ datasource: Prometheus
+ broker:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/broker.json
+ datasource: Prometheus
+ connector_sink:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/connector_sink.json
+ datasource: Prometheus
+ connector_source:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/connector_source.json
+ datasource: Prometheus
+ container:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/container.json
+ datasource: Prometheus
+ functions:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/functions.json
+ datasource: Prometheus
+ jvm:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/jvm.json
+ datasource: Prometheus
+ loadbalance:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/loadbalance.json
+ datasource: Prometheus
+ messaging:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/messaging.json
+ datasource: Prometheus
+ node:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/node.json
+ datasource: Prometheus
+ overview:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/overview.json
+ datasource: Prometheus
+ proxy:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/proxy.json
+ datasource: Prometheus
+ pulsar_detector:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/pulsar_detector.json
+ datasource: Prometheus
+ recovery:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/recovery.json
+ datasource: Prometheus
+ topic:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/topic.json
+ datasource: Prometheus
+ transaction:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/transaction.json
+ datasource: Prometheus
+ zookeeper:
+ url:
https://raw.githubusercontent.com/streamnative/apache-pulsar-grafana-dashboard/master/dashboards.kubernetes/zookeeper-3.6.json
+ datasource: Prometheus
prometheus-node-exporter:
enabled: true
alertmanager: