PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Wooster by CheckmyWebsite : Graphite & StatsD: Le tandem de choix pour vos métriques

vendredi 28 février 2014 à 09:30

Je proposais dans ce précédent billet de considérer Collectd, Logstash, ElasticSearch et Kibana comme une solution alternative de supervision. Cette solution ne saurait pourtant être complète sans un traitement digne de ce nom des métriques que sont capables de collecter ou produire en grands volumes Collectd ou Logstash.

Graphite

Graphite est un système dédié au stockage et à la visualisation de métriques en tous genres. Le projet est très actif avec pas moins de 110 contributeurs et près de 2000 commits.

Il est composé de 3 parties modulaires.

  • Carbon Whisper est la base de données de type séries chronologiques «time series database». Elle sert à stocker les métriques et fonctionne comme RRD; à savoir lissage des données dans le temps et taille fixe de la base à la création. Il est à noter que Whisper sait, depuis la version 0.9.9 de Graphite, stocker des événements comme des commentaires sur un graphe…
  • Carbon Cache est le démon réseau en charge de la récupération des métriques depuis les outils tierces et de leur stockage dans un backend approprié comme Whisper par défaut.
  • Graphite Web est une interface de recherche, visualisation des métriques construite avec Django.

Il y a d’autres pièces au puzzle (carbon-aggregator et carbon-relay) mais celles-ci ne sont pas indispensables au bon fonctionnement de Graphite et sont plus réservées aux grosses architecture; «comprendre beaucoup, beaucoup de métriques à stocker».

La force de Graphite tient à son architecture modulaire et son API.

Cohabitation avec l’existant

Graphite est un excellent choix si vous avez déjà en place une solution de supervision Open Source «traditionnelle» et que vous souhaitez faire évoluer la partie relative aux traitement des données de performance.

Côté serveur

Les Nagios, Naemon et compatibles peuvent se tourner vers Graphios; un plugin qui permet d’envoyer vers Graphite les perfdatas issues de ces logiciels. Vous pouvez également interroger les valeurs stockées dans Graphite depuis Nagios avec check_graphite.

Shinken possède un module natif qui permet d’envoyer les données de performance vers Graphite.

Sensu implémente nativement une route vers Graphite. Il suffit de préciser ce type de route pour le résultat de vos contrôles. Il possède également un client natif pour interroger les données contenues en base Whisper via l’API de Graphite.

Si vous utilisez Zabbix, vous pouvez regarder ce dépôt Github qui tente de marier les deux.

De plus, Graphite sait lire les fichiers RRD, ce qui peut permettre dans de nombreux cas une migration en douceur, avec une phase de transition mixte RRDTool et Graphite. Transférez tous vos RRD vers l’espace de stockage de Graphite et accédez à tous ces données directement depuis l’interface web de Graphite.

Côté client

Côté collecte des données, il existe pas mal de clients «natifs» comme Collectd, Logstash mais aussi sFlow. Regardez du côté de cette liste plutôt complète.

J’entends par natif des programmes capables de soumettre via le réseau vers carbon-cache des données de métrologie correctement formatées.

L’un des points forts de Graphite est incontestablement ce format de données, réduit à un formalisme plus que minimal mais suffisant.

metric_path value timestamp\\n

Par exemple, la métrique suivante est correctement formatée pour être soumise à carbon-cache.

collectd.kvm001.cpu_load.short_term 0.1 1393578797

Elle peut correspondre à une valeur de CPU «cpu_load» à 1 mn «short_term» de 0.1 sur le serveur kvm001 collecté par collectd.

Pour les clients non natifs, Graphite sait se connecter à AMQP pour récupérer des données et c’est donc une possibilité de plus pour connecter vos métriques à Graphite.

Installation de Graphite

Celle-ci pouvait s’avérer assez pénible auparavant mais la disponibilité de paquets pipy permet aujourd’hui une installation facile.

Vous pouvez également trouver des scripts d’installation comme celui-ci ou des containers Docker à foison.

L’API de Graphite

L’API REST de Graphite est sans conteste un des points forts de la solution. Elle est à la fois simple et puissante à manipuler.

Pour commencer à interroger Graphite et générer un graphe correspondant à cette requête, il faut se rendre à l’adresse http://GRAPHITE_HOST:GRAPHITE_PORT/render.

Ainsi, http://graphite/render?target=server.web1.load&height=800&width=600 vous permet de grapher en 800x600 la charge du serveur web1.

