Course Outline
Module 1: Introduction and MongoDB Architecture (4h)
Content:
- History and MongoDB ecosystem
- Typical use cases, pros and cons
- General architecture: instances, processes, and configuration
Practice:
- Interactive exploration: connecting with Mongo Shell/CLI
- Creating a sample database and collection
Module 2: Installation and Initial Configuration (6h)
Content:
- Hardware and resource requirements
- Installation on Linux (deb/rpm), Windows, and macOS
- YAML configuration files (mongod.conf): dataDir, logDir, bindIp, port
- Startup options and systemd/service management
Practice:
- Deploying instances on local VMs or Docker containers
- Adjusting configurations for development vs. production
- Verifying secure remote connectivity
Module 3: Data Modeling and Basic Operations (5h)
Content:
- BSON documents, collections, databases
- Modeling: embedding vs referencing; data design patterns
- Basic indexes (introduced earlier)
- Operations with Mongo Shell and scripting examples using drivers
Practice:
- Modeling a use case: inventory or billing system
- Implementing CRUD operations
- Schema validation using JSON Schema in MongoDB
Module 4: Indexes and Performance (4h)
Content:
- Simple, compound, multikey, text, and geospatial indexes
- Using explain() and analyzing metrics
- Index impact on write performance and memory
Practice:
- Creating collections with test data
- Testing queries with and without indexes; interpreting explain()
- Adjusting indexes based on access patterns
Module 5: Security (5h)
Content:
- Authentication mechanisms: SCRAM, LDAP/Kerberos (intro)
- Defining users and custom roles
- TLS/SSL between clients and servers
- At-rest encryption: key configuration
- Basic audit logging
Practice:
- Creating users with minimal privileges
- Configuring TLS in local instances
- Verifying unauthorized access and reviewing audit logs
Module 6: Replication and High Availability (6h)
Content:
- Replication concepts: Primary, Secondary, oplog
- Replica set configuration: initiation, membership, arbitration
- Monitoring status and elections
- Maintenance: adding/removing members, reassigning priorities
Practice:
- Deploying a three-node replica set (local or VMs)
- Simulating primary failure and observing failover
- Rebuilding secondary nodes and recovering replicas
Module 7: Sharding and Horizontal Scalability (6h)
Content:
- Sharding concepts: shard key, config servers, mongos router
- Shard key selection and associated risks
- Deploying config servers, shards, and mongos
- Rebalancing and chunk migration
Practice:
- Configuring a simple sharded cluster
- Inserting large-scale data and observing distribution
- Introducing shard key changes and understanding limitations
Module 8: Backup, Restore, and Disaster Recovery (4h)
Content:
- Native tools: mongodump/mongorestore, filesystem snapshots
- Backups in replica sets and sharded clusters
- Basic use of Cloud Manager/Ops Manager for backup
- Disaster Recovery (DR) planning: RTO, RPO
Practice:
- Performing backup and restore on a test database
- Simulating failure and recovery from backup
- Designing a DR plan for a hypothetical case
Module 9: Monitoring and Alerts (4h)
Content:
- Tools: mongostat, mongotop, Cloud Manager/Atlas Monitoring
- Integration with Prometheus + Grafana (concepts and examples)
- Key metrics: CPU, memory, I/O, oplog size, latencies
- Alerts: defining thresholds and notifications
Practice:
- Deploying a local or container-based monitoring agent
- Setting up basic dashboards with sample metrics
- Simulating load and observing alerts
Module 10: Maintenance, Upgrades, and Best Practices (4h)
Content:
- Upgrade strategies for replica sets and sharded clusters
- Data cleanup, compaction, integrity checks
- Reviewing logs and regular audits
- Automating routine tasks (scripts, cronjobs, Ansible, Terraform)
- Data retention and archiving policies
Practice:
- Simulating minor and major upgrades in a controlled environment
- Creating automation scripts for backup and monitoring
- Developing a periodic maintenance checklist
Summary and Next Steps
Requirements
- An understanding of general database concepts and data structures
- Familiarity with Linux command-line usage
- Basic knowledge of networking and system administration
Audience
- Database administrators and system engineers working with MongoDB
- DevOps and infrastructure teams deploying and maintaining MongoDB environments
- Developers interested in MongoDB internals and deployment best practices
Testimonials (5)
Kamil melakukan pekerjaan yang hebat. Ia mengajukan pertanyaan untuk mencari tahu apa yang sudah kami ketahui dan apa yang perlu kami fokuskan, dan dengan mudah menyesuaikan pelatihan dengan kebutuhan kami.
Susanna - USAF
Course - MongoDB Advanced Administrator
Machine Translated
The situation was atypical because an intensive training for developers was to be conducted with non-developers. Lukasz took up this challenge with empathy and a lot of humour. Through his intelligent and flexible manner, he was able to ensure that a concrete learning gain was achieved for everyone. I enjoyed this very much and would gladly take a seminar with Lukasz again.
Christoph - Honda Bank GmbH
Course - MERN Fullstack Development
The lab environment
Samer Roshdi - epic ltd
Course - MongoDB for Analysts
It was very flexible and adapted to our expectations and skill level.
Raul Alberto Canales Requena - Kiloo
Course - MongoDB for Advanced Users
I generally was benefit from the open mind and communication.