Mise en haute disponibilité de Redis

Vue global de la configuration

  • Système
    • Debian stable ( 8.x )
  • Kernel :
    • Paramétrages TCP, Memoire et du système de fichier
  • Redis
    • Serveur : Tous les serveurs redis pourront etre maitre ou esclave
    • Sentinel : Gere la bascule master/slave entre le serveurs en cas de panne
  • Keepalived
    • Placer L’IP de service ( vrrp ) sur le serveur Redis Maitre

Redis

Installation des paquets redis-server et redis-tools

apt-get install redis-server  redis-tools

Configuration commune redis

daemonize yes
pidfile "/var/run/redis/redis-server.pid"
port 6379
tcp-backlog 65535
timeout 0
tcp-keepalive 0
loglevel notice
logfile "/var/log/redis/redis.log"
databases 16
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename "dump.rdb"
dir "/var/lib/redis"
slave-serve-stale-data yes
slave-read-only yes
repl-disable-tcp-nodelay no
slave-priority 100
maxclients 10000
appendonly yes
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
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-entries 512
list-max-ziplist-value 64
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
hll-sparse-max-bytes 3000
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
aof-rewrite-incremental-fsync yes

Configuration commune aux deux serveur sentinel

Remplacer 192.168.1.2 par l’ip de l’autre serveur

[Lire]