Quand vous saurez qu’il est possible d’utiliser n’importe où dans la requêtes des caractères «joker» comme *, vous aurez une idée des possibilités offertes.

En reprenant l’exemple ci-dessus, il est possible de demander la charge de tous les serveurs avec cette requête http://graphite/render?target=*.*.load&height=800&width=600.

En combinant ceci avec les fonctions puissantes de Graphite, il devient possible de faire des choses assez subtiles comme les deux exemples ci-dessous.

La requête utilisée pour ce graphe est

http://graphite.infra.loc/render?target=stacked(asPercent(sensu.*.load_avg.one))&from=-1day&height=500&width=1000
Les 3 serveurs les plus consommateurs en CPU
Les 3 serveurs les plus consommateurs en CPU

Ce premier graphique représente les serveurs les plus chargés en pourcentage de la charge totale. Il peut certainement être amélioré visuellement! Par contre, il me donne déjà les noms des 5 serveurs les plus chargés de mon infrastructure, ce qui peut rendre de réels services.

Le deuxième exemple résout le problème de la charge d’un serveur qui oscille régulièrement au dessus d’un seuil fixe et qui provoque du coup une alerte qui est souvent un faux positif; votre serveur continuant à fonctionner normalement bien au delà de cette limite.

Nous allons faire une requête

http://graphite.infra.loc/render?target=holtWintersForecast(sensu.kvm611.load_avg.one)&target=dashed(holtWintersConfidenceBands(sensu.kvm611.load_avg.one))&target=sensu.kvm611.load_avg.one&target=secondYAxis(holtWintersAberration(sensu.kvm611.load_avg.one))&from=-1day&height=600&width=1200

qui donne ce graphe.

Seuils dynamiques
Seuils dynamiques

La ligne bleue est la valeur collectée via Sensu pour la charge CPU à une minute sur kvm611. La ligne verte est une prédiction, prévision basée sur les algorithmes HoltWinter. Enfin les deux lignes rouges et violettes sont les limites hautes et basses de la zone de confiance HoltWinters. La ligne marron représente les aberrations observées par rapport aux prévisions.

Autrement dit, tant que votre charge machine se trouve dans cette zone ainsi délimitée, tout va bien. La CPU est sur un comportement «normal», même si la charge observée sur le serveur est supérieur à 1.

En travaillant avec ce type de requêtes, il devient possible d’alerter uniquement sur une aberration de comportement d’un serveur et non sur le croisement d’un seuil fixe ne représentant pas forcément grand chose.

Interfaces de visualisation

L’interface native de Graphite n’est pas son point fort. Les graphiques sont basiques et ne permettent aucune interactivité. Pas de zoom, pas de valeur affichée au survol de la souris, un paramétrage des graphes assez complexe, des dahsboards assez rudimentaires comme ci-dessous…

Graphite dasboard exemple
Graphite dasboard exemple

C’est ce qu’ont dû se dire les auteurs des projets ci-dessous qui essaient tous d’amener la visualisation des métriques vers d’autres cieux.

Tasseo

Tasseo a été une des premières alternatives à l’interface par défaut de Graphite. À noter que cette interface peut également fonctionner pour InfluxDB et Librato.

Tasseo Graphite Dashboard
Tasseo Graphite Dashboard

Grafana

Grafana est le dashboard qui fait sensation en ce moment dans la communauté Graphite. Très inspiré de Kibana dont il reprend je crois une partie du code source, le projet se veut être le de-facto standard des interfaces pour Graphite. Et les nombreuses fonctionnalités présentes pourraient bien lui donner ce statut assez rapidement.

Grafana Graphite Dashboard
Grafana Graphite Dashboard

Giraffe

Giraffe s’appuie sur les librairies Rickshaw et donc d3. Ces deux librairies graphiques sont parmi les plus prometteuses dans le monde Open Source.

Giraffe Graphite Dashboard
Giraffe Graphite Dashboard

Il existe en fait une bonne dizaine d’interfaces différentes pour Graphite et je me suis borné à présenter celles qui ont retenues mon attention. Nous aurons l’occasion de revenir plus en détail sur quelques unes d’entre elles dans de prochains billets.

Bases de données alternatives

La partie stockage de données est la partie sur laquelle de nombreux utilisateurs de Graphite s’accorde à vouloir d’autres possibilités que Whisper. Le fait que cette base de données gère des fichiers plats fait que cette partie de Graphite n’est pas la plus facile à «scaler».

