include ::redis
class { '::redis':
bind => '10.0.1.1',
}
With authentication
class { '::redis':
bind => '10.0.1.1',
masterauth => 'secret',
}
class { '::redis':
bind => '10.0.1.2',
slaveof => '10.0.1.1 6379',
}
With authentication
class { '::redis':
bind => '10.0.1.2',
slaveof => '10.0.1.1 6379',
masterauth => 'secret',
}
class { '::redis':
bind => '10.0.1.2',
appendonly => true,
cluster_enabled => true,
cluster_config_file => 'nodes.conf',
cluster_node_timeout => 5000,
}
$listening_ports = [6379,6380,6381,6382]
class { '::redis':
default_install => false,
service_enable => false,
service_ensure => 'stopped',
}
$listening_ports.each |$port| {
$port_string = sprintf('%d',$port)
redis::instance { $port_string:
service_enable => true,
service_ensure => 'running',
port => $port,
bind => $facts['networking']['ip'],
dbfilename => "${port}-dump.rdb",
appendfilename => "${port}-appendonly.aof",
appendfsync => 'always',
require => Class['Redis'],
}
}
Disabled by default but if you really want the module to manage the required repositories you can use this snippet:
class { '::redis':
manage_repo => true,
}
On Ubuntu, "chris-lea/redis-server" ppa repo will be added. You can change it by using ppa_repo parameter:
class { '::redis':
manage_repo => true,
ppa_repo => 'ppa:rwky/redis',
}
Optionally install and configuration a redis-sentinel server.
With default settings:
include ::redis::sentinel
With adjustments:
class { '::redis::sentinel':
master_name => 'cow',
redis_host => '192.168.1.5',
failover_timeout => 30000,
}
This module requires camptocamp/systemd
on Puppet versions older than 6.1.0.
This function is used to get data from redis. You must have the 'redis' gem installed on your puppet master.
Functions are documented in REFERENCE.md