Get in Touch

Course Outline

Module 1: Introduction and MongoDB Architecture (4h)

Key Topics:

  • Evolution of MongoDB and its ecosystem
  • Common use cases, along with advantages and limitations
  • Core architecture: understanding instances, processes, and configuration

Practical Exercises:

  • Interactive exploration: Connecting via Mongo Shell/CLI
  • Creating a sample database and collection

Module 2: Installation and Initial Configuration (6h)

Key Topics:

  • Hardware and resource prerequisites
  • Installation procedures for Linux (deb/rpm), Windows, and macOS
  • Configuring YAML files (mongod.conf): dataDir, logDir, bindIp, port
  • Managing startup options and services via systemd/service management

Practical Exercises:

  • Deploying instances on local VMs or Docker containers
  • Tuning configurations for development versus production environments
  • Verifying secure remote connectivity

Module 3: Data Modeling and Basic Operations (5h)

Key Topics:

  • Understanding BSON documents, collections, and databases
  • Data modelling strategies: embedding vs referencing; design patterns
  • Overview of basic indexes (introduced in prior contexts)
  • Performing operations using Mongo Shell and scripting with drivers

Practical Exercises:

  • Modelling a practical use case, such as an inventory or billing system
  • Implementing CRUD operations
  • Applying schema validation using JSON Schema in MongoDB

Module 4: Indexes and Performance (4h)

Key Topics:

  • Types of indexes: simple, compound, multikey, text, and geospatial
  • Leveraging explain() for query analysis and metric interpretation
  • Impact of indexes on write performance and memory usage

Practical Exercises:

  • Creating collections populated with test data
  • Testing queries with and without indexes; analysing explain() output
  • Optimising indexes based on observed access patterns

Module 5: Security (5h)

Key Topics:

  • Authentication mechanisms: SCRAM, and an introduction to LDAP/Kerberos
  • Defining users and custom roles
  • Securing communication between clients and servers using TLS/SSL
  • Implementing at-rest encryption: key configuration
  • Setting up basic audit logging

Practical Exercises:

  • Creating users with the principle of least privilege
  • Configuring TLS on local instances
  • Testing unauthorized access attempts and reviewing audit logs

Module 6: Replication and High Availability (6h)

Key Topics:

  • Replication fundamentals: Primary, Secondary, and oplog concepts
  • Configuring replica sets: initiation, membership management, and arbitration
  • Monitoring replication status and election processes
  • Maintenance tasks: adding/removing members and reassigning priorities

Practical Exercises:

  • Deploying a three-node replica set (locally or on VMs)
  • Simulating primary failure and observing automatic failover
  • Rebuilding secondary nodes and recovering replicas

Module 7: Sharding and Horizontal Scalability (6h)

Key Topics:

  • Sharding fundamentals: shard keys, config servers, and the mongos router
  • Selecting optimal shard keys and understanding associated risks
  • Deploying config servers, shards, and mongos instances
  • Managing rebalancing and chunk migration

Practical Exercises:

  • Configuring a simple sharded cluster
  • Inserting large-scale data to observe distribution patterns
  • Exploring the implications of shard key changes and understanding their limitations

Module 8: Backup, Restore, and Disaster Recovery (4h)

Key Topics:

  • Utilising native tools: mongodump/mongorestore and filesystem snapshots
  • Backup strategies for replica sets and sharded clusters
  • Using Cloud Manager/Ops Manager for automated backups
  • Disaster Recovery (DR) planning: defining RTO and RPO

Practical Exercises:

  • Executing backup and restore procedures on a test database
  • Simulating data loss and performing recovery from backup
  • Designing a comprehensive DR plan for a hypothetical scenario

Module 9: Monitoring and Alerts (4h)

Key Topics:

  • Essential tools: mongostat, mongotop, and Cloud Manager/Atlas Monitoring
  • Integrating with Prometheus + Grafana (concepts and practical examples)
  • Tracking key metrics: CPU, memory, I/O, oplog size, and latencies
  • Setting up alerts: defining thresholds and notification workflows

Practical Exercises:

  • Deploying a local or container-based monitoring agent
  • Creating basic dashboards with representative metrics
  • Simulating load to trigger and observe alerts

Module 10: Maintenance, Upgrades, and Best Practices (4h)

Key Topics:

  • Upgrade strategies for replica sets and sharded clusters
  • Data management: cleanup, compaction, and integrity checks
  • Regular log reviews and audit practices
  • Automating routine tasks using scripts, cronjobs, Ansible, and Terraform
  • Establishing data retention and archiving policies

Practical Exercises:

  • Simulating minor and major upgrades in a controlled environment
  • Developing automation scripts for backups and monitoring
  • Creating a recurring maintenance checklist

Summary and Next Steps

Requirements

  • A solid grasp of general database concepts and data structures
  • Proficiency with Linux command-line interfaces
  • Foundational knowledge of networking and system administration

Target Audience

  • Database administrators and system engineers managing MongoDB environments
  • DevOps and infrastructure teams responsible for deploying and maintaining MongoDB stacks
  • Developers seeking to understand MongoDB internals and deployment best practices
 48 Hours

Number of participants


Price per participant

Testimonials (2)

Upcoming Courses

Related Categories