Netdata : Real-Time performance monitoring

Posted by on 4 Avr 2016 in Planet, Supervision | 1 comment

 

Le monitoring est l’un des enjeux actuels des outils de supervision (ici, le terme supervision est pris dans son sens le plus large possible). Pour rappel, le monitoring consiste à récolter des données numériques et tracer leur évolution dans le temps sur des graphiques. Ceci est pour le cas d’utilisation le plus simple. Cependant, le cas d’utilisation actuel est plus complexe :

  • prédire quand l’indicateur mesuré dépassera une valeur cible afin de pouvoir anticiper ;
  • combiner les indicateurs entre eux ;
  • faire des calculs sur les valeurs afin d’en tirer une information consolidée plus intéressante ;
  • analyser automatiquement les valeurs pour éviter d’alerter inutilement ;
  • stocker cette masse d’informations ;
  • être performant ;
  • disposer de fonctions graphiques permettant une utilisabilité optimale ;
  • être visuellement agréable ;

Ceci vaut notamment pour les infrastructures disposant de nombreux équipements. Est-ce que cela est nécessaire pour tout le monde? C’est oublié la maxime less is more : en faire moins, retirer tout ce qui n’est pas utile pour extraire l’intérêt premier d’un outil. Netdata est un outil libre (GPLv3) de ce type. Son intérêt est qu’il convient parfaitement à des parcs informatiques de quelques dizaines de serveurs.

Netdata, le monitoring pour les « petits » parcs informatiques

Netdata convient parfaitement aux petits parcs informatiques. Petit, ici, n’est pas péjoratif mais réaliste : est-il nécessaire de passer plusieurs jours à installer puis configurer un outil de monitoring en essayant de comprendre les différentes fonctions de consolidations et leurs différentes subtilités lorsqu’on est en équipe réduite, avec un budget et un temps limités ? Non, évidemment ! Netdata permet de disposer d’un outil relativement simple à installer et configurer et disposant de fonctionnalités intéressantes.

Netdata, le monitoring en temps-réel

Netdata n’est pas forcément dédié aux petits parcs informatiques. Il convient parfaitement aux grands parcs informatiques : dans ceux-ci, généralement, un outil de gestion de configuration est utilisé et peut permettre de déployer un logiciel et sa configuration sur l’ensemble des serveurs GNU/Linux. La philosophie de Netdata est le monitoring en temps-réel. Cela signifie que vous ne disposez pas d’une centralisation de toutes les informations mais d’une information en temps-réel sur chaque équipement. Vous devez vous connecter sur chaque équipement pour visualiser ses informations.

Il est à noter que la durée de rétention est paramétrable mais l’outil n’est pas conçu pour stocker les informations sur une longue période de temps. Augmenter de manière significative cette durée de rétention peut faire exploser la mémoire du serveur ou influer négativement sur ses performances.

Installation sur chaque équipement monitoré

Netdata s’installe sur chaque serveur monitoré. L’installation de Netdata nécessite une compilation des outils. Pour le moment, la procédure est documentée pour Debian, Ubuntu, RedHat, CentOs et ArchLinux. À la vue de celle-ci, elle peut aussi être adaptée pour d’autres distributions GNU/Linux et, pourquoi pas, pour les BSD voire les Unix propriétaires, si les dépendances sont disponibles. D’ailleurs, Netdata indique que l’outil a été testé avec succès sur Fedora et Gentoo.

Netdata ne gère pas le monde Windows pour le moment. Cela ne semble pas être prévu et nécessiterait une réécriture quasi-complète de l’outil.

Auto-détection et dashboard par défaut

Lors de son démarrage, Netdata va détecter automatiquement certaines informations et collecter les données. Il n’est pas nécessaire de déclarer toutes les interfaces réseaux, tous les disques, le nombre de CPU, la taille de la mémoire vive, … Il va aussi détecter automatiquement les processus « courants » (cron, ntp, named, ssh, nfs, nginx, …) et les grouper par « fonction » pour tracer la consommation CPU de chacun.

Par contre, il ne va pas détecter quelles sont les applications installées et activer automatiquement le « plugin » nécessaire. Par exemple, si vous souhaitez disposer d’indicateurs spécifiques sur MySQL ou NGinx, vous devrez activer le « plugin » et le configurer.

Un dashboard par défaut est proposé. Celui-ci contient tous les indicateurs. La configuration est complète, voire trop complète mais la configuration par défaut convient parfaitement.

Interface attrayante

L’interface est plutôt attrayante et les graphiques ressemblent, par certains aspects (couleurs, design, légende, …), à Grafana. Vous pouvez survoler les graphiques pour obtenir les valeurs mesurées. Sur des graphiques avec plusieurs valeurs tracées, il est possible de choisir quel élément sera tracé en cliquant sur la légende pour les afficher/cacher.

netdata : exemple de graphiques

netdata : exemple de graphiques

La première partie de l’écran est composé d’indicateurs globaux du système comme la moyenne des taux d’occupation des CPU, les écritures disques, le taux d’occupation de la swap, …