Du coup, plusieurs solutions commencent à être développées pour ouvrir Graphite à d’autres moteurs de bases de données, surtout les bases de données de séries chronologiques bien sûr.

  • OpenTSDB: Plutôt une façon d’utiliser Graphite web avec OpenTSDB plutôt qu’un stockage vers celui-ci.
  • Cyanite
  • MongoDB: Pas encore de lien à fournir mais ça pourrait venir un jour. Certains développeurs discutent en ce moment de l’intérêt de ce type de backend pour Graphite.
  • Ceres
  • Cassandra Cyanite

StatsD

StatsD est un démon réseau qui fonctionne au dessus de Node.js. Il reçoit depuis n’importe quelle application, système des statistiques (counters, timers, gauges…) envoyés sur UDP. Il envoie les agrégats de ces statistiques vers tous types de backends comme:

  • amqp-backend
  • datadog-backend
  • ganglia-backend
  • hosted graphite backend
  • instrumental backend
  • leftronic backend
  • librato-backend
  • mongo-backend
  • monitis backend
  • opentsdb backend
  • socket.io-backend
  • stackdriver backend
  • statsd-backend
  • statsd http backend
  • statsd aggregation backend
  • zabbix-backend

Le backend de StatsD par défaut est Graphite.

Ce qui fait la force de StatsD est sa simplicité. Tellement simple qu’il est possible d’envoyer une statistique depuis n’importe quel logiciel, programme ou application mais aussi directement depuis le système ou autres.

Ainsi cet exemple minimaliste incrémente le compteur de production.login_service de 1 et envoie cette statistique vers le serveur statsd.example.com sur le port 8125.

echo "production.login_service:1|c" | nc -w 1 -u statsd.example.com 8125

StatsD est-il en train de devenir un «standard» ? Il est légitimement possible de se poser la question quand on voit la liste d’implémentations du «protocole» compilé par Joe Miller.

Bien évidemment, StatsD est compatible Graphite. Il sait donc envoyer les données récoltées vers carbon-cache. Ces quelques lignes de configuration suffisent à minima:

{
  graphitePort: 2003, 
  graphiteHost: "127.0.0.1", 
  port: 8125, 
  backends: [ "./backends/graphite" ]
}

StatsD est vraiment un complément quasi indispensable avec Graphite. il permet d’envoyer des données vers celui-ci de façon très simple, en masse grâce à UDP plutôt que TCP, et permet d’instrumenter facilement les applications. Il permet également d’envoyer vers Graphite toutes les x minutes un agrégat des métriques récoltées.

Une conclusion en forme d’introduction

J’avais écrit il y a quelques années que Nagios pouvait être au cœur de la supervision Open Source. Ce rôle pourrait bien être aujourd’hui celui de Graphite et StatsD tant ce tandem forme les fondations d’une solution puissante de métrologie.

Nous n’avons fait que présenter rapidement le potentiel de Graphite et StatsD et il reste beaucoup à dire sur les possibilités d’architecture de la solution en utilisant carbon-relay par exemple.

Beaucoup à dire aussi sur les réglages de rétention et de taille de bases de données avec Whisper.

Beaucoup à faire pour brancher tous les outils que nous aimons chez Check my Website comme sitespeed.io, Phantomas pour n’en nommer que deux.

Et surtout, il reste beaucoup à expérimenter sur quelles métriques, quelles représentations de celles-ci dans le cadre de la supervision d’un site web.

Ce n’est donc pas une conclusion mais le départ de nouvelles «aventures» en matière de supervision, monitoring de sites web que nous mènerons dans le cadre du développement de notre service Check my Website et que nous viendrons partager avec vous.

Gravatar de Wooster by CheckmyWebsite
Original post of Wooster by CheckmyWebsite.Votez pour ce billet sur Planet Libre.

crowd42 : Si vous avez aimé Telegram, vous allez adorer la nouvelle version de TextSecure

vendredi 28 février 2014 à 06:04

Il y a plus de deux ans, je vous ai parlé de TextSecure, une application pour Android qui permet de remplacer le système par défaut qui gère les SMS. Une fois Au premier lancement, TextSecure vous propose de définir un mot de passe et d’importer l’ensemble de vos sms, qui seront par la suite chiffrés, ainsi que tous ceux qui vous envoyez et recevez (à condition que le destinataire luiutilise aussi l’application).

