1.主从配置 修改redis.conf配置 1)master不需要修改 2)slaver修改以下标签,如:slaveof 127.0.0.1 9001 # slaveof <masterip> <masterport>
附:设置密码 redis主从配置的密码一般相同,修改以下标签,如:requirepass 123456 # requirepass foobared 如果master设置了密码, slaver 需要授权master密码,修改以下标签,如:masterauth 123456 # masterauth <master-password>
根据配置文件启动redis服务(建议先启动master) cmd>redis-server /path/to/redis.conf
查看主从服务状态: info
2.哨兵配置 新增配置文件sentinel.conf #sentinel端口 port 26379 #工作路径,注意路径不要和主重复 dir "D:\\redis\\server\\9001\\sentinel" # 守护进程模式 daemonize yes # 指明日志文件名 logfile "D:/redis/server/9001/log/sentinel.log" #哨兵监控的master,主从配置一样,这里只用输入redis主节点的ip/port和法定人数。 sentinel monitor mymaster 127.0.0.1 9003 2 # master或slave多长时间(默认30秒)不能使用后标记为s_down状态。 sentinel down-after-milliseconds mymaster 5000 #若sentinel在该配置值内未能完成failover操作(即故障时master/slave自动切换),则认为本次failover失败。 sentinel failover-timeout mymaster 18000 #设置master和slaves验证密码 sentinel auth-pass mymaster 123456 #指定了在执行故障转移时, 最多可以有多少个从服务器同时对新的主服务器进行同步 sentinel config-epoch mymaster 1
注:在sentinel运行后会修改配置文件,以下注释行后的配置为sentinel自动生成 # Generated by CONFIG REWRITE
根据配置文件启动sentinel服务 方式1:redis-sentinel /path/to/sentinel.conf 方式2:redis-server /path/to/sentinel.conf --sentinel
通过哨兵查看集群的信息: sentinel master mymaster//查看master的状态 sentinel slaves mymaster //查看salves的状态 sentinel sentinels mymaster //查看哨兵的状态 sentinel get-master-addr-by-name mymaster//获取当前master的地址 info sentinel//查看哨兵信息
注意情况: master下线后sentinel会从slaver中选出一个成为新的master,如果将旧master重新添加到主从关系中,旧master会成为新master的slaver,需检查redis.conf的slaveof,masterauth配置是否正确,否则不能加入到主从关系。
如想了解如何做到 像查询DB一样查询redis,可阅读我的文章:http://blog.csdn.net/w13528476101/article/details/70146064