Netdata : overview

Netdata : overview

Pour naviguer dans les indicateurs disponibles, le menu se trouve à droite de l’écran et est composé en deux niveaux. Le premier niveau se replie automatiquement pour éviter de prendre trop de place et il est en position fixe, donc toujours visible : très pratique pour naviguer efficacement dans les indicateurs. Certains outils de supervision plus mainstream devraient s’en inspirer (suivez mon regard 😉 ).

netdata : menu des indicateurs

Il est possible de revenir dans le passé, en cliquant avec la souris sur le graphique, en maintenant le click puis en se déplaçant vers la gauche. C’est le même mouvement que pour se déplacer dans un outil en ligne de cartographie comme Google Maps par exemple.

L’interface permet de zoomer dans les graphiques, en enfonçant et en maintenant enfoncée la touche SHIFT du clavier puis sélectionnant la zone sur laquelle vous souhaitez zoomer à l’aide de la souris et en relâchant. Lorsque le bouton de la souris est relâché, tous les autres graphiques sont mis à jour à la même période : pratique.

Il est possible de zoomer dans le graphique différemment. Pour cela, il faut toujours enfoncer et maintenir la touche SHIFT du clavier, placer le pointeur de la souris sur un graphique et utiliser la roulette de la souris pour zoomer ou dé-zoomer. Problème : cette fonction n’est disponible que sur Chrome, pas sur Firefox ni sur IE/Edge. Aucune information n’est disponible pour les autres navigateurs (Safari par exemple) et n’en ayant aucun à ma disposition, je ne peux le vérifier.

Pour revenir à un « état normal » de l’interface c’est à dire à la visualisation temps-réel et un rafraîchissement automatique des graphiques, il suffit de double-cliquer sur un graphique.

Limites

Comme tout outil, Netdata a ses limites. Il est bon de connaître les points forts d’un outil mais aussi ses limites pour vérifier si celui-ci correspond à vos besoins.

Netdata est limité au monde GNU/Linux. Si votre parc informatique est composé de serveurs Windows, vous ne pourrez pas l’installer sur ceux-ci. Il est peut-être possible qu’il fonctionne sur *BSD, mais vous ne disposerez pas de tous les indicateurs collectés. Cela peut-être bloquant pour vous (ou pas!).

Netdata nécessite d’être installé sur tous les serveurs, contrairement à certains outils qui requiert uniquement l’installation d’un agent spécifique ou l’activation de SNMP. Cela peut-être très gênant sur les serveurs exposés sur Internet : il faut bien vérifier les règles de sécurité pour s’assurer qu’un potentiel attaquant n’aura pas d’accès à l’interface de Netdata et voir en temps réel quelles sont les meilleures actions pour « DOSer » votre serveur. Cependant, l’installation de Netdata sur chaque serveur se justifie dans le sens où l’outil a pour but de monitorer « en temps-réel » les serveurs.

L’intégration de Firefox et de IE/Edge n’est pas parfaite : il est impossible de faire un zoom arrière sur ses navigateurs. Cela n’est peut-être pas de la responsabilité des développeurs de Netdata car Firefox utilise SHIFT+mollette de la souris pour naviguer dans l’historique. Il est presque obligatoire d’utiliser Google Chrome pour utiliser Netdata : dommage!

Il manque un raccourci sous forme de boîte de sélection qui afficherait « la dernière heure », « les 3 dernières heures », … et qui permettrait de choisir la durée d’affichage par défaut.

La documentation est un peu fouillis : il est difficile de s’y retrouver lorsque l’on cherche un sujet précis. Elle est aussi incomplète sur certains sujets.

Read More

Meetup Monitoring à Genève, le 15 octobre 2015

Posted by on 1 Oct 2015 in Conférences & Salons, Supervision | Commentaires fermés sur Meetup Monitoring à Genève, le 15 octobre 2015

Et oui, il n’y a pas que la France pour organiser des Meetups Monitoring 🙂

 

Un Meetup Monitoring est organisé à Genève, en Suisse, le 15 octobre à partir de 18h00, sponsorisé par la société Open-IT. Comme pour les rendez-vous de Paris et de Nantes, l’objectif de cette rencontre est de discuter, partager avec d’autres experts mais aussi les amateurs, désireux d’en apprendre plus autour de la supervision, de l’hypervision et de la gestion des logs.

La soirée se déroulera dans les locaux de SeedSpace (11 Chemin de la Chevillarde, Genève). Tram 12, arrêt « Grange-Canal »

600_436879285

 

 

Pour ce premier meetup à Genève, voici l’agenda:

18:00 – Accueil des participants

18:30 – Matthieu (CTO – Open-IT) – mot de l’organisateur

18:45 – Laurent (IT Web Manager – Eurovision/EBU)

Présentation des stratégies de monitoring des sites web de l’Eurovision/EBU. (Nagios, ELK)

