Prenez contact avec nous

Plan du cours

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

Contenu :

  • Histoire et écosystème MongoDB
  • Cas d'utilisation 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 systemd/service

Pratique :

  • Déploiement d'instances sur des machines virtuelles locales ou des conteneurs Docker
  • Ajustement des configurations pour le développement par rapport à 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 ; modèles de conception de données
  • Index de base (introduits précédemment)
  • Opérations avec Mongo Shell et exemples de scripts utilisant des pilotes

Pratique :

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

Module 4 : Index et performance (4h)

Contenu :

  • Index simples, composés, multi-clés, texte et géospatiaux
  • Utilisation de explain() et analyse des métriques
  • Impact des index sur les performances en écriture et l'utilisation de 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()
  • 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 des utilisateurs et des rôles personnalisés
  • TLS/SSL entre les clients et les serveurs
  • Chiffrement au repos : configuration des clés
  • Journalisation d'audit de base

Pratique :

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

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

Contenu :

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

Pratique :

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

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

Contenu :

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

Pratique :

  • Configuration d'un cluster shardé simple
  • Insertion de données à grande échelle et observation de la distribution
  • Introduction de modifications de la clé de shard 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épliques et les clusters shardés
  • Utilisation de base de Cloud Manager/Ops Manager pour les sauvegardes
  • Planification de la reprise après sinistre (DR) : RTO, RPO

Pratique :

  • Exécution d'une sauvegarde et d'une restauration sur une base de données de test
  • Simulation d'une défaillance et récupération à partir de la sauvegarde
  • Conception d'un plan DR 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/I, 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 des 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 à niveau et bonnes pratiques (4h)

Contenu :

  • Stratégies de mise à niveau pour les ensembles de répliques et les clusters shardés
  • Nettoyage des données, compactage, vérifications d'intégrité
  • Examen des journaux et audits réguliers
  • Automatisation des tâches routinières (scripts, cronjobs, Ansible, Terraform)
  • Politiques de rétention 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
  • Élaboration d'une liste de contrôle de maintenance périodique

Résumé et prochaines étapes

Pré requis

  • Compréhension des concepts généraux des bases de données et des structures de données
  • Maîtrise de l'utilisation de la ligne de commande Linux
  • Connaissances de base en réseau et administration système

Public cible

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

Nombre de participants


Prix par participant

Nos clients témoignent (2)

Cours à venir

Catégories Similaires