Redis Cluster / Redis Replication

发布时间: 2015-12-12 20:45:34 作者: 大象笔记

redis replication 与 cluster 的区别

概念区分

redis replication

经典的 master/slave 模式, 即主从复制 (replication), 参考

配置 redis replication 时需要注意的问题

master 一定要设置持久化。否则在关闭持久化,且有类似 supervisor 拉起挂掉的 redis 进程的情况下, 可能造成数据的丢失。

原因是 redis 进程关闭之后,内存中的数据将会被清空,重启之后,数据在 empty 的情况下,会同步到 slave 那里,造成所有的数据丢失。

replication 的同步策略

开放端口带来的安全问题

由于主从同步需要开放端口

slaveof 192.168.1.1 6379

所以最好为 master 设置访问密码,并将密码写到 redis 的配置文件里

masterauth <password>

replication 模式下 master 与 slave 的自动切换

考虑以下场景,当 master 宕机,如果自动将 slave 选举为 master

参考 Redis Sentinel Documentation

sentinel 是哨兵的意思

Redis Sentinel 的技能包括

架构中需要部署多个 sentinel 实例

推荐使用 Redis 2.8 & Sentinel 2

注意: sentinel 默认使用了 TCP port 26379 进行通讯,iptables 莫忘配置。

python 的 sentinel 支持

参考

我是一名山东烟台的开发者,联系作者