grzegorznowak.redis
Rol de Ansible: Redis
Instala Redis Server en Debian.
Versión minimalista de un rol multi-configuración de redis para distribuciones basadas en Debian, con una cobertura de pruebas exhaustiva utilizando molecule (para que puedas probar localmente con esfuerzo mínimo) y una capa compatible con docker si deseas construirlo sobre un contenedor docker.
Creará archivos de configuración separados (ubicados en /etc/redis/redis-{{name}}.conf), así como puntos de registro independientes en /var/log/redis/ para cada configuración definida.
El rol es perfecto para fines de desarrollo para probar múltiples configuraciones en una sola máquina, así como para implementaciones en vivo, con su código minimalista totalmente cubierto por moléculas y revisado.
Utiliza systemctl
en lxd/baremetal y un simple init.d
en docker.
Requisitos
Sin dependencias.
Cobertura
Actualmente se construye e integra en las últimas distribuciones basadas en Debian:
Ubuntu: 18.04, 16.04
Debian: stretch
Variables
predeterminados
redis_package_name: "redis-server"
redis_configs:
- port: 6380 # puerto a escuchar
name: "cache" # nombre de configuración - también afectará los nombres de archivo de registro (/var/log/redis) y los archivos pid
bind: 127.0.0.1 # qué IP vincular (localhost siendo la opción más segura para autoservicio)
un ejemplo de multiconfig
redis_configs:
- port: 6379,
name: "cache"
bind: 127.0.0.1
- port: 6380,
name: "session"
bind: 127.0.0.1
- port: 8080,
name: "shared-cache"
bind: 0.0.0.0
# ten cuidado, el último abrirá 8080 al mundo exterior,
# por lo que necesitará reglas de endurecimiento separadas (no incluidas en este rol)
Actualmente el rol instala la última versión estable disponible en las distribuciones soportadas.
Ejemplo de playbook
al clonar desde github
---
- hosts: all
vars:
redis_configs:
- port: 6379,
name: "cache0"
bind: 127.0.0.1
- port: 6380,
name: "cache1"
bind: 127.0.0.1
roles:
- role: ansible-redis
al usar ansible-galaxy
---
- hosts: all
vars:
redis_configs:
- port: 6379,
name: "cache0"
bind: 127.0.0.1
- port: 6380,
name: "cache1"
bind: 127.0.0.1
roles:
- role: grzegorznowak.redis
Pruebas
Requisitos
- https://molecule.readthedocs.io/en/latest/installation.html
- documento de instalación específico de molecule LXD
- documento de instalación específico de molecule docker
Pruebas con contenedores chroot LXD de bajo nivel
molecule test
Pruebas contra imágenes base de docker
molecule test --scenario-name=docker_dev
Beneficios adicionales de molecule
Recuerda que también puedes hacer cosas locas como molecule converge
para simplemente crear instancia(s) a voluntad y luego destruirlas con molecule destroy
. ¡Aquí realmente el cielo es el límite!
Patrocinado por
Kwiziq.com - La plataforma de educación de lenguas de IA
Spottmedia.com - Diseño, entrega y consultoría tecnológica
Información del Autor
hecho con amor por Grzegorz Nowak.
Redis multiconf for Ubuntu. Molecule covered. Also builds for vanilla docker machines.
ansible-galaxy install grzegorznowak.redis