Plan du cours
Module 1 : Introduction et architecture MongoDB (4 h)
Contenu :
- Historique et écosystème MongoDB
- Cas d’usage typiques, avantages et inconvénients
- Architecture générale : instances, processus et configuration
Mise en pratique :
- Exploration interactive : connexion via Mongo Shell/CLI
- Création d’une base de données et d’une collection d’exemple
Module 2 : Installation et configuration initiale (6 h)
Contenu :
- Exigences matérielles et de 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
Mise en pratique :
- Déploiement d’instances sur des VM locales ou des conteneurs Docker
- Ajustement des configurations pour le développement par rapport à la production
- Vérification de la connectivité à distance sécurisée
Module 3 : Modélisation des données et opérations de base (5 h)
Contenu :
- Documents BSON, collections, bases de données
- Modélisation : intégration par rapport à la référence ; modèles de conception des données
- Index de base (introduits précédemment)
- Opérations avec Mongo Shell et exemples de scriptage en utilisant des pilotes
Mise en pratique :
- Modélisation d’un cas d’usage : système d’inventaire ou de facturation
- Mise en œuvre des opérations CRUD
- Validation du schéma en utilisant JSON Schema dans MongoDB
Module 4 : Index et performance (4 h)
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 d’écriture et la mémoire
Mise en pratique :
- Création de collections avec des données de test
- Tests de requêtes avec et sans index ; interprétation de explain()
- Ajustement des index en fonction des schémas d’accès
Module 5 : Sécurité (5 h)
Contenu :
- Mécanismes d’authentification : SCRAM, LDAP/Kerberos (introduction)
- Définition d’utilisateurs et de rôles personnalisés
- TLS/SSL entre les clients et les serveurs
- Chiffrement au repos : configuration des clés
- Journalisation d’audit de base
Mise en pratique :
- Création d’utilisateurs avec des privilèges minimaux
- Configuration de TLS sur des instances locales
- Vérification de l’accès non autorisé et revue des journaux d’audit
Module 6 : Réplication et haute disponibilité (6 h)
Contenu :
- Concepts de réplication : primaire, secondaire, oplog
- Configuration de l’ensemble de réplication : initialisation, adhésion, arbitrage
- Surveillance de l’état et des élections
- Maintenance : ajout/suppression de membres, réaffectation des priorités
Mise en pratique :
- Déploiement d’un ensemble de réplication à trois nœuds (local ou VM)
- Simulation d’une panne du nœud primaire et observation de la bascule
- Reconstruction des nœuds secondaires et récupération des réplicas
Module 7 : Sharding et évolutivité horizontale (6 h)
Contenu :
- Concepts de sharding : clé de sharding, serveurs de configuration, routeur mongos
- Sélection de la clé de sharding et risques associés
- Déploiement des serveurs de configuration, des shards et de mongos
- Équilibrage et migration de chunks
Mise en pratique :
- Configuration d’un cluster sharded simple
- Insertion de données à grande échelle et observation de la distribution
- Introduction aux modifications de la clé de sharding et compréhension des limites
Module 8 : Sauvegarde, restauration et récupération après sinistre (4 h)
Contenu :
- Outils natifs : mongodump/mongorestore, instantanés du système de fichiers
- Sauvegardes dans les ensembles de réplication et les clusters sharded
- Utilisation de base de Cloud Manager/Ops Manager pour les sauvegardes
- Planification de la récupération après sinistre (RAS) : RTO, RPO
Mise en pratique :
- Réalisation de la sauvegarde et de la restauration sur une base de données de test
- Simulation d’une panne et récupération à partir de la sauvegarde
- Conception d’un plan RAS pour un cas hypothétique
Module 9 : Surveillance et alertes (4 h)
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
Mise en pratique :
- Déploiement d’un agent de surveillance local ou basé sur conteneur
- 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 meilleures pratiques (4 h)
Contenu :
- Stratégies de mise à niveau pour les ensembles de réplication et les clusters sharded
- Nettoyage des données, compaction, 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
Mise en 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’interface en ligne de commande Linux
- Connaissances de base en réseau et en administration système
Public cible
- Administrateurs de bases de données et ingénieurs systèmes travaillant avec MongoDB
- Équipes DevOps et d’infrastructure déploiement et maintenance des environnements MongoDB
- Développeurs intéressés par le fonctionnement interne de MongoDB et les meilleures pratiques de déploiement
Nos clients témoignent (2)
Le rythme de la parole et des explications.
Marko Skokovic - PWO by Lottomatica Serbia
Formation - MongoDB for Administrators
Traduction automatique
Sir Jose est cool et explique chaque détail des commandes. Nous apprécions le temps qu'il prend pour partager ses connaissances avec nous, et cela montre vraiment qu'il est un expert dans ce domaine.
Almer Laureta - Asialink Finance Corporation
Formation - MongoDB for Developers
Traduction automatique