19:30 – Maximilien (Research & Development Engineer – Centreon)

Présentation MaaS, Monitoring as a Service.

Dans le monde de l’entreprise, les systèmes informatiques et par extension la supervision sont souvent considérés comme un centre coût. Souvent centré sur les infrastructures IT, la supervision peut aussi tendre à devenir un outil global qui permet de répondre aux besoins d’un plus large public et aux problématiques du métier.
Lors de cette présentation, nous tâcherons de voir comment se structure le MaaS en entreprise en abordant certains concepts permettant de faire évoluer la supervision dans ce sens.

20:00 – Zaid (Expert applicatif & performance monitoring – TCS)

Retour d’expérience des outils utilisés au TCS (Nagios, Newtest, Homemade, IBM Performance monitoring toolkit)

20:30 – Apéro / discussions

Si vous souhaitez participer à cet évènement, merci de vous inscrire sur le site de l’évènement.

Au plaisir de vous voir sur place!

Read More

Shinken Web UI version 2

Posted by on 15 Sep 2015 in Shinken | Commentaires fermés sur Shinken Web UI version 2

Après plusieurs mois sans activité, la nouvelle version de l’interface Web de Shinken a été publiée il y a quelques jours et mise à disposition de la communauté sur le site shinken.io. Cette nouvelle version est une refonte quasi complète de l’application Web UI (User Interface) qui améliore et enrichit les fonctionnalités des versions précédentes :

  • interface utilisateur moderne et responsive compatible avec la majorité des Web browsers
  • consultation en temps réel des données du framework Shinken (hosts, services, contacts, groups, timeperiods, …)
  • application opérationnelle dès l’installation
  • gestion des utilisateurs et de leur rôle
  • filtrage performant des ressources de supervision (hosts/services)
  • tactical views: worldmap, minemap, disponibilité, logs, …

Dans la suite de cet article, nous reviendrons sur les principales fonctionnalités de l’interface Shinken Web UI.

Read More

Meetup Monitoring à Paris, le 2 septembre

Posted by on 6 Août 2015 in Communauté, Conférences & Salons, Planet, Supervision | Commentaires fermés sur Meetup Monitoring à Paris, le 2 septembre

Un Meetup Monitoring est organisé à Paris le 2 septembre 2015, à partir de 19h par la société SOMONE. Le but de cette rencontre est de discuter avec d’autres experts de la supervision, de l’hypervision et du capacity planning. Le lieu de rendez-vous est dans les locaux de la société CRITEO, à Paris, au 32 rue Blanche, 75009 Paris (Plan).
Au programme de la soirée :

  • 19h00 : accueil des participants
  • 19h10 : présentation du meetup
  • 19h20 à 20h30 : talks
  • à partir de 20h30 : pizza et échanges

Monitoring-fr sera présent et fera une présentation sur la « vision de la Supervision Libre en entreprise ». Si vous souhaitez nous rencontrer, nous poser des questions ou échanger avec d’autres experts, venez nombreux! Pensez à vous inscrire directement sur le site de l’événement.

Le programme des talks est défini. Voici les présentations programmées :
# Unofficial Centreon Repositories for Debian
Par Eric Coquard (@kermith72, http://sugarbug.web4me.fr/)

La genèse du projet Package Centreon pour Debian, quelques exemples d’installations, la problématique de Debian Jessie.

# Nouveautés de Zabbix 3.0
Par Steve Destivelle (@stevedestivelle, Consultant chez SOMONE, http://steve.destivelle.me/)

Présentation des nouveautés de la prochaine version majeure de Zabbix.

# Surveiller et maintenir ses applications Node.js avec Keymetrics.io
Par Alexandre Strzelewicz (@strzel_a, CEO et co-fondateur de Keymetrics)

Je présenterai rapidement PM2, le gestionnaire de processus pour Node.js, suivit d’une présentation de Keymetrics.io et  d’une démonstration de l’ensemble.

# La vision de la supervision libre en entreprise
Par Romuald FRONTEAU (@rfronteau, co-fondateur de Monitoring-fr)

Cette présentation va évoquer la perception et la maturité des entreprises avec les projets de supervision Open Source par rapport au solution éditrice en fonction d’une étude du CIGREF basé sur la « Gouvernance et la maturité des projets Open source en entreprises » et le retour d’expérience d’administrateur Supervision au quotidien.

Read More

Plugin Monitoring pour GLPI version 0.80+1.2

Posted by on 19 Mar 2012 in Planet, Shinken, Supervision | Commentaires fermés sur Plugin Monitoring pour GLPI version 0.80+1.2

La nouvelle version est disponible. Il est possible de voir le détail de la version précédente ici.

Buts du projet

Je rappelle que GLPI (gestion de parc informatique & helpdesk) joue les rôles :

  • UI de  configuration avec son moteur de règles (les check sont définis dynamiquement grâce à l’inventaire automatique via FusionInventory par exemple)
  • UI de gestion des ressources / alertes / événements avec des vues techniciens et managers
Read More