Author: | Xabier Larrakoetxea |
---|
New in version 1.3.
Unified utility to interact with redis instances. ‘slave’ sets a redis instance in slave or master mode. ‘flush’ flushes all the instance or a specified db. ‘config’ (new in 1.6), ensures a configuration setting on an instance.
parameter | required | default | choices | comments |
---|---|---|---|---|
command | yes |
|
The selected redis command | |
db | no | The database to flush (used in db mode) [flush command] | ||
flush_mode | no | all |
|
Type of flush (all the dbs in a redis instance or a specific one) [flush command] |
login_host | no | localhost | The host running the database | |
login_password | no | The password used to authenticate with (usually not used) | ||
login_port | no | 6379 | The port to connect to | |
master_host | no | The host of the master instance [slave command] | ||
master_port | no | The port of the master instance [slave command] | ||
name | no | A redis config key. (added in Ansible 1.6) | ||
slave_mode | no | slave |
|
the mode of the redis instance [slave command] |
value | no | A redis config value. (added in Ansible 1.6) |
Note
Requires redis
# Set local redis instance to be slave of melee.island on port 6377
- redis: command=slave master_host=melee.island master_port=6377
# Deactivate slave mode
- redis: command=slave slave_mode=master
# Flush all the redis db
- redis: command=flush flush_mode=all
# Flush only one db in a redis instance
- redis: command=flush db=1 flush_mode=db
# Configure local redis to have 10000 max clients
- redis: command=config name=maxclients value=10000
# Configure local redis to have lua time limit of 100 ms
- redis: command=config name=lua-time-limit value=100
Note
Requires the redis-py Python package on the remote host. You can install it with pip (pip install redis) or with a package manager. https://github.com/andymccurdy/redis-py
Note
If the redis master instance we are making slave of is password protected this needs to be in the redis.conf in the masterauth variable