art van scheppingen, senior support engineer become a ... · art van scheppingen, senior support...
TRANSCRIPT
![Page 1: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/1.jpg)
Confidential
Become a MongoDB DBA
How to Automate, Monitor and Manage your MongoDB Servers
Art van Scheppingen, Senior Support Engineer
![Page 2: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/2.jpg)
Confidential
Agenda
☐ MongoDB for DBAs☐ Deploying MongoDB☐ Automation☐ Monitoring☐ Managing☐ Orchestration systems
![Page 3: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/3.jpg)
Confidential
MongoDB for DBAs
![Page 4: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/4.jpg)
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
![Page 5: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/5.jpg)
Confidential
Polyglot Persistence?
Does a carpenter only use one tool?
![Page 6: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/6.jpg)
Confidential
Polyglot Persistence?
Carpenters use many tools
![Page 7: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/7.jpg)
Confidential
Monoglot Persistence
![Page 8: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/8.jpg)
Confidential
Polyglot Persistence
![Page 9: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/9.jpg)
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
![Page 10: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/10.jpg)
Confidential
Eventual consistency
![Page 11: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/11.jpg)
Confidential
How similar 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!
![Page 12: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/12.jpg)
Confidential
Deploying MongoDB
![Page 13: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/13.jpg)
Confidential
Install MongoDB
☐ Install MongoDB ☐ Download packages☐ Set up repositories
☐ Watch log file☐ /var/log/mongodb/mongod.log
[initandlisten] options: { config: "/etc/mongod.conf", net: { bindIp: "127.0.0.1", port: 27017 },
![Page 14: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/14.jpg)
Confidential
Configure MongoDB
☐ MongoDB Configuration file is in YAML# network interfacesnet: port: 27017# bindIp: 127.0.0.1 # Listen to local interface only, comment to listen on all interfaces.
☐ Restart mongod
![Page 15: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/15.jpg)
Confidential
Install a second node
☐ Install packages☐ Change configuration
![Page 16: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/16.jpg)
Confidential
Install a third node
☐ Install packages☐ Change configuration☐ This is getting boring...
![Page 17: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/17.jpg)
Confidential
Automation
![Page 18: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/18.jpg)
Confidential
Deployment Automation
☐ Deployment automation tools☐ Chef☐ Puppet☐ Ansible☐ Saltstack
![Page 19: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/19.jpg)
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
![Page 20: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/20.jpg)
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)
![Page 21: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/21.jpg)
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?
![Page 22: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/22.jpg)
Confidential
Ansible (cont.)
☐ Stouts.mongo Ansible role☐ https://github.com/Stouts/Stouts.mongodb
☐ Handles☐ Installation☐ Configuration☐ Replication
☐ Supports mms_automation_agent
![Page 23: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/23.jpg)
Confidential
Saltstack
☐ MongoDB Formula☐ https://github.com/saltstack-formulas/mongodb-formula
☐ Handles☐ Installation☐ Configuration☐ Replication & Sharding
![Page 24: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/24.jpg)
Confidential
Monitoring & Trending
![Page 25: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/25.jpg)
Confidential
![Page 26: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/26.jpg)
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
![Page 27: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/27.jpg)
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☐ Keep an eye on the replication lag☐ Increase oplog size?
☐ Check the full topology
![Page 28: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/28.jpg)
Confidential
Monitoring Tools
☐ Open Source☐ Nagios☐ Zabbix
☐ Subscription based☐ MongoDB Cloud Manager☐ VividCortex☐ ClusterControl
![Page 29: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/29.jpg)
Confidential
Nagios
☐ Nagios-MongoDB☐ https://github.com/mzupan/nagios-plugin-mongodb/☐ Performs some very important checks☐ Replication lag☐ Lock time percentage☐ Index miss ratio
![Page 30: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/30.jpg)
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
![Page 31: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/31.jpg)
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
![Page 32: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/32.jpg)
Confidential
Trending: What metrics to store?
☐ Resource monitoring☐ CPU☐ Memory☐ IO capacity☐ Diskspace
☐ Replication monitoring☐ Replication status☐ Replication lag☐ Oplog size and usage
![Page 33: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/33.jpg)
Confidential
Trending: Solutions
☐ Trending tools☐ Statsd/Grafana☐ Cacti☐ Zabbix
☐ Subscription based☐ MongoDB Cloud Manager☐ VividCortex☐ ClusterControl
![Page 34: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/34.jpg)
Confidential
Cacti
☐ Percona MongoDB Monitoring Templates☐ https://www.percona.com/doc/percona-monitoring-plugins/1.
1/cacti/mongodb-templates.html
![Page 35: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/35.jpg)
Confidential
Cacti
![Page 36: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/36.jpg)
Confidential
Managing
![Page 37: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/37.jpg)
Confidential
Types of backups
☐ Logical backups☐ Dump of your data
☐ Physical backups☐ File(system) copy of your data
![Page 38: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/38.jpg)
Confidential
Logical backups
☐ Mongodump☐ MongoDB Backup☐ Mongob
![Page 39: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/39.jpg)
Confidential
Logical backups: mongodump
☐ Mongodump☐ BSON dump of the data☐ OEM tool☐ Works great but needs some wrapping
![Page 40: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/40.jpg)
Confidential
Logical backups: MongoDB Backup
☐ MongoDB Backup☐ https://www.npmjs.com/package/mongodb-backup☐ Nodejs backup solution☐ CLI and API☐ Can stream backups
![Page 41: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/41.jpg)
Confidential
Logical backups: Mongob
☐ Mongob☐ https://github.com/cmpitg/mongob☐ Python based CLI tool☐ MongoDB instance or bz2 target☐ Can copy data between collections☐ Incremental backups☐ Rate limiting
![Page 42: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/42.jpg)
Confidential
Physical backups: Filesystem snapshots
☐ Filesystem snapshots☐ LVM☐ ZFS☐ XFS (xfs_freeze)☐ EBS
![Page 43: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/43.jpg)
Confidential
Physical backups: Strata
☐ MongoRocks Strata☐ https://github.com/facebookgo/rocks-strata☐ Backs up on file level☐ Supports incremental backups☐ Queryable backups
![Page 44: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/44.jpg)
Confidential
Why do schemas need changes?
☐ Application development☐ New features to existing modules☐ New modules☐ Data management and archiving
(partitions)☐ Schema optimization☐ Performance optimization
![Page 45: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/45.jpg)
Confidential
Schema changes for MySQL
![Page 46: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/46.jpg)
Confidential
Schema changes for MongoDB
![Page 47: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/47.jpg)
Confidential
Schema Validation
☐ Meteor2 collection☐ https://github.com/aldeed/meteor-collection2☐ Ensures data gets written according to schema☐ Automatic: both client and server validate schema☐ Reactive: returns useful error messages
![Page 48: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/48.jpg)
Confidential
Schema Validation
☐ Mongoose☐ http://mongoosejs.com/index.html☐ Node.js middleware for schema modelling and validation
![Page 49: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/49.jpg)
Confidential
Schema Analyzer
☐ MongoDB Schema☐ https://github.com/mongodb-js/mongodb-schema☐ Schema analyzer
![Page 50: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/50.jpg)
Confidential
Admin UIs
☐ Mongoclient☐ http://www.mongoclient.com/☐ Management / Backups
☐ PHPMoAdmin☐ http://www.phpmoadmin.com/
☐ Mongo Express☐ https://www.npmjs.com/package/mongo-express☐ Overview and data browser
![Page 51: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/51.jpg)
Confidential
Orchestration Systems
![Page 52: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/52.jpg)
Confidential
Orchestration systems: Mongoctl
☐ Mongoctl☐ https://github.com/mongolab/mongoctl☐ Python based CLI tool☐ Manages nodes, clusters and shards☐ Deployment☐ Configuration management☐ Scaling
![Page 53: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/53.jpg)
Confidential
Orchestration systems: Percona Monitoring & Management
☐ PMM☐ https://www.percona.com/doc/percona-monitoring-and-management/
☐ Open Source Monitoring & Management framework☐ Can deploy, manage and monitor MySQL & MongoDB☐ Uses Prometheus and Grafana☐ Still in Beta
![Page 54: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/54.jpg)
Confidential
Orchestration Systems: ClusterControl
☐ ClusterControl☐ http://www.severalnines.com☐ Deploy Mongo shards & replicasets☐ Monitor and trend☐ Manage configuration and backups☐ Scale
☐ Community edition
![Page 55: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/55.jpg)
Confidential
Q & A
![Page 56: Art van Scheppingen, Senior Support Engineer Become a ... · Art van Scheppingen, Senior Support Engineer. Confidential Agenda ☐ MongoDB for DBAs ☐ Deploying MongoDB ☐ Automation](https://reader030.vdocuments.site/reader030/viewer/2022040615/5f0dbcc27e708231d43bd5fb/html5/thumbnails/56.jpg)
Confidential
Additional Resources
☐ Blog series: Become a MongoDB DBA☐ http://severalnines.com/blog-categories/mongodb
☐ Webinar series: Become a MongoDB DBA☐ http://severalnines.com/upcoming-webinars
☐ Visit our website for more resources!☐ http://www.severalnines.com