geerlingguy.redis
Rol de Ansible: Redis
Instala Redis en Linux.
Requisitos
En distribuciones basadas en RedHat, se requiere el repositorio EPEL (puedes agregar facilmente la rol geerlingguy.repo-epel
para asegurarte de que EPEL esté disponible).
Variables del Rol
redis_enablerepo: epel
(Solo se usa en RHEL/CentOS) El repositorio que se utilizará para instalar Redis.
Las variables disponibles se enumeran a continuación, junto con los valores predeterminados (ver defaults/main.yml
):
redis_port: 6379
redis_bind_interface: 127.0.0.1
Puerto e interfaz en la que Redis escuchará. Establece la interfaz en 0.0.0.0
para escuchar en todas las interfaces.
redis_unixsocket: ''
Si se establece, Redis también escuchará en un socket Unix local.
redis_timeout: 300
Cierra una conexión después de que un cliente esté inactivo durante N
segundos. Establecer en 0
para deshabilitar el tiempo de espera.
redis_loglevel: "notice"
redis_logfile: /var/log/redis/redis-server.log
Nivel de registro y ubicación del registro (los niveles válidos son debug
, verbose
, notice
y warning
).
redis_databases: 16
El número de bases de datos de Redis.
# Establecer a un conjunto vacío para deshabilitar la persistencia (guardar la base de datos en el disco).
redis_save:
- 900 1
- 300 10
- 60 10000
Configuración de instantáneas; establecer valores en esta lista guardará la base de datos en el disco si se han producido el número dado de segundos (por ejemplo, 900
) y el número dado de operaciones de escritura (por ejemplo, 1
).
redis_rdbcompression: "yes"
redis_dbfilename: dump.rdb
redis_dbdir: /var/lib/redis
Compresión y ubicación de la base de datos.
redis_maxmemory: 0
Limitar el uso de memoria a la cantidad especificada de bytes. Dejar en 0 para ilimitado.
redis_maxmemory_policy: "noeviction"
El método que se utilizará para mantener el uso de memoria por debajo del límite, si se especifica. Ver Usando Redis como una caché LRU.
redis_maxmemory_samples: 5
Número de muestras que se utilizarán para aproximar LRU. Ver Usando Redis como una caché LRU.
redis_appendonly: "no"
La opción appendonly, si se habilita, ofrece mejores garantías de durabilidad de datos, a costa de un rendimiento ligeramente más lento.
redis_appendfsync: "everysec"
Los valores válidos son always
(más lento, más seguro), everysec
(un término medio) o no
(dejar que el sistema de archivos descargue los datos cuando quiera, el más riesgoso).
# Agregar archivos de inclusión adicionales para la configuración/localizaciones.
redis_includes: []
Agregar rutas de archivos de inclusión adicionales a esta lista para incluir más/configuración Redis localizada.
El nombre del paquete redis para su instalación a través del gestor de paquetes del sistema. Por defecto es redis-server
en Debian y redis
en RHEL.
redis_package_name: "redis-server"
(Por defecto para RHEL mostrado) El nombre del paquete redis para su instalación a través del gestor de paquetes del sistema. Por defecto es redis-server
en Debian y redis
en RHEL.
redis_requirepass: ""
Establece una contraseña para requerir autenticación a Redis. Puedes generar una contraseña fuerte usando echo "mi_contraseña_aquí" | sha256sum
.
redis_disabled_commands: []
Por seguridad adicional, puedes deshabilitar ciertos comandos de Redis (esto es especialmente importante si Redis es accesible públicamente). Por ejemplo:
redis_disabled_commands:
- FLUSHDB
- FLUSHALL
- KEYS
- PEXPIRE
- DEL
- CONFIG
- SHUTDOWN
redis_extra_config: |-
# Líneas de configuración adicionales de redis pueden ser añadidas aquí.
Líneas de configuración Redis adicionales que se agregarán al final del archivo redis.conf
.
Dependencias
Ninguna.
Ejemplo de Playbook
- hosts: all
roles:
- role: geerlingguy.redis
Licencia
MIT / BSD
Información del Autor
Este rol fue creado en 2014 por Jeff Geerling, autor de Ansible for DevOps.
ansible-galaxy install geerlingguy.redis