The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

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.

SEE ALSO

MongoHosting