I have been working on a sharding GUI for the past few months (on and off). It’s starting to look pretty cool, so I figured I’d give people a sneak peak. No, it’s not available yet, sorry.
Basically, genghis-khan is a simple web server that connects to your cluster and gives you tons of information about it. You just open up a page in your browser.
The main view just shows you the current operations on your mongos processes, config servers, and shards. This, for example, is a test cluster on my machine with nothing much happening:

This is basically the output of mongostat. There isn’t much to do on this screen, so let’s move on to the “databases” tab.
This lists all of the databases you have. If a database has sharding enabled, you can shard its collections with the “add a sharded collection” form. You can also see what all of the sharded collections in this database are sharded by. (For instance, you can see that the foo.blog.authors collection is sharded by the name field.)
If a database doesn’t have sharding enabled yet, a big “shard the X database” button appears:
You can probably guess what that does.
The final tab is the “shards” tab, which shows what data is on what shard.
You can see that there are 4 chunks in the foo.blog.authors collection, all on one shard. MongoDB will balance the chunks if we give it a few minutes, but we can move them around ourselves by dragging a chunk to a different shard:

If we wait around a bit, MongoDB will finish balancing for us and we end up with an even number of chunks on each shard.
We can use the form at the top of the page to add a new shard to the cluster, and optionally name it (by default it’ll be called “shardN“) and set a max size:
A second later, our new shard pops up.
Again, if we wait around a bit, our data will balance itself.
Request for Comments/Feature Requests
So, right now you can use genghis-khan to:
- View stats
- View shards
- View chunks
- Add shards
- View databases
- Shard databases
- View sharded collections
- Shard collections
Anyone have any features they’d like to see? I can’t promise anything, but I’d love to hear people’s suggestions.
Hi, Kristina. I started a similar project built on Java and Swing, but my time is very poor and you only can query simple internal database properties. I left this project a month ago :(I like your project very much. It seems very complete, easy, functional and helpful. Please, when you release it, warn us. I think it's very interesting and useful.
LikeLike
Thanks! If anyone wants a more general admin GUI, there are a bunch of community-developed options (http://www.mongodb.org/display/DOCS/Admin+UIs).
LikeLike
I would die for a tool like that to compliment ganglia. Any ETA on when you can release it? (or at least how you’re making the connection and gathering the data? 🙂 )
LikeLike
Sorry, this blog post is a bit out-of-date, but we’re about to release something similar: the Mongo Monitoring Service. There’s going to be a webinar about it on Thursday (https://10genevents.webex.com/mw0306lc/mywebex/default.do?nomenu=true&siteurl=10genevents&service=6&main_url=https%3A%2F%2F10genevents.webex.com%2Fec0605lc%2Feventcenter%2Fevent%2FeventAction.do%3FtheAction%3Ddetail%26confViewID%3D279617461%26siteurl%3D10genevents%26%26%26).
LikeLike
Very Nice! Any update on this?
LikeLike
Well, don’t spread it around too munch, but https://mms.10gen.com/user/register is in quiet beta.
LikeLike