A few months ago, I had spare time and I wanted to combine my experience in the last year with MongoDB and SaltStack. The result is Elastic MongoDB, an example of orchestration/automation to setup a MongoDB cluster with replication and sharding using Salt. The instructions to launch are in the README, it should be running in a few steps. There is only an issue, you have to run the salt \* state.highstate command three of four times to get everything working. That’s because there are some dependency between the boxes, so the setup should be in some order. By default, Salt applies all recipes at the same time, generating failures. To fix this I have to use a feature of Salt called overstate, but I haven’t had time to implement it.
I’ll fix when I have some time, but anyway you can try it. Have look here.
Fell free to ask any question!