Hier, TextSecure a franchi un nouveau cap pour devenir une vraie application de messagerie instantanée, comme Telegram ou WhatsApp. Ainsi, elle ne dépend plus des services SMS/MMS. C’est ce qu’on peut lire dans un billet publié par Moxie sur le blog WhisperSystems :

Today’s release of TextSecure is the final step in the transition from a private SMS app to a private asynchronous IM app that does not depend on SMS/MMS.

Using the lessons we’ve learned from the SMS environment over the past four years, we’ve developed an open protocol for asynchronous chat that enables private communication instantly with friends, private groups for realtime collaboration, and the ability to quickly and seamlessly share media privately – all without depending on SMS.

Dans ce nouveau protocole, les communications entre deux utilisateurs sont chiffrées de bout en bout, un grand effort a été fait pour simplifier ce processus :

We’ve also made a substantial effort to simplify the typically difficult user experience that comes with end to end encrypted communication. The new TextSecure protocol doesn’t require a round trip key exchange process, eliminates half-open sessions, and is lightning fast – all without compromising forward secrecy or deniability

Autre nouveauté apportée par cette nouvelle version est la possibilité de démarrer des sessions de chat en groupe. Là aussi, les messages sont chiffrés et les serveurs de TextSecure n’enregistrent pas les messages échangés ni ont accès aux méta-données si cher à la NSA (liste des membre du chat, titre du groupe…).

Et pour ceux qui souhaitent envoyer des SMS chiffrés, l’option n’a pas été enlevée de cette nouvelle version, il faut seulement l‘activer pour pouvoir le faire.

Pour le moment TextSecure n’est disponible que pour Android, mais une version pour iOS est prévue dans très peu de temps selon le billet de moxie

source

Cet article Si vous avez aimé Telegram, vous allez adorer la nouvelle version de TextSecure est apparu en premier sur crowd42.

Related posts:

  1. Installez la nouvelle version 1.2 de Mate sur Ubuntu 12.04
  2. TextSecure : une application android pour chiffrer vos sms
  3. Telegram : l’alernative à WhatsApp qui chiffre vos message

Gravatar de crowd42
Original post of crowd42.Votez pour ce billet sur Planet Libre.

La vache libre : Audio Output Switcher – Une extension pour changer de sortie audio en 1 clic sous Gnome Shell

jeudi 27 février 2014 à 19:51

Si vous suivez l’actu Ubuntu et plus particulièrement celle d’Unity, vous savez sans doute qu’un nouvel applet servant à changer rapidement de sortie audio va faire son apparition dans le panel. Si vous êtes plutôt Gnome Shell (je vous félicite) ne soyez pas jaloux, aigris ou grincheux, car vous allez dès a présent pouvoir profiter d’un applet similaire, grâce à une extension plutôt coquette et bienvenue. Une fois installée et activée, celle-ci va permettre à votre système de détecter automatiquement (à chaud) l’insertion d’un périphérique de sortie tel qu’un casque audio par exemple et vous permettre d’accéder aux options de volume le concernant en 1 clic, depuis le menu son du panel. C’est vraiment super pratique car cela nous évite l’étape fastidieuse, qui consiste à devoir se rendre dans le menu des paramètres pour sélectionner la sortie audio à activer.

Alors si ça vous tente vous pouvez de ce pas vous rendre sur la page de l’extension et l’installer avant de l’activer avec Gnome Tweak Tool.

NB : Si vous le souhaitez l’auteur de l’extension en avait déjà fait une similaire, qui se charge des périphériques d’entrée. Vous pouvez la télécharger sur cette page.

Amusez-vous bien.

via (qui m’emmer… avec leur pop-up Facebook et que je ne vais pas tarder à virer de mes flux pour cela). Franchement, arrêtez avec ce genre de m… intrusives les gars.

Gravatar de La vache libre
Original post of La vache libre.Votez pour ce billet sur Planet Libre.

Association GOALL : La région Rhône-Alpes aime le Libre, elle a tout compris

jeudi 27 février 2014 à 12:14

La région Rhône-Alpes vient d’adopter à l’unanimité, en session plénière, les principes de mise en œuvre d’une politique active en matière d’interopérabilité, de logiciels libres et de données publiques ouvertes.

Elle s’engage notamment à promouvoir et à inciter à l’utilisation de fichiers numériques publiés sous des formats ouverts, à privilégier pour ses usages bureautiques courants et ses «logiciels métiers», les systèmes d’exploitation et logiciels libres, à inscrire son action dans une logique de développement d’un patrimoine commun de logiciels libres et à rentrer activement dans une démarche d’ouverture des données qu’elle produit (Open Data).

