04 - Maintenance
A - Sauvegarde
1 Sauvegarde de la base de donné Grafana
C’est là où sont stockés les dashboards, datasources, utilisateurs, organisations, etc.
Par défaut, Grafana utilise SQLite, mais il peut aussi utiliser MySQL ou PostgreSQL.
sudo cp /var/lib/grafana/grafana.db /chemin/vers/ta/sauvegarde/
2 Sauvegarde de la configuration
Le fichier de configuration principal contient les paramètres d’accès, de stockage, etc.
sudo cp /etc/grafana/grafana.ini /chemin/vers/ta/sauvegarde/
Vous pouvez aussi sauvegarder tout le dossier si tu as plusieurs fichiers.
sudo cp -r /etc/grafana/ /chemin/vers/ta/sauvegarde/etc-grafana/
3 Sauvegarde des plugins (si personnalisés)
Si vous avez installé des plugins manuellement ou via l’interface.
sudo cp -r /var/lib/grafana/plugins/ /chemin/vers/ta/sauvegarde/plugins/
4 Sauvegarde de la base InfluxDB
InfluxDB contient les métriques, pas les dashboards.
#Pour connaitre sa version InfluxDB
influxd version
#InfluxDB v1.x
influxd backup -portable /chemin/vers/ta/sauvegarde/influx-backup/
#InfluxDB v2.x
influx backup /chemin/vers/ta/sauvegarde/influx-backup/
5 Script
Création d’un script bash qui permet de sauvegarder la base de données de Grafana ainsi que les fichiers de configuration puis les plugins et pour finir la base de données Influxdb qu’il vasva transférer du docker sur la machine locale.
##############################################################
# Auteur : mkermorvant #
# Date de modification : 20250515 #
# #
# Description : Script de Sauvegarde de la config Grafana #
#
##############################################################
#! /bin/bash #
# #
##############################################################
# Variables :
echo ""
read -p "Entrez le chemin de Sauvegarde de la bdd Grafana: " BDDGRAFANA
read -p "Entrez le chemin de Sauvegarde des fichiers de configuration de Grafana: " CONF
read -p "Entrez le chemin de Sauvegarde des plugins: " PLUGINS
read -p "Entrez le nom de votre conteneur docker Influxdb: " NOM
read -p "Entrez le chemin de Sauvegarde de Influxdb dans votre conteneur: " CONTENEUR
read -p "Entrez le chemin de Sauvegarde de Influxdb dans votre machine: " INFLUXDB
read -p "Entrez votre token Influxdb: " TOKEN
echo ""
##############################################################
# 1 - Sauvegarde de la Base de Données de Grafana
sudo cp /var/lib/grafana/grafana.db ${BDDGRAFANA}
echo "La base de données de Grafana a été sauvegardé."
# 2 - Sauvegarde des Fichiers de configurations
read -r -p "Voulez-vous sauvegarder tout le dossier ? [y/N] " response
case "$response" in
[yY][eE][sS]|[yY])
echo "Sauvegarde du dossier."
sudo cp -r /etc/grafana/ ${CONF}
echo "Le dossier de configuration a bien été sauvegardé !"
;;
*)
sudo cp /etc/grafana/grafana.ini ${CONF}
echo "Le fichié de configuration a bien été sauvegardé !"
;;
esac
# 3 - Sauvegarde des plugins
sudo cp -r /var/lib/grafana/plugins/ ${PLUGINS}
echo "Les plugins ont bien été sauvegardé !"
echo ""
# 4 - Sauvegarde de la base de données InfluxDB
influx_version=$(sudo docker exec ${NOM} influxd version)
echo "Version détecté : $influx_version"
read -r -p "Votre version est-elle en InfluxDB v2.x ? [y/N] " version
case "$version" in
[yY][eE][sS]|[yY])
sudo docker exec ${NOM} influx backup -t ${TOKEN} ${CONTENEUR}
echo "La base de données Influxdb a bien été sauvegardé !"
;;
*)
sudo docker exec ${NOM} influxd backup -portable -t ${TOKEN} ${CONTENEUR}
echo "Le fichié de configuration a bien été sauvegardé !"
;;
esac
sudo docker cp ${NOM}:${CONTENEUR} ${INFLUXDB}
echo "Votre base de données Influxdb à bien été copié dans vos réperoire."
echo ""
B - Mise à niveau Grafana
Pour mettre à niveau Grafana installé à partir du référentiel APT Grafana Labs, procédez comme suit :
1 Dépôt officiel
Mise à jour des paquet
sudo apt update
sudo apt upgrade grafana
Grafana se met à jour automatiquement lorsque vous exécutez apt-get upgrade.