Prenez contact avec nous

Plan du cours

Module 1 : Introduction et architecture de MongoDB (4h)

Contenu :

  • Historique et écosystème MongoDB
  • Cas d'usage typiques, avantages et inconvénients
  • Architecture générale : instances, processus et configuration

Pratique :

  • Exploration interactive : connexion avec Mongo Shell/CLI
  • Création d'une base de données et d'une collection d'exemple

Module 2 : Installation et configuration initiale (6h)

Contenu :

  • Exigences matérielles et ressources
  • Installation sur Linux (deb/rpm), Windows et macOS
  • Fichiers de configuration YAML (mongod.conf) : dataDir, logDir, bindIp, port
  • Options de démarrage et gestion via systemd/service

Pratique :

  • Déploiement d'instances sur des VM locales ou des conteneurs Docker
  • Ajustement des configurations pour le développement vs la production
  • Vérification de la connectivité distante sécurisée

Module 3 : Modélisation des données et opérations de base (5h)

Contenu :

  • Documents BSON, collections, bases de données
  • Modélisation : intégration (embedding) vs référence ; motifs de conception des données
  • Index de base (présentés précédemment)
  • Opérations avec Mongo Shell et exemples de scripts utilisant des pilotes

Pratique :

  • Modélisation d'un cas d'usage : système d'inventaire ou de facturation
  • Mise en œuvre d'opérations CRUD
  • Validation du schéma à l'aide de JSON Schema dans MongoDB

Module 4 : Indexation et performance (4h)

Contenu :

  • Index simples, composites, multi-clés, texte et géospatiaux
  • Utilisation de explain() et analyse des métriques
  • Impact des index sur les performances d'écriture et la mémoire

Pratique :

  • Création de collections avec des données de test
  • Test de requêtes avec et sans index ; interprétation de explain()/li>
  • Ajustement des index en fonction des modèles d'accès

Module 5 : Sécurité (5h)

Contenu :

  • Mécanismes d'authentification : SCRAM, LDAP/Kerberos (introduction)
  • Définition d'utilisateurs et de rôles personnalisés
  • TLS/SSL entre clients et serveurs
  • Chiffrement au repos : configuration des clés
  • Journalisation d'audit de base

Pratique :

  • Création d'utilisateurs avec des privilèges minimaux
  • Configuration du TLS sur des instances locales
  • Vérification des accès non autorisés et consultation des journaux d'audit

Module 6 : Réplication et haute disponibilité (6h)

Contenu :

  • Concepts de réplication : Primary, Secondary, oplog
  • Configuration des ensembles de réplication : initialisation, adhésion, arbitrage
  • Surveillance de l'état et des élections
  • Maintenance : ajout/suppression de membres, réassignation des priorités

Pratique :

  • Déploiement d'un ensemble de réplication à trois nœuds (local ou sur VM)
  • Simulation de la défaillance du nœud primaire et observation du basculement
  • Reconstruction des nœuds secondaires et récupération des répliques

Module 7 : Partitionnement (Sharding) et évolutivité horizontale (6h)

Contenu :

  • Concepts de partitionnement : clé de partition, serveurs de configuration, routeur mongos
  • Sélection de la clé de partition et risques associés
  • Déploiement des serveurs de configuration, des shards et de mongos
  • Équilibrage et migration de chunks

Pratique :

  • Configuration d'un cluster partitionné simple
  • Insertion de données à grande échelle et observation de la distribution
  • Introduction aux changements de clé de partition et compréhension des limitations

Module 8 : Sauvegarde, restauration et reprise après sinistre (4h)

Contenu :

  • Outils natifs : mongodump/mongorestore, instantanés du système de fichiers
  • Sauvegardes dans les ensembles de réplication et les clusters partitionnés
  • Utilisation basique de Cloud Manager/Ops Manager pour la sauvegarde
  • Planification de la reprise après sinistre (RAS) : RTO, RPO

Pratique :

  • Réalisation de sauvegardes et restaurations sur une base de données de test
  • Simulation de défaillance et récupération à partir d'une sauvegarde
  • Conception d'un plan de RAS pour un cas hypothétique

Module 9 : Surveillance et alertes (4h)

Contenu :

  • Outils : mongostat, mongotop, surveillance Cloud Manager/Atlas
  • Intégration avec Prometheus + Grafana (concepts et exemples)
  • Métriques clés : CPU, mémoire, E/S, taille de l'oplog, latences
  • Alertes : définition des seuils et des notifications

Pratique :

  • Déploiement d'un agent de surveillance local ou basé sur conteneurs
  • Configuration de tableaux de bord de base avec des métriques d'exemple
  • Simulation de charge et observation des alertes

Module 10 : Maintenance, mises à jour et meilleures pratiques (4h)

Contenu :

  • Stratégies de mise à niveau pour les ensembles de réplication et les clusters partitionnés
  • Nettoyage des données, compression, vérifications d'intégrité
  • Revue des journaux et audits réguliers
  • Automatisation des tâches courantes (scripts, cronjobs, Ansible, Terraform)
  • Politiques de conservation et d'archivage des données

Pratique :

  • Simulation de mises à niveau mineures et majeures dans un environnement contrôlé
  • Création de scripts d'automatisation pour la sauvegarde et la surveillance
  • Développement d'une liste de contrôle de maintenance périodique

Synthèse et prochaines étapes

Pré requis

  • Comprendre les concepts généraux des bases de données et des structures de données
  • Connaître l'utilisation de la ligne de commande Linux
  • Poséder des connaissances de base en réseau et en administration système

Public cible

  • Administrateurs de bases de données et ingénieurs système travaillant avec MongoDB
  • Équipes DevOps et d'infrastructure déployant et maintenant des environnements MongoDB
  • Développeurs intéressés par le fonctionnement interne de MongoDB et les meilleures pratiques de déploiement
 48 Heures

Nombre de participants


Prix par participant

Nos clients témoignent (2)

Cours à venir

Catégories Similaires