décembre 4, 2011 2

Monitoring mongoDB avec MMS (par 10gen)

By in Monitoring

Mongodb et monitoringMongoDB est une excellent alternative pour se frotter au nosql.

Une documentation très riche, soutenue par une société ET une communauté très actives, des versions pour toutes les machines possibles, suffisament de drivers pour n’avoir AUCUNE excuse de ne pas essayer, de grands noms affichant ouvertement leur utilisation EN PRODUCTION et support à cette base de données, autant de critères qui, pour peu qu’on fasse abstraction de certains HATERZ (et ils sont, comme toujours sur le web, nombreux), ne peuvent que vous encourager a essayer mongoDB. Ce n’est pas l’objet de cet article. La vérité, c’est que mongo.db, ca scale, méchamment, mais qu’on sait pas trop comment ni pourquoi (enfin si, mais encore une fois, là n’est pas la question aujourd’hui).

La société qui m’emploie s’est lancée il y a quelques mois dans un projet absolument génial (dans l’idée d’abord, mais aussi pour le champs des possibles qui nous à été offert d’un point de vue purement technique), et vous vous en doutez, nous nous sommes tournés vers mongo pour le stockage d’une partie de nos données.

Ce que nous n’avions pas prévu en revanche, c’est que ce projet se retrouverai, juste après le lancement en Alpha, en suspend. Raisons invoquées (à très juste titre soit dit en passant)d’autre projets sur le feu, et équipe trop réduite. Cela ne veut pas dire que le projet est mis au placard, voire à la poubelle, mais qu’il va être gelé dans son état actuel jusqu’à ce que les dossiers en attente soient bouclés. Soit. Cela correspond à peu prêt à 2 mois de “pause”. Mais, une alpha sans collecte de données, sans retour d’expérience, sans datamining, c’est juste inutile. Autant capitaliser sur ce grand bol d’air pour collecter un maximium de données, les traiter régulièrement, et en tirer des conclusions pour la suite.

C’est dans cette optique que j’ai découvert MongoDb Monitoring Service (MMS).

Une sonde gratuite pour vos instances mongodb

Oui, gratuite. MMS est un service gracieusement fourni par 10gen à tous les utilisateurs de leur base de données chérie. Cet agent est installable très simplement. Après vous être créé un compte , il ne vous restera qu’a installer l’agent sur le serveur mongod de votre cluster. Que vous fassiez usage du sharding ou pas, l’agent ne doit être installé que sur votre serveur master, et se chargera de récupérer les données de vos différents shards.

Les données monitorées ainsi ?

Oui, j'ai fais quelques stress tests ce jour là ;)

De base, vous aurez par la suite accès à une interface relativement claire condensant :

  • cpu time
  • db storage
  • page faults
  • repl lag
  • replica
  • network
  • cursors
  • queues
  • connections
  • background flush avg
  • lock %
  • btree
  • non-mapped virtual memory
  • memory
  • asserts
  • opcounters-repl
  • opcounters

Ainsi que des stats par base:

  • collections
  • objects
  • average object size
  • data size
  • storage size
  • num extents
  • indexes
  • index size
  • file size

Je regrette néanmoins que, malgré toutes les données ainsi récupérées, on ne puisse pas configurer d’alerte (mail, sms, voire jabber) selon les données et seuils que l’on le souhaite. Le seul moyen d’avoir des infos sur l’état de vos bases mongo.db, c’est de se connecter a votre espace personnel. Un peu léger pour faire du monitoring 24/24.

Pourtant, on ne peut qu’apprécier la qualité du produit. Et plus généralement la position de 10gen avec leurs services et produits. En effet, 10 minutes à peine après avoir contacté la société sur la question des alertes cutom, je recevais une réponse de la part de Max Schireson :

 Yes, we are planning to add user customizable alerting. We think it will be very popular, but I can’t give a specific release date right now.

Voila qui a de quoi réjouir et rassurer. Ils lisent leurs mails, vite, et y répondent, vite. Je sais, ce n’est peut être qu’un détail, mais lorsque l’on confie un point aussi critique de son archi et de sa stratégie de monitoring/bench à un service tierce, c’est tout de même très appréciable.

Alors, qu’attendez vous pour tester ce service utile ?

Oh, une derniere info utile : Manning publications vient juste de mettre en vente la version définitive de Mongodb in action, alors si vous envisagez de l’acheter, c’est le moment, puisque vous pouvez profiter de 39% de remise en utilisant le code

mongo39svem

Plutot cool, non ?

2 Responses to “Monitoring mongoDB avec MMS (par 10gen)”

  1. Ryan dit :

    Generic/field/metric alerts will be released very soon (possibly this week). If you would like access to the beta program, create a private jira ticket here (same credentials used for MMS):

    https://jira.mongodb.org/secure/CreateIssue.jspa?pid=10582&issuetype=6&Create=Create

  2. Tom dit :

    Sympa de présenter ce super produit (qui sert surtout de prospection à cette jeune start-up qui enchaine les levées de fond ;-)

    Et donc un avis sur Mongo et l’utilité de cet outil ?

Leave a Reply