davidalger.multi_redis
Ansible Rolle: Multi-Redis
Installiert mehrere Instanzen von Redis 5 aus den IUS Community Project RPMs auf RHEL / CentOS 7 und aus AppStreams auf RHEL / CentOS 8. Wenn archivierte Versionen von Redis benötigt werden (wie Redis 3.0, 3.1 oder 3.2), kann das ius-archive Repository aktiviert werden, um die Installation älterer Versionen auf EL 7 zu erleichtern (Versionen älter als 5.0 werden auf EL 8 nicht unterstützt).
Aktuell installiert diese Rolle Redis vordefiniert mit Standardeinstellungen, die für Magento optimiert sind. Einige dieser Standardwerte können anders sein, wenn diese Rolle verwendet wird, um Redis in einer Nicht-Magento-Umgebung zu implementieren. Siehe defaults/main.yml
für Details.
Anforderungen
Keine.
Rollenvariablen
redis_version: 5
Auf EL 7 kann jede von IUS RPMs unterstützte Redis-Version angegeben werden: 30, 32 usw. Für EL 8 werden nur neuere Versionen wie '5' (und später, sobald sie als zusätzliche Modulströme veröffentlicht werden) unterstützt.
Siehe defaults/main.yml
für die vollständige Liste der Variablen, die verfügbar sind, um die Redis-Dienste anzupassen.
Abhängigkeiten
davidalger.repo_ius
davidalger.selinux
Beispiel Playbook
Produktion mit dreifacher Redis-Bereitstellung:
- { role: redis, tags: redis, redis_instance: { name: obj, port: 6379 }} - { role: redis, tags: redis, redis_instance: { name: fpc, port: 6381 }} - { role: redis, tags: redis, redis_instance: { name: ses, port: 6380, save: yes }}
Staging mit dreifacher Redis-Bereitstellung:
- { role: redis, tags: redis, redis_instance: { name: stage-obj, port: 6389 }} - { role: redis, tags: redis, redis_instance: { name: stage-fpc, port: 6391 }} - { role: redis, tags: redis, redis_instance: { name: stage-ses, port: 6390, save: yes }}
Angepasste Instanzkonfigurationen
Überschreiben Sie die Standardwerte und geben Sie die
maxmemory-policy
in der Instanzkonfiguration an, anstatt in der Basiskonfiguration:# Schlüssel/Wert-Hash von Einstellungen für /etc/redis-{{ redis_instance.name }}.conf redis_instance_config: - maxmemory-policy: "volatile-lru" # Schlüssel/Wert-Hash von Einstellungen für /etc/redis-base.conf redis_config: - daemonize: "yes" - timeout: "0" - loglevel: "notice" - databases: "2" - rdbcompression: "no" - dbfilename: "dump.rdb" - appendonly: "no" - appendfsync: "everysec" - no-appendfsync-on-rewrite: "no" - slowlog-log-slower-than: "10000" - slowlog-max-len: "1024" - list-max-ziplist-entries: "512" - list-max-ziplist-value: "64" - set-max-intset-entries: "512" - zset-max-ziplist-entries: "128" - zset-max-ziplist-value: "64" - activerehashing: "yes" - slave-serve-stale-data: "yes" - auto-aof-rewrite-percentage: "100" - auto-aof-rewrite-min-size: "64mb" - tcp-backlog: "511" - tcp-keepalive: "0" - repl-disable-tcp-nodelay: "no"
Wenn Sie die Rolle aufrufen, geben Sie den Instanzkonfigurationswert an, wo er unterschiedlich sein muss
- { role: redis, tags: redis, redis_instance: { name: obj, port: 6379 }, redis_maxmemory: 8gb, redis_instance_config: [{maxmemory-policy: allkeys-lru}] } - { role: redis, tags: redis, redis_instance: { name: fpc, port: 6381 }, redis_maxmemory: 8gb, redis_instance_config: [{maxmemory-policy: allkeys-lru}] } - { role: redis, tags: redis, redis_instance: { name: ses, port: 6380, save: yes }, redis_maxmemory: 8gb}
Lizenz
Diese Arbeit ist unter der MIT-Lizenz lizenziert. Siehe Lizenzdatei für Details.
Autor Informationen
Diese Rolle wurde 2017 von David Alger mit Beiträgen von Matt Johnson erstellt.
ansible-galaxy install davidalger.multi_redis