Dans ce tutoriel, nous allons voir comment installer et configurer Grafana OSS sur Ubuntu 22.04.

Grafana Open Source Software (OSS) est un outil de surveillance, d’analyse et de visualisation des données systèmes en temps réel. À partir d’une série de données recueillies, il offre un panorama graphique de la situation d’une entreprise ou d’une organisation. Il génère des graphiques et des tableaux de bord à partir d’une base de données chronologiques (Graphite, InfluxDB ou OpenTSDB). Il vous permet également de les partager sous forme de sauvegarde instantanée avec d’autres utilisateurs.

Prérequis

Afin de suivre ce tutoriel, vous devez respecter un certain nombre de prérequis :

  • Un serveur Ubuntu 22.04
  • Un utilisateur avec droits administrateurs
  • Minimum de 255 Mo de RAM
  • Au moins 1 CPU
  • Une base de données compatible (MySQL, PostgreSQL, SQLite)
  • Un navigateur compatible avec JavaScript activé
  • Le port 3000 ouvert si vous n’utilisez pas un reverse proxy tel que Nginx ou Apache

1. Installer Grafana OSS

La première étape consiste à installer le paquet Grafana OSS. Ce dernier ne se trouve pas dans les paquets par défaut d’Ubuntu. Il est donc nécessaire de l’y ajouter. Nous allons d’abord importer la clé GPG.

$ sudo wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -

Ensuite ajouter le dépôt de Grafana.

$ echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list

Il faut installer les autres paquets nécessaires.

$ sudo apt install -y apt-transport-https software-properties-common wget

Une fois ces opérations effectuées, il est important de mettre à jour le cache des paquets pour la prise en compte des modifications.

$ sudo apt update

Si vous obtenez une erreur sur la dépréciation des clés comme celle-ci :

Alors, il faut lister les clés présentes dans votre système afin d’importer celle de Grafana, avec la commande suivante :

$ sudo apt-key list

Puis repérer cette dernière parmi celles listées et copier les 8 derniers chiffres qui seront utilisés pour l’importation

$ sudo apt-key export 24098CB6 | sudo gpg --dearmour -o /etc/apt/trusted.gpg.d/grafana-oss.gpg

Vous pourrez par la suite relancer la mise à jour des caches des dépôts :

$ sudo apt update

Nous pouvons à présent passer à l’installation. Au moment de la rédaction de cet article, la version de Grafana OSS en cours d’installation est la 9.0.2.

$ sudo apt install grafana

Vous pouvez vérifier la version proprement installée

$ grafana-server -v
Version 9.0.2 (commit: 0641b5d0cd, branch: HEAD)

Il est important d’activer Grafana au démarrage du serveur

$ sudo systemctl enable grafana-server

Puis, vous devez démarrer le service avec la commande suivante :

$ sudo systemctl start grafana-server

2. Installer Nginx avec un certificat Let’s Encrypt

Dans cette étape nous allons installer Nginx qui nous servira de reverse proxy. Il écoutera toutes les requêtes qui seront envoyées sur les ports 80 et 443 afin de rediriger les requêtes propres à Grafana. Notre guide considère que Grafana est accessible publiquement, nous allons donc devoir installer un certificat via let’s encrypt afin de sécuriser les échanges via le protocole HTTPS

Nous passons à l’installation de Nginx

$ sudo apt install nginx

Il faut l’autoriser pour les ports 80 et 443 de Nginx dans le pare-feu

$ sudo ufw allow 'Nginx Full'

Il faut redémarrer le pare-feu pour la prise en compte des modifications

$ sudo ufw disable && sudo ufw enable

Nous conseillons à présent de supprimer le fichier de l’hôte virtuel par défaut de Nginx pour éviter tout conflit.

$ sudo rm /etc/nginx/sites-enabled/default

Il faut créer le fichier de configuration de grafana-oss

$ sudo vim /etc/nginx/sites-available/grafana-oss.conf

Nous devons à présent activer la configuration

$ sudo ln -s /etc/nginx/sites-available/grafana-oss.conf /etc/nginx/sites-enabled/grafana-oss.conf

Il faut vérifier que nous n’avons pas de conflits

$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Redémarrons à présent Nginx pour la prise en compte des modifications

$ sudo systemctl restart nginx

La configuration jusqu’à ce niveau présente un accès non sécurisé http. Il est temps de passer à l’installation et à la génération d’un certificat pour sécuriser l’accès. Pour cela, nous allons utiliser l’outil let’s encrypt. Vous pouvez l’installer par la commande

$ sudo apt install certbot python3-certbot-nginx

Suivez notre article sur l’installation de Nginx et la génération d’un certificat let’s encrypt. Dans le cadre du présent tutoriel sur Grafana OSS, nous allons considérer que vous possédez déjà un certificat. Nous rappelons que let’s encrypt va modifier le présent fichier de configuration Nginx de Grafana afin d’insérer le certificat. Le fichier final ressemblera donc à ceci :

Il faut à présent redémarrer à nouveau Nginx pour la prise en compte des modifications.

$ sudo systemctl restart nginx

3. Accéder à Grafana

Maintenant que Grafana Oss est installé, il est possible d’y accéder via le navigateur par son adresse. Vous pouvez insérer l’URL de votre Grafana en http qui sera aussitôt redirigé vers le lien sécurisé en https

Le nom utilisateur et le mot de passe par défaut c’est admin mais il vous sera demandé d’entrer un nouveau mot de passe. Une fois le mot de passe modifié, vous aurez accès au dashboard

Vous pouvez à présent vous reférer à la documentation officielle pour la prise en main de l’outil.

Conclusion

Nous avons vu dans notre article comment faire une installation de Grafana OSS 9.0.2 de manière sécuriséé sur Ubuntu 22.04. Vous pouvez déjà créer un nouveau dashboard, ajouter de nouveaux utilisateurs, de nouvelles sources de données (Gitlab, ElasticSearch, etc).

Partagez cet article

Avez-vous trouvé cet article utile ?
Article utile ?

Vous pouvez aussi nous soumettre une idée d’article si votre recherche est différente.

Publications similaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *