zpitblog

导航

 

环境信息,三台机器,一台master,两台slave,每台机器上启动一个sentinel

master 192.168.1.106

slave1 192.168.1.102

slave2 192.168.1.103

为了方便放在每台机器的/root目录下面

1,下载redis稳定版 redis-3.0.6.tar.gz,首先安装master

  1),解压,安装

         tar -zxvf redis-3.0.6.tar.gz

         make

         makeinstall

 2),启动master

       ./redis-server /root/redis-3.0.6/redis.conf

2,把redis-3.0.6目录下文件copy到slave机器上

  scp -r redis-3.0.6/ root@slave1 192.168.1.102:/root

  scp -r redis-3.0.6/ root@slave1 192.168.1.103:/root

3,修改slave下面的redis.conf配置

   在文件后面加上

   slaveof 192.168.1.106 6379

4,启动两台slave机器

    ./redis-server /root/redis-3.0.6/redis.conf

5.登陆master测试

   ./redis-cli

   set name 'lily'

   然后登陆slave机器

   get name

6.编辑三台机器的sentinel.conf配置文件

  sentinel monitor mymaster 192.168.1.106 6379 2

  然后启动sentinel

 ./redis-sentinel /root/redis-3.0.6/sentinel.conf

 

./redis-cli -h 127.0.0.1 -p 26379 info sentinel 查看sentinel状态

显示如下

# Sentinel
sentinel_masters:1
sentinel_tilt:0
sentinel_running_scripts:0
sentinel_scripts_queue_length:0
master0:name=mymaster,status=ok,address=192.168.1.106:6379,slaves=2,sentinels=3

可以看到集群的状态是ok

mastername 是 mymaster(jredis连接的时候要保持同步)

 

然后测试 master挂掉的情况

kill master

然后登上其余的slave,

运行命令 ROLE

发现103已经成为master,说明集群master已经完成切换

 

再启动刚才kill掉的master

发现 现在的role 是slave

 

posted on 2016-01-10 20:00  zpitblog  阅读(219)  评论(0编辑  收藏  举报