Hi, I'm working on creating a new cartridge for mongodb with auto-scaling support. So far 3 use-cases have been identified so far.
1. mongodb scales horizontally (mongodb with sharding cluster) 2. mongodb scales vertically (mongodb with replica cluster) 3. mongodb replicated sharding cluster I have successfully deployed mongodb single node instance as a Stratos cartridge by using this Puppet script [1]. However, implementing auto-scaling for the mongodb cartridge requires some work. For a start, I'll be working on the first use-case scenario (mongodb with sharding cluster). Following is a brief work plan. 1. mongos (query routers) and config servers will be bundled in a single "mongolb" instance (mongo load balancer) which will be subscribed automatically by Stratos as the load balancer. 2. mongod servers (shard servers) will be bundled as "mongodb" instances which will get scaled up or down. 3. When an instance is spawned, it will get added to the mongos cluster by a Puppet script. Note - When implementing use-case scenario 2 and 3, Stratos Agent will have to check the member list and depending on the member count, initialize the replication set (master node) OR add the instance to the appropriate replication set. Pl let me know your thoughts regarding this. [1] - https://github.com/echocat/puppet-mongodb Thanks. -- Akila Ravihansa Perera Software Engineer WSO2 Inc. http://wso2.com Phone: +94 77 64 154 38 Blog: http://ravihansa3000.blogspot.com
