Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Déployer MongoDB avec Cloudify

Déployer MongoDB avec Cloudify

MongoDB User Group Paris

Avatar for Mathias Kluba

Mathias Kluba

January 01, 2013

More Decks by Mathias Kluba

Other Decks in Programming

Transcript

  1. User Group (Paris) Janvier 2013 Novembre 2012 SOA - BRMS

    - ESB - BPM – CEP – BAM - High Performance – Compute & Data Grid - Cloud Computing - Big Data – NoSQL – Analytics - Mobile Mathias Kluba Managing Consultant – Responsable offres NoSQL et Big Data
  2. Ce que nous faisons chez FastConnect: ▪ Expertise, Audits ▪

    Présentations, POC ▪ Support (FR + 10gen) Ce que nous avons donc besoin: ▪ Audit: Déployer rapidement la topologie du client pour reproduire les problèmes de performance ▪ POC: Déployer rapidement un cluster MongoDB pour un POC pour une démo au client ▪ Support: Déployer rapidement la topologie du client pour reproduire les problèmes Besoin
  3. Chef / Puppet ▪ Mieux qu’un script DIY: maintenu par

    la communauté ▪ Pas de création de VMs ▪ Pas de configuration du cluster (orchestration) ▪ Pas de monitoring / failover / autoscaling Déploiement 5
  4. Développement de son propre agent Ex: Services windows qui: ▪

    Téléchargent MongoDB pour l’installer ▪ Surveillent si le processus MongoDB a crashé ▪ Redirigent les logs ▪ Effectuent des opérations de maintenance Déploiement 6
  5. Cloudify Qu’est-ce que Cloudify? ▪ Recipe d’une application ▪ Composé

    de plusieurs services (MongoS, MongoD, MongoConfig) ▪ Scripts de déploiement ▪ Groovy, shell, puppet, chef ▪ Lifecycle: install, postinstall, start, etc. ▪ Contexte du déploiement de l’application ▪ On peut attendre qu’un service soit démarré ▪ On peut récupérer l’IP des services ▪ On peut exécuter des « custom commands » sur ces services
  6. Cloudify Qu’est-ce que Cloudify? ▪ Créations de VM ou BYON

    ▪ Drivers Cloud: Amazon, Rackspace, etc. ▪ Déploiement possible sur vos propres serveurs ▪ Monitoring ▪ Failover / Autoscaling ▪ Exécution de commandes à distances sur toutes les instances ▪ Exemple: backup/restore
  7. Cluster MongoDB Manager VM MongoDB: Déploiement Recipes Portal / Manager

    VM agent MongoD VM agent MongoS VM agent MongoConfig VM agent MongoD VM agent MongoD
  8. Manager VM MongoDB: Custom command invoke mongod dump Portal /

    Manager VM agent MongoD VM agent MongoD VM agent MongoD mongodump mongodump mongodump
  9. Manager VM MongoDB: Custom command Portal / Manager VM agent

    MongoD VM agent MongoD Monitoring VM agent MongoS Déploiement « updateHosts »
  10. ▪ Déployer MongoDB, Sharding, 2 instances de MongoD ▪ install-application

    -disableSelfHealing --verbose \ /Users/mathias/Documents/workspace/mug-demo/mug-demo ▪ Lancement du programme Java pour déclencher l’auto-scaling ▪ Killer le processus mongo pour déclencher le fail-over ▪ Scale-down manuel ▪ set-instances mongod 2 Demo
  11. ▪ Cloudify: ▪ http://www.cloudifysource.org ▪ Démo sur Youtube: ▪ http://www.youtube.com/user/fastconnecttv

    ▪ Blog FastConnect ▪ http://blog.fastconnect.fr/ Pour aller plus loins…