So, maybe you’ve been working with MySQL for a while and are now being asked to also properly maintain one or more MongoDB instances. It is not uncommon that MySQL DBAs, developers, network/system administrators or DevOps folks with general backgrounds, find themselves in this situation at some point in time. In fact, with more organisations operating polyglot environments, it’s starting to become commonplace.
With that said, we’d like to introduce a new webinar series: ‘How to Become a MongoDB DBA’ to answer the question: ‘what does a MongoDB DBA do’?
In the space of three webinars, we will walk you through the most important tasks a MongoDB DBA routinely goes through and provide you with options on how to best complete these tasks.
In this initial webinar of the series, we will go beyond the deployment phase and show you how you can automate tasks, how to monitor a cluster and how to manage MongoDB; whilst also automating and managing your MySQL and/or PostgreSQL installations.
Agenda
Introduction to becoming a MongoDB DBA
Installing & configuring MongoDB
What to monitor and how
How to perform backups
Live Demo
Speaker
Art van Scheppingen is a Senior Support Engineer at Severalnines. He’s a pragmatic MySQL and Database expert with over 15 years experience in web development. He previously worked at Spil Games as Head of Database Engineering, where he kept a broad vision upon the whole database environment: from MySQL to Couchbase, Vertica to Hadoop and from Sphinx Search to SOLR. He regularly presents his work and projects at various conferences (Percona Live, FOSDEM) and related meetups.
2. Confidential
Logistics
☐ Webinar is recorded
☐ Replay available soon
☐ Feel free to ask questions at any time
☐ Use your control panel to contact us
☐ Or email us as well: info@severalnines.com
3. Confidential
Agenda
☐ Introduction to becoming a MongoDB DBA
☐ Installing & configuring MongoDB
☐ What to monitor and how
☐ How to perform backups
☐ Live Demo
5. Confidential
MongoDB: why should I install it?
☐ Not everyone is happy with (My)SQL
☐ Some storage needs differ from what (My)SQL can offer
☐ Complex problems require different storage systems
☐ Alternative data storage
☐ Polyglot persistence
10. Confidential
How different is MongoDB from MySQL?
☐ Document store (JSON)
☐ Flexible schemas
☐ Out of the box scaling
☐ Out of the box sharding
☐ Enthusiastic development community
12. Confidential
How similar (ops) is MongoDB to MySQL?
☐ You still need to do the database basics
☐ Deployment
☐ Management
☐ Monitoring
☐ Backups
☐ Scaling/Sharding
☐ It is less different than you think!
21. Confidential
Chef
☐ Use mongodb3 cookbook
☐ https://supermarket.chef.io/cookbooks/mongodb3
☐ Others are not well maintained
☐ Handles configuration
☐ Supports AWS
☐ Supports replication and sharding
☐ Supports mms_automation_agent
22. Confidential
Puppet
☐ Puppetlabs MongoDB module
☐ https://github.com/puppetlabs/puppetlabs-mongodb
☐ Still in beta: may change in the future
☐ Well documented
☐ Handles
☐ Installation
☐ Configuration
☐ Replication & sharding
☐ Crude user management (admin user)
23. Confidential
Ansible
☐ Ansible MongoDB example
☐ https://github.com/ansible/ansible-examples/tree/master/mongodb
☐ Installs a sharded MongoDB cluster
☐ Expects RHEL/Centos 6 hosts
☐ Covers only one use case
☐ You can alter a playbook, right?
28. Confidential
Monitoring vs Trending
☐ Monitoring
☐ Keeps an eye on your systems
☐ Will alert if a threshold is met
☐ Trending
☐ Insight into the system internals
☐ Trends can warn you before anything has happened yet
☐ Keep historical state/data
29. Confidential
Monitoring: Availability
☐ Do more than just opening a connection
☐ Measure true status of nodes and cluster
☐ Test read/write
☐ Open essential databases and collections
☐ Check the full topology
☐ Keep an eye on the replication lag
☐ Increase oplog size?
33. Confidential
Zabbix
☐ MongoDB Zabbix monitoring plugin
☐ https://github.com/nightw/mikoomi-zabbix-mongodb-monitoring
☐ All the necessary metrics and more
☐ Entries in oplog
☐ Pre-canned triggers
34. Confidential
Trending: Why do we need trends?
☐ Trending
☐ Plot trends of key (performance) metrics
☐ Find problems before they arise
☐ Pre-emptive problem management
☐ Trending tools
☐ Granularity of sampling
☐ More datapoints = better
35. Confidential
Trending: What metrics to store?
☐ Resource monitoring
☐ CPU
☐ Memory
☐ IO capacity
☐ Diskspace
☐ Replication monitoring
☐ Replication status
☐ Replication lag
☐ Oplog size and usage