搭建好redis单机后,开始研究redis集群配置redis
两台VM虚拟机,都安装了redis程序,一台做为master 一台做为slave.net
首先配置redis主从配置日志
配置在redis.conf文件中server
主机上须要设置masterauth(光主从同步不须要配置这个,可是后续配置哨兵机制的时候须要配置这个属性)blog
从机上须要配置slaveof 主机IP 主机端口,一样也许配置masterauth,密码和主机同样进程
启动主机,启动从机get
在主机上set key value后同步
在从机上get key 虚拟机
能正常获得主机设置的值it
可是要实现主从容错自动切换,就须要配置redis哨兵,
redis-sentinel 是一个守护进程,做用有,监控,管理主从机,通知,主从切换功能
首先设置主机sentinel.conf
sentinel monitor mymaster 127.0.0.1 6379 1
这句话的意思是监控集群名为mymaster的主机IP,端口,最后一个数字表示,当有几台哨兵监控到主机出错后执行主从切换
sentinel auth-pass mymaster 密码
这个密码须要和redis.conf中的masterauth一致
sentinel down-after-milliseconds mymaster 15000
这个配置设置的是当哨兵每秒对mymaster主机执行Ping操做时,超过15000毫秒后认为主机宕机
sentinel failover-timeout mymaster 900000
和当主从切换多久后认为主从切换失败
sentinel leader-epoch mymaster 1
sentinel config-epoch mymaster 1
这两个配置后面的数量主从机须要同样
请注意,当主机启动过redis-sentinel 后,哨兵会根据各丛机配置自动查找丛机,会在主机的sentinel.conf文件中自动生成丛机IP,因此不须要将全部丛机IP 列出来
当启动过redis-sentinel时,会在主机sentinel.conf和从机sentinel.conf中生成myid,建议重启redis-sentinel时将两个sentinel.conf中生成的myid删除,否则主从切换时,会根据myid去找对应的从机,当新生成的myid和原来的myid不一致,将没法切换
设置从机sentinel.conf
和主机的sentinel.conf保持一致,
先启动主机redis-server ,在启动从机redis-server,再启动主机redis-sentinel 再启动从机redis-sentinel
将主机master的进程杀掉,能够看到下图的日志,右边为主机,左边为从机
原文:https://blog.csdn.net/wyyanhxbl/article/details/52367630?utm_source=copy