Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
technique:monitoring:metrics:influxdb [2020/03/23 19:15]
kyane
technique:monitoring:metrics:influxdb [2020/03/23 19:16] (Version actuelle)
kyane
Ligne 85: Ligne 85:
   restart: always   restart: always
 </​code>​ </​code>​
- 
-===== Visualisation ===== 
- 
-Maintenant que la base InfluxDB se remplie avec les métriques de nos services, on souhaite pouvoir les visualiser. Une solution logicielle **très largement répandue** est [[https://​grafana.com/​|Grafana]]. C'est un logiciel libre qui permet de réaliser un vaste panel de graphiques différents en se connectant à différents types de //TSDB//, le tout dans une interface Web avec un accès fin des droits de lecture et écriture des //​dashboards//​. 
- 
-==== Déploiement ==== 
- 
-Pour notre déploiement de Grafana, nous avons les besoins suivants :  
-  * déploiement avec Docker 
-  * utilisation derrière notre reverse-proxy Traefik pour la gestion du HTTPS 
-  * gestion des droits d'​accès en lecture et écriture 
- 
-Grafana est relativement simple à déployer dans la mesure où une image Docker officielle très complète existe déjà. Tout se passe via une interface Web donc le service est simple à exposer derrière Traefik, et il est possible de créer des utilisateurs et de gérer les droits d'​accès aux différentes parties de Grafana. 
- 
-Picasoft a donc fait [[https://​gitlab.utc.fr/​picasoft/​dockerfiles/​tree/​master/​grafana|sa propre image Docker]], qui est rien de plus qu'une copie de l'​image officielle. Le README explique comment utiliser l'​image. 
- 
-On déploie donc notre Grafana sur la VM ''​monitoring'',​ en lui donnant les informations suivantes : 
-  * le nom et l'URL de l'​instance 
-  * un utilisateur/​mot de passe d'​administration a créer automatiquement 
-  * les labels qui vont bien pour exposer le service derrière Traefik 
-  * un volume pour avoir une persistance des données 
- 
-On obtient un service //Docker Compose// comme celui-ci : 
- 
-<code yaml> 
-grafana: 
-  image: registry.picasoft.net:​5000/​grafana:​5.2.4-1 
-  container_name:​ grafana 
-  volumes: 
-    - /​DATA/​docker/​grafana:/​var/​lib/​grafana 
-  environment:​ 
-    - GF_DEFAULT_INSTANCE_NAME=picasoft 
-    - GF_SERVER_ROOT_URL=https://​grafana.picasoft.net 
-    - GF_SECURITY_ADMIN_USER=admin_user_name 
-    - GF_SECURITY_ADMIN_PASSWORD=admin_user_password 
-  labels: 
-    - "​traefik.frontend.rule=Host:​grafana.picasoft.net"​ 
-    - "​traefik.port=3000"​ 
-    - "​traefik.enable=true"​ 
-  restart: always 
-</​code>​ 
- 
-Comme Grafana s'​execute en utilisateur non-root, il faudra correctement donner les droits d'​accès au volume qui est monté. L'​utilisateur de Grafana a l'​UID/​GID ''​472'',​ on fait donc ''​mkdir -p /​DATA/​docker/​grafana && chown 472:472 /​DATA/​docker/​grafana''​ 
- 
-==== Utilisation ==== 
- 
-Une fois l'​instance déployée, on peut se connecter dessus à l'aide des identifiants d'​administration et commencer à configurer Grafana. 
- 
-Il y a 2 concepts importants à comprendre dans Grafana : les //​datasources//​ et les //​dashboards//​. \\ 
-Les //​datasources//​ sont, comme le nom l'​indique,​ des sources de données pour Grafana. Ce sont des connecteurs qui peuvent se connecter à un grand nombre de base de données : InfluxDB, Prometheus, OpenTSDB, etc. \\ 
-Les //​dashboards//​ sont tout simplement des vues sur lesquelles il est possible de mettre plusieurs graphiques à visualiser. 
- 
-=== Datasources === 
- 
-Dans notre cas, Picasoft a simplement configuré un //​datasource//​ de type InfluxDB. Il suffit de lui indiquer l'URL de InfluxDB ainsi que les identifiants permettant de lire la base de donnée. Il est important de spécifier, pour des raisons de sécurité, des accès en lecture seule à Grafana puisqu'​il n'y a pas besoin d'​aller écrire dans la base. 
- 
-=== Dashboards === 
- 
-Pour Picasoft, il convient de créer un //​dashboard//​ pour chaque service, et d'y afficher l'​ensemble des métriques du service. Nous n'​allons pas entrer dans le détail sur la configuration de //​dashboards//​ Grafana ici, car [[http://​docs.grafana.org/​|la documentation]] est relativement complète. 
- 
-Quelques ressources :  
-  * [[http://​docs.grafana.org/​features/​datasources/​influxdb/​|Utiliser Grafana avec InfluxDB]] 
-  * [[https://​gitlab.utc.fr/​picasoft/​picasoft-metrics-bot|Liste des métriques de Picasoft]] 
- 
  • technique/monitoring/metrics/influxdb.txt
  • Dernière modification: il y a 2 semaines
  • par kyane