Suppression de datasource dans un Grafana Mutualisé / Masquer les alertes définies dans Prometheus#
Pour une demande de ce type, il existe deux options :
Suppression de datasource dans un Grafana Mutualisé : "Merci de supprimer la datasource Alertmanager du client test06 de l’instance de Grafana mutualisée devteam01."
Rendre les alertes définies dans Prometheus invisibles (cela se fait en modifiant la datasource Thanos) : "Nous souhaitons que les alertes définies dans Prometheus ne soient plus visibles."
Ou bien les deux options.
Nomenclature#
Nous nommerons :
<CLIENT>le client qui possède l'instance de Grafana mutualisé, icidevteam01<DATASOURCE>le client qui possède les métriques et alertes à observer depuis le Grafana Mutualisé, autrement dit, la datasource à supprimer, icitest06.
Étape 1 : Modification des paramètres de la zone Grafana#
Les paramètres sont définis dans envs-ng dans le fichier zones/ngot_zones/client-<CLIENT>.cue.
Voici un exemple de configuration de ces paramètres:
"svc-grafana-client-devteam01": {
let shortname = "devteam01"
let connected_zones = "10000:1:test04,test06"
type: "service"
subtype: "grafana-client"
parent_zone_name: "kub-10010"
contract_zone_name: "obs-\(shortname)"
parameters: {
_thanos_query_connected_services_mutualized: "\(connected_zones)": _
thanos_query_connected_services: _thanos_query_connected_services_mutualized[connected_zones]
_datasource_thanos: "\(shortname)": _
_mutualized_datasource_alertmanager: "test04": _
_mutualized_datasource_alertmanager: "test06": _
datasources: {
_datasource_thanos[shortname]
thanos: jsonData: manageAlerts: false
_mutualized_datasource_alertmanager["test04"]
_mutualized_datasource_alertmanager["test06"]
}
expose_thanos_query: true
}
}
Voici ce qu’il faut faire pour:
-
Supprimer la datasource Alertmanager:
- Objectif : supprimer la datasource dans Grafana via Alerting -> Active notifications
- Pour supprimer une datasource Alertmanager, il faut retirer les deux lignes ci-dessous pour chaque cible Alertmanager concernée.
- Les lignes à retirer pour une datasource Alertmanager sont:
_mutualized_datasource_alertmanager: "test06": _ ... datasources: { ... _mutualized_datasource_alertmanager["test06"]
-
Désactiver la gestion des PrometheusRules dans Grafana
- Objectif : supprimer la visibilité des PrometheusRules dans Grafana via Alerting -> Alert Rules
-
Pour faire ça, il faut ajouter la ligne suivante (voir l'exemple ci-dessous):
Ce qui donne:thanos: jsonData: manageAlerts: falsedatasources: { _datasource_thanos[shortname] _mutualized_datasource_alertmanager["test04"] thanos: jsonData: manageAlerts: false }
Warning
Il ne faut pas modifier la ligne suivante : let connected_zones = "10000:1:test04,test06"
Étape 2 : Régénération de static zone files#
generate-static-zones-files
Étape 3 : Redéployer les datasources#
Warning
Ne pas oublier de suivre le processus de gestion des changements (MR, validation, CAASCHR, etc.).
Créer un CAASCHR à partir de ce template.