MMS Automation : What Does It Do?
● Create MongoDB systems of any size, and any configuration
● Manage MongoDB systems, such as adding capacity or resizing the oplog, with no application downtime
● Upgrade a deployment, with no application downtime
… all from the comfort of your web browser.
MMS ProvisioningIntegration with Amazon AWS that allows you to provision the servers on which your MongoDB processes will run, directly from MMS.
● Optional component - you can provision your base servers any way you like, doing it via MMS Provisioning is just one way
● Future plans to integrate OpenStack, Azure, Digital Ocean, etc.
Authentication and Authorization● Automation supports adding, editing, and removing
users and custom roles.● Works with standalone instances, replica sets, and
sharded clusters.● Works with all versions of MongoDB that Automation
supports: 2.4, 2.6 and 3.0● Delayed auth schema upgrades are supported
Storage Engine Conversion
● Pluggable storage engines are a new feature in MongoDB 3.0
● Automation supports converting between MMAPv1 and WiredTiger storage engines.
Storage Engine Conversion(Replica Sets)
For each member of the replica set (secondaries first, primary last):1. Stop mongod2. Remove files under the dbpath3. Start mongod with new storage engine setting4. Wait for initial sync to finish before proceeding to next
member
Storage Engine Conversion(standalone instances)
1. Stop mongod2. Start mongod on a different port3. Run mongodump4. Stop mongod5. Remove files under the dbpath6. Start mongod with new storage engine setting (still on
the different port)7. Run mongorestore8. Restart mongod on its original port
Repair Config Server
● Automation will automatically detect if a config server gets out of sync, and repair it
Repair Config Server
1. Detect that config server is out of sync by comparing dbhash against other dbhashes
Repair Config Server
2. Figure out which dbhash is correct
● Ignore if data size < 90% max data size
● If two agree, assume they are correct
● If none agree, choose “the first”
Repair Config Server
3. Repair config server : ● shut down● mongodump from a good server● start up on ephemeral port ● mongorestore● verify dbhash correct● restart on normal port
Automation API
● Can GET/PUT a Group’s AutomationConfig● Can GET the AutomationStatus of a Group
Automation API
● Can GET/PUT a Group’s AutomationConfig● Can GET the AutomationStatus of a Group
○ Bypass the UI, automate automation
Automation API - Demo
● Follow along○ https://bit.ly/mmsautoapi
Automation API - Demo
● Follow along○ https://bit.ly/mmsautoapi
● Read more○ https://docs.mms.mongodb.com/reference/api/
Advanced Enterprise Features
● SSL● LDAP Authentication● X.509 Authentication● Kerberos Authentication