Add KeyDB (Redis clone) to configuration
Replaces Redis for PVC >= 0.9.81
This commit is contained in:
parent
2f9603c82f
commit
523f7da71e
|
@ -21,6 +21,12 @@
|
||||||
state: restarted
|
state: restarted
|
||||||
ignore_errors: yes
|
ignore_errors: yes
|
||||||
|
|
||||||
|
- name: restart keydb
|
||||||
|
service:
|
||||||
|
name: keydb-server
|
||||||
|
state: restarted
|
||||||
|
ignore_errors: yes
|
||||||
|
|
||||||
# Restart services one-at-a-time
|
# Restart services one-at-a-time
|
||||||
# Ideally, this would be accomplished by a serial=1, but Ansible doesn't support that and
|
# Ideally, this would be accomplished by a serial=1, but Ansible doesn't support that and
|
||||||
# likely never will. Instead, we just run the service restart manually, waiting X seconds
|
# likely never will. Instead, we just run the service restart manually, waiting X seconds
|
||||||
|
|
|
@ -0,0 +1,39 @@
|
||||||
|
---
|
||||||
|
- name: remove redis packages via apt
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- redis
|
||||||
|
- redis-server
|
||||||
|
- redis-tools
|
||||||
|
state: absent
|
||||||
|
purge: yes
|
||||||
|
|
||||||
|
- name: install keydb packages via apt
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- keydb
|
||||||
|
state: latest
|
||||||
|
update-cache: yes
|
||||||
|
register: apt_res
|
||||||
|
retries: 5
|
||||||
|
until: apt_res is success
|
||||||
|
|
||||||
|
- name: install keydb configuration file
|
||||||
|
template:
|
||||||
|
src: keydb/keydb.conf.j2
|
||||||
|
dest: /etc/keydb/keydb.conf
|
||||||
|
owner: keydb
|
||||||
|
group: keydb
|
||||||
|
mode: 0640
|
||||||
|
notify: restart keydb
|
||||||
|
|
||||||
|
- name: start but disable services (managed by PVC)
|
||||||
|
service:
|
||||||
|
name: "{{ item }}"
|
||||||
|
state: started
|
||||||
|
enabled: no
|
||||||
|
ignore_errors: yes
|
||||||
|
with_items:
|
||||||
|
- keydb-server
|
||||||
|
|
||||||
|
- meta: flush_handlers
|
|
@ -45,6 +45,10 @@
|
||||||
tags: pvc-patroni
|
tags: pvc-patroni
|
||||||
when: is_coordinator
|
when: is_coordinator
|
||||||
|
|
||||||
|
- include: keydb/main.yml
|
||||||
|
tags: pvc-keydb
|
||||||
|
when: is_coordinator
|
||||||
|
|
||||||
# Install core services
|
# Install core services
|
||||||
- include: libvirt/main.yml
|
- include: libvirt/main.yml
|
||||||
tags: pvc-libvirt
|
tags: pvc-libvirt
|
||||||
|
|
|
@ -0,0 +1,79 @@
|
||||||
|
bind 0.0.0.0
|
||||||
|
protected-mode no
|
||||||
|
port 6379
|
||||||
|
tcp-backlog 511
|
||||||
|
timeout 0
|
||||||
|
tcp-keepalive 300
|
||||||
|
daemonize yes
|
||||||
|
pidfile /var/run/keydb/keydb-server.pid
|
||||||
|
loglevel notice
|
||||||
|
logfile /var/log/keydb/keydb-server.log
|
||||||
|
databases 16
|
||||||
|
always-show-logo yes
|
||||||
|
set-proc-title yes
|
||||||
|
proc-title-template "{title} {listen-addr} {server-mode}"
|
||||||
|
save 5 1
|
||||||
|
stop-writes-on-bgsave-error yes
|
||||||
|
rdbcompression yes
|
||||||
|
rdbchecksum yes
|
||||||
|
dbfilename dump.rdb
|
||||||
|
rdb-del-sync-files no
|
||||||
|
dir /var/lib/keydb
|
||||||
|
replica-serve-stale-data yes
|
||||||
|
replica-read-only yes
|
||||||
|
repl-diskless-sync no
|
||||||
|
repl-diskless-sync-delay 5
|
||||||
|
repl-diskless-load disabled
|
||||||
|
repl-disable-tcp-nodelay no
|
||||||
|
replica-priority 100
|
||||||
|
acllog-max-len 128
|
||||||
|
lazyfree-lazy-eviction no
|
||||||
|
lazyfree-lazy-expire no
|
||||||
|
lazyfree-lazy-server-del no
|
||||||
|
replica-lazy-flush no
|
||||||
|
lazyfree-lazy-user-del no
|
||||||
|
lazyfree-lazy-user-flush no
|
||||||
|
oom-score-adj no
|
||||||
|
oom-score-adj-values 0 200 800
|
||||||
|
disable-thp yes
|
||||||
|
appendonly no
|
||||||
|
appendfilename "appendonly.aof"
|
||||||
|
appendfsync everysec
|
||||||
|
no-appendfsync-on-rewrite no
|
||||||
|
auto-aof-rewrite-percentage 100
|
||||||
|
auto-aof-rewrite-min-size 64mb
|
||||||
|
aof-load-truncated yes
|
||||||
|
aof-use-rdb-preamble yes
|
||||||
|
lua-time-limit 5000
|
||||||
|
slowlog-log-slower-than 10000
|
||||||
|
slowlog-max-len 128
|
||||||
|
latency-monitor-threshold 0
|
||||||
|
notify-keyspace-events ""
|
||||||
|
hash-max-ziplist-entries 512
|
||||||
|
hash-max-ziplist-value 64
|
||||||
|
list-max-ziplist-size -2
|
||||||
|
list-compress-depth 0
|
||||||
|
set-max-intset-entries 512
|
||||||
|
zset-max-ziplist-entries 128
|
||||||
|
zset-max-ziplist-value 64
|
||||||
|
hll-sparse-max-bytes 3000
|
||||||
|
stream-node-max-bytes 4096
|
||||||
|
stream-node-max-entries 100
|
||||||
|
activerehashing yes
|
||||||
|
client-output-buffer-limit normal 0 0 0
|
||||||
|
client-output-buffer-limit replica 256mb 64mb 60
|
||||||
|
client-output-buffer-limit pubsub 32mb 8mb 60
|
||||||
|
hz 10
|
||||||
|
dynamic-hz yes
|
||||||
|
aof-rewrite-incremental-fsync yes
|
||||||
|
rdb-save-incremental-fsync yes
|
||||||
|
jemalloc-bg-thread yes
|
||||||
|
server-threads 2
|
||||||
|
replica-weighting-factor 2
|
||||||
|
|
||||||
|
# Enable multi-master replication
|
||||||
|
multi-master yes
|
||||||
|
active-replica yes
|
||||||
|
{% for node in pvc_nodes if node.is_coordinator and node.hostname != ansible_hostname %}
|
||||||
|
replicaof {{ node.cluster_ip }} 6379
|
||||||
|
{% endfor %}
|
Loading…
Reference in New Issue