3. Intro: pourquoi Mongo?
Pourquoi avoir choisie MongoDB ?
§ BigData
§ Linéarité des coups de stockage
§ Requêtes riches
§ Agilité
§ Time to market: passer rapidement de DEV à PRD
§ Cloud
§ La Scalabilité horizontale n’est pas une option,
c’est une obligation
3
4. Intro: pourquoi Mongo?
Avantage majeur de MongoDB:
Scalabilité horizontale
§ Sharding
§ distribuer la charge en lecture/écriture
§ Replica Set
§ disponibilité / résilience
§ distribuer la charge en lecture
4
5. Introduction
Mais en pratique, quand on a 15 nœuds…
§ Comment déployer le cluster?
§ Comment monitorer? Agréger les logs?
§ Comment effectuer des opérations de
maintenances sur tous les nœuds?
5
7. Déploiement
Scalabilité
dynamique
/
récupéra4on
automa4que
Déploiement
Applica3ons
Monitoring
Meta
Déploiement
Middlewares
Déploiement
API
de
Infrastructure
Provisioning
7
8. Déploiement
Plusieurs solutions de déploiement:
§ Do it yourself!
§ Scripts shell?
§ Template de VM?
§ Chef
§ Puppet
§ Cloudify
§ VMWare App Director
§ Windows Azure
§ Amazon CloudFormation
§ MongoHQ (Mongo As A Service)
8
14. Démos
Démo: Puppet sur OpenStack
Centraliser la configuration puppet
§ serveur puppetmaster
§ chaque machine un client puppet
§ le rôle de la machine dépend d'un fact
14
21. Monitoring
Monitoring « As a Service »: MMS
§ Installation facile
§ Outil officiel de 10Gen
§ Le support 10Gen peut diagnostiquer
vos logs
§ Ne monitore que MongoDB
§ Externe à votre infrastructure
21
23. Monitoring
Monitoring « As a Service »: Server Density
§ Monitore le système (Windows/Linux/etc.)
§ Monitore Mongo de base
§ Monitore de nombreuses choses via plugins
§ Application iPhone/Android :)
§ Externe à votre infrastructure
23
28. Monitoring
Outils de Monitoring OpenSource existants:
§ S’intègre à votre SI
§ Monitore plus que MongoDB
(OS, Middlewares)
§ Reste en interne
§ Peut être complexe à installer/configurer
28