grzegorznowak.redis
Rôle Ansible : Redis
Installe Redis Server sur Debian.
Version minimaliste d'un rôle redis multi-config pour les distributions basées sur Debian, avec une couverture de test complète utilisant molecule (pour que vous puissiez tester localement avec un effort minimal) et une couche compatible Docker si vous souhaitez le construire sur un conteneur Docker.
Il créera des fichiers de configuration séparés (situés sous /etc/redis/redis-{{name}}.conf), ainsi que des points de journalisation autonomes dans /var/log/redis/ pour chaque configuration définie.
Ce rôle est parfait pour les tests de développement de plusieurs configurations sur une seule machine, ainsi que pour les déploiements en direct grâce à son code minimaliste entièrement testé et nettoyé.
Il utilise systemctl
sur lxd/baremetal et un simple init.d
sur Docker.
Exigences
Aucune dépendance.
Couverture
Builds et s'intègre actuellement sur les dernières distributions basées sur Debian :
Ubuntu : 18.04, 16.04
Debian : stretch
Variables
valeurs par défaut
redis_package_name: "redis-server"
redis_configs:
- port: 6380 # port à écouter
name: "cache" # nom de la configuration - affectera également le nom du fichier journal (/var/log/redis) et les cibles de pidfile
bind: 127.0.0.1 # quelle IP binder (localhost étant l'option la plus sûre pour un auto-service)
un exemple 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
# attention, le dernier ouvrira 8080 sur le monde extérieur,
# donc il faudra des règles de renforcement séparées (non incluses dans ce rôle)
Ce rôle installe actuellement la dernière version stable disponible dans les dépôts en amont pris en charge.
Exemple de playbook
lors du clonage depuis 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
depuis 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
Tests
Exigences
- https://molecule.readthedocs.io/en/latest/installation.html
- documentation d'installation spécifique pour molecule LXD
- documentation d'installation spécifique pour molecule docker
Tests avec des conteneurs LXD chroot à bas niveau
molecule test
Tests contre les images de base Docker
molecule test --scenario-name=docker_dev
Avantages supplémentaires de molecule
N'oubliez pas que vous pouvez également faire des choses folles comme molecule converge
pour simplement créer des instance(s) à volonté puis les détruire avec molecule destroy
. Les possibilités sont vraiment infinies !
Sponsorisé par
Kwiziq.com - La plateforme d'éducation linguistique par IA
Spottmedia.com - Conception, livraison et conseil technologiques
Informations sur l'auteur
fait avec amour par Grzegorz Nowak.
Redis multiconf for Ubuntu. Molecule covered. Also builds for vanilla docker machines.
ansible-galaxy install grzegorznowak.redis