No description or website provided.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Puppet Redis Module

Module for configuring Redis.

Tested on Debian GNU/Linux 6.0 Squeeze and Ubuntu 10.4 LTS with Puppet 2.6. Patches for other operating systems welcome.


  • Ability to configure snapshotting intervals.
  • Ability to configure the slow log.


Clone this repo to a redis directory under your Puppet modules directory:

git clone git:// redis

If you don't have a Puppet Master you can create a manifest file based on the notes below and run Puppet in stand-alone mode providing the module directory you cloned this repo to:

puppet apply --modulepath=modules test_redis.pp


To install and configure Redis, include the module:

include redis::server

Note that you'll need to define a global search path for the exec resource to make the redis::server class function properly. This should ideally be placed in manifests/site.pp:

Exec {
  path => "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",

You'll also need to install some build dependencies:

include redis::dependencies
package { $redis::dependencies::packages:
  ensure => present,

You can override defaults in the Redis config by including the module with this special syntax:

class { "redis::server":
  version => "2.4.0",
  bind => "",
  port => 6379,
  requirepass => "MY_SUPER_SECRET_PASSWORD",

You can also configure a slave which connects to another Redis master instance:

class { "redis::server":
  bind => "",
  port => 6379,
  masterip => "",
  masterport => 6379,
  masterauth => "MY_SUPER_SECRET_PASSWORD",

By default Redis saves the database to disk through snapshotting. You can enable AOF in stead:

class { "redis::server":
  aof => true,