Skip to content

Latest commit

 

History

History
73 lines (59 loc) · 2.08 KB

README.md

File metadata and controls

73 lines (59 loc) · 2.08 KB

puppet-rethinkdb

A Puppet module for RethinkDB.

Dependencies

Limitations

  • Only works under Ubuntu. Sorry.
  • Only supports a single instance per machine
  • You must specify a user/group for the service (leaving it blank is not an option)

Installation

Usage

With all the defaults:

include rethinkdb

With custom parameters:

# these are the default values for each parameter
class { 'rethinkdb':
	rethinkdb_user => 'rethinkdb'
	rethinkdb_group => 'rethinkdb',
	instance_name => 'default',
	driver_port => 28015,
	http_port => 8080,
	cluster_port => 29015,
	rethinkdb_bind => 'all', #slightly dangerous, see below
	rethinkdb_join => undef #e.g. "mymachine:29015"
}

The above will generate the following conf file (in /etc/rethinkdb/instances.d/default.conf):

# Automatically generated by puppet
runuser=rethinkdb
rungroup=rethinkdb
directory=/var/lib/rethinkdb/instances.d/default
pid-file=/var/run/rethinkdb/instances.d/default.pid
driver-port=28015
cluster-port=29015
http-port=8081

bind=all

The default for the bind parameter is probably not ideal, but it'll make everything work out of the box. You can probably change it to the machine's IP address on the LAN (e.g. 10.0.*.* or 192.168.*.*) for something less open. Your mileage may vary.

See the RethinkDB docs for more detail on configuration options.

What actually happens

  • Installs rethinkdb via its ppa
  • Creates a user/group for the rethinkdb service
  • Generates a conf file and puts it into /etc/rethinkdb/instances.d
  • Runs rethinkdb create -d /var/lib/rethinkdb/instances.d, which is the default directory
  • Ensures the init.d service will run on startup