J'essaie d'ajouter un nouveau tableau de bord au tableau de la barre ci-dessous
https://github.com/helm/chat/tree/traster/stable/prometheus-perator
La documentation n'est pas très claire.
J'ai ajouté une carte de configuration dans l'espace de nom comme ci-dessous -
apiVersion: v1
kind: ConfigMap
metadata:
name: sample-grafana-dashboard
namespace: monitoring
labels:
grafana_dashboard: "1"
data:
etcd-dashboard.json: |-
{JSON}
Selon la documentation, cela devrait simplement être "choisi" et ajouté, mais ce n'est pas le cas. https://github.com/helm/chat/tree/master/stable/grafana#configuration
L'option Sidecar dans mes valeurs.Yaml ressemble à -
grafana:
enabled: true
## Deploy default dashboards.
##
defaultDashboardsEnabled: true
adminPassword: password
ingress:
## If true, Grafana Ingress will be created
##
enabled: false
## Annotations for Grafana Ingress
##
annotations: {}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
## Labels to be added to the Ingress
##
labels: {}
## Hostnames.
## Must be provided if Ingress is enable.
##
# hosts:
# - grafana.domain.com
hosts: []
## Path for grafana ingress
path: /
## TLS configuration for grafana Ingress
## Secret must be manually created in the namespace
##
tls: []
# - secretName: grafana-general-tls
# hosts:
# - grafana.example.com
#dashboardsConfigMaps:
#sidecarProvider: sample-grafana-dashboard
sidecar:
dashboards:
enabled: true
label: grafana_dashboard
J'ai aussi essayé d'ajouter ceci à la valeur.yml
dashboardsConfigMaps:
- sample-grafana-dashboard
Qui ne fonctionne pas.
Est-ce que quelqu'un a une expérience avec l'ajout de vos propres tableaux de bord à ce graphique de la barre, car je suis vraiment à ma fin.
Vous devez:
des valeurs.yml:
dashboardsConfigMaps:
application: application
dashboardProviders:
dashboardproviders.yaml:
apiVersion: 1
providers:
- name: application
orgId: 1
folder: "Application Metrics"
type: file
disableDeletion: true
editable: false
options:
path: /var/lib/grafana/dashboards/application
Maintenant, la carte de configuration de l'application doit créer des fichiers dans ce répertoire dans la nacelle et, comme cela a été discuté, le Sidecar devrait les charger dans un dossier de métrique d'application, vu dans l'interface graphique.
Cela répond probablement à votre problème comme écrit, mais aussi longtemps que vos tableaux de bord ne sont pas trop gros en utilisant KustonMise Meoit, vous pouvez avoir le JSON sur disque sans avoir à inclure le JSON dans un autre fichier ainsi:
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
# May choose to enable this if need to refer to configmaps outside of kustomize
generatorOptions:
disableNameSuffixHash: true
namespace: monitoring
configMapGenerator:
- name: application
files:
- grafana-dashboards/application/api01.json
- grafana-dashboards/application/api02.json
Pour l'assurance-santé, vous pouvez également charger des tableaux de bord de l'URL ou du site GRAFANA, bien que je ne crois pas que la méthode de mélange dans le même dossier fonctionne.
Alors:
dashboards:
kafka:
kafka01:
url: https://raw.githubusercontent.com/kudobuilder/operators/master/repository/kafka/docs/latest/resources/grafana-dashboard.json
folder: "KUDO Kafka"
datasource: Prometheus
nginx:
nginx1:
gnetId: 9614
datasource: Prometheus
dashboardProviders:
dashboardproviders.yaml:
apiVersion: 1
providers:
- name: kafka
orgId: 1
folder: "KUDO Kafka"
type: file
disableDeletion: true
editable: false
options:
path: /var/lib/grafana/dashboards/kafka
- name: nginx
orgId: 1
folder: Nginx
type: file
disableDeletion: true
editable: false
options:
path: /var/lib/grafana/dashboards/nginx
Crée deux nouveaux dossiers contenant un tableau de bord chacun, à partir de sources externes, ou peut-être que vous le signalez à votre repo Git vous-même votre tableau de bord s'engage à partir de votre déploiement.