在演示redis sentinel以前,首先准备一套主从(生产环境是sentinel和主从都不会在一台机器,这里为了演示,都在一台机器进行部署)redis
咱们以7000端口做为master节点,700一、7002为slave节点vim
master配置bash
slave配置(7002同)spa
将三个节点启动日志
来看下主从关系code
1.将redis安装目录下的sentinel.conf拷贝到新建的config目录下进程
cp sentinel.conf ./config/
2.到config目录下,过滤到配置文件的空行和注释并重定向文件 redis-sentinel-26379.confip
cat sentinel.conf | grep -v "#" | grep -v "^$" > redis-sentinel-26379.conf
3.看下配置文件部署
port 是端口号,sentinel默认26379同步
dir 是工做目录
sentinel monitor 其中的mymaster表明监控主节点的名字,后面是ip 端口 还有一个2,意思是说至少有几个sentinel认为这个master有问题(故障发现)就会发动下一步(故障转移)
sentinel down-after-milliseconds 表明断定故障的一个时间阀值 默认30000毫秒(这里能够想象成不停的去PING,30秒没反应就认为是故障,进行故障转移)
sentinel parallel-syncs 表明slave向新的master同步时,同时进行最多几个,默认是1 这样能够减轻master的压力
failover-timeout是进行故障转移的时间
4.编辑config目录下的sentinel配置,加入守护进程启动,工做目录,日志文件名,监听master的端口号
vim redis-sentinel-26379.conf
5.再编辑两个sentinel的config同上 将端口和日志文件改成26380,并启动将他们启动(注意,这里启动命令要用redis-sentinel )
6.接下来用redis-cli随便连一个sentinel,输入info命令观察
能够看到sentinel节点下,发现了master在7000端口,而且有2个slave,一共有3个sentinel(证实sentinel能够互相感知)。还能够看下sentinel的配置文件发生了变化
发现了2台slave和另外的两个sentinel。