Aller au contenu

Grafana Suppression Dashboard#

Lorsque les méthodes standard de suppression (interface graphique CI/CD, cmd kublet ) ne fonctionnent pas, il peut être nécessaire d'intervenir directement sur la base de données.

Grafana possède des données persistantes :

  • dashboards
  • datasources
  • users
  • ...

Warning

Une manipulation incorrecte de la base de données peut rendre Grafana inutilisable ou entraîner la perte de données importantes pour le client.

Delete d'un Dashboard#

Exemple la supression d'un dashboard à l'aide d'un pod Ubuntu et du PVC Grafana.

CLIENT=obs-tryit
NAMESPACE=grafana-client-${CLIENT}

Déploiement d'un pod Ubuntu :

kubectl apply -f - <<EOF
apiVersion: v1
kind: Pod
metadata:
  name: ubuntu
  namespace: grafana-client-${CLIENT}
  labels:
    app: ubuntu
spec:
  containers:
  - name: ubuntu
    image: ubuntu:latest
    command: ["/bin/sleep", "3650d"]
    imagePullPolicy: IfNotPresent
    volumeMounts:
    - name: storage
      mountPath: /var/lib/grafana
  volumes:
  - name: storage
    persistentVolumeClaim:
      claimName: "storage-grafana-${CLIENT}-0"
EOF

Installation de SQLite sur le pod Ubuntu :

kubectl exec -it ubuntu -n "${NAMESPACE}" -- apt update && apt install sqlite3 -y

Exemple de suppresion du dashboard Blackbox-Exporter :

Vérification qu'il est bien présent:

kubectl exec -it ubuntu -n "${NAMESPACE}" -- sqlite3 /var/lib/grafana/grafana.db "SELECT data FROM dashboard WHERE title='Blackbox Exporter';"

Supprimer le Dashboard :

kubectl exec -it ubuntu -n "${NAMESPACE}" -- sqlite3 /var/lib/grafana/grafana.db "delete from dashboard where title='Blackbox Exporter';"

Note

Ne pas oublier de Delete le pod Ubuntu à la fin de l'intervention.