Elle encourage tous ses partenaires à agir dans le même sens, les lycées, les CFA, les universités, les collectivités locales, les entreprises, les exploitations agricoles, les associations, le grand public, les autres régions françaises et ses partenaires à l’international.

Notons aussi que la région Rhône-Alpes vient d’adhérer à l’APRIL et à l’ADULLACT.

Partagez cet article : PDFPrintAdd to favoritesGoogleEmailTwitterFacebookGoogle PlusLinkedInViadeo FRPinterestTumblrBlogger

Gravatar de Association GOALL
Original post of Association GOALL.Votez pour ce billet sur Planet Libre.

Framablog : L'AFUL invite les enfants à dessiner les risques et menaces informatiques

jeudi 27 février 2014 à 11:56

« Dessine-moi les menaces informatiques ! »

Telle est la proposition de l’AFUL qui souhaite ainsi sensibiliser la jeune génération sur cet épineux sujet.


AFUL


Dessine-moi les menaces informatiques ! Comment se protéger de l’informatique à l’ère post-Snowden

URL d’origine du document

Février 2014 - AFUL

À l’occasion de la publication de son document « Comment se protéger de l’informatique, ou l’informatique à l’ère post-Snowden » l’AFUL organise une grande activité de dessin pour les enfants en leur demandant « Dessine-moi les menaces informatiques ! ».

L’AFUL vient de publier le document Comment se protéger de l’informatique, ou l’informatique à l’ère post-Snowden.

À cette occasion l’AFUL convie les enfants de 7 à 17 ans à dessiner ce que leur évoquent les menaces informatiques (de celles des téléphones portables aux navigateurs Internet des ordinateurs de bureau) en même temps que des bonnes habitudes à prendre.

Il est demandé que les dessins envoyés soient placés sous une licence libre, idéalement Creative Commons Paternité - Partage des Conditions Initiales à l’Identique (ce sera la licence par défaut si rien n’est précisé) de manière à ce que l’AFUL puisse les publier et qu’ils servent au plus grand nombre.

Alors jeunes gens, filles et garçons, à vos crayons de couleur, crayons feutres et/ou logiciels de dessin !

Nous attendons des dessins de toute la francophonie (Afrique, Europe, Amérique du Nord, DOM-TOM français, écoles francophones), nous voulons voir quel est le degré de prise de conscience sur toute la Terre.

Dans la continuité de son accord cadre avec le ministère de l’Éducation, l’AFUL sollicite les maîtresses et maîtres d’école, les professeurs, les éducateurs et bien entendu les parents pour assurer l’encadrement et la motivation des troupes. Ce peut être aussi l’occasion de nouer des partenariats pédagogiques. Un dossier pédagogique sera fourni aux adultes sur ces sujets, histoire de ne pas alimenter de paranoïa mais bien de donner des éléments favorisant la compréhension du sujet par des citoyens libres et éclairés.

Les dessins peuvent être envoyés par n’importe quel moyen et sous n’importe quelle forme. Que ce soit par la poste ou par voie électronique. Dans le cas d’un gros fichier, pensez à plutôt le mettre à disposition sur un espace en ligne plutôt que de nous l’envoyer par courriel, ce qui aurait pour effet de saturer nos boîtes aux lettres.

Les dessins sont à envoyer à :

dessine-moi-les-menaces-informatiques@aful.org

ou

AFUL
Boîte associative 14
23 rue GRENETA
75002 PARIS
FRANCE

Toutes les classes, et tous les enfants en individuel, ayant participé recevront un diplôme personnalisé de l’AFUL !

L’opération dure toute l’année civile 2014, dans le cadre de Éducation au numérique : grande cause nationale 2014. La date limite pour envoyer vos dessins est donc le 31 décembre 2014.

L’espoir est dans les jeunes générations. Des jeunes qui s’interrogent, qui exercent leur esprit critique, qui savent programmer, c’est l’espoir d’avoir des citoyens et des décideurs qui comprennent l’outil informatique. Plutôt que de le subir (perdre la main sur ses données personnelles, etc.) ou de s’en servir comme justification de l’incompétence (choix des ordinateurs de vote, etc.) ou du manque de courage (prescription de logiciels non libres, etc.), ils pourront en tirer parti pour le bien de la société.

Gravatar de Framablog
Original post of Framablog.Votez pour ce billet sur Planet Libre.