NAME
MongoHosting deploy MongoDB shared cluster in the cloud at linode or digitalocean
SYNOPSIS
# INSTALL
$ git clone git@github.com:ovntatar/MongoHosting.git
$ cd MongoHosting
$sudo apt-get install make gcc carton dialog libio-socket-ssl-perl libxml-parser-lite-perl libxml-dom-perl libxml-parser-perl libxml-xslt-perl libnet-ssleay-perl libcrypt-ssleay-perl libnet-https-any-perl libpoe-filter-ssl-perl
$ carton install # install deps
# ENV VARS - In order for the script to work you'll need to set 3 environment variables:
## API Key for provider (eg. DigitalOcean, Linode, etc)
$ export PROVIDER_API_KEY=121234123123213123123123123213123123123
## Path to the private key you want to use to login into the machines
$ export PRIVATE_KEY=/path/to/private/key/id_rsa
## Config file (defaults to config.yml)
$ export DEPLOY_CONFIG=linode-config.yml
# SETUP CLUSTER
## edit config.yml, then:
$ carton exec rex deploy
#REMOVE HOST - To remove a host from the cluster you need to run the following command
$ carton exec rex remove
# You'll be presented with a list of hosts to be removed. Pick as many as you want and hit OK and then confirm.
#TESTING - After deploy is done you can connect to any Mongo router from the host defined at app_host at the config file and test it with something like this:
mongo router-ip:port/admin
use exampleDB
sh.enableSharding("exampleDB")
for (var i = 1; i <= 500; i++) db.exampleCollection.insert( { x : i } )
db.exampleCollection.findOne()
DESCRIPTION
MongoHosting is a command line tool to set up a shared cluster at linode or digital ocean
PERL VERSIONS
You can also specify the minimum perl required in cpanfile
:
requires 'perl', '5.16.3';
AUTHOR
Ovidiu Tatar, Gabriel Andrade
COPYRIGHT
3Ziele.de - ovntatar
LICENSE
This software is licensed under the same terms as Perl itself.