redis3.0.0一主两从哨兵模式配置

环境:
10.249.2.131   从131
10.249.2.133   主133
10.249.2.134   从134

一、配置三个节点主从
主从已配置完毕
主133上
[root@hivemaster redis]# ./src/redis-cli -p 6379
127.0.0.1:6379> info Replication
# Replication
role:master
connected_slaves:2
slave0:ip=10.249.2.131,port=6379,state=online,offset=6091,lag=1
slave1:ip=10.249.2.134,port=6379,state=online,offset=6091,lag=1
master_repl_offset:6091
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:2
repl_backlog_histlen:6090

[root@hivemaster redis]# ./src/redis-cli -p 6379
127.0.0.1:6379> set name wolf
OK
127.0.0.1:6379> get name
"wolf"
127.0.0.1:6379> save
OK

从131
[root@localhost redis]# ./src/redis-cli -p 6379
127.0.0.1:6379> get name
"wolf"
127.0.0.1:6379> set name wolf
(error) READONLY You can't write against a read only slave.
127.0.0.1:6379> 
127.0.0.1:6379> info Replication
# Replication
role:slave
master_host:10.249.2.133
master_port:6379
master_link_status:up
master_last_io_seconds_ago:0
master_sync_in_progress:0
slave_repl_offset:6063
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

从134上
127.0.0.1:6379> get name
"wolf"
127.0.0.1:6379> set name 123
(error) READONLY You can't write against a read only slave.
[root@hivemaster redis]# ./src/redis-cli -p 6379
127.0.0.1:6379> info Replication
# Replication
role:slave
master_host:10.249.2.133
master_port:6379
master_link_status:up
master_last_io_seconds_ago:1
master_sync_in_progress:0
slave_repl_offset:6525
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

二、哨兵配置(详细参数研究还得深入)
三台主机都编辑
[root@hivemaster redis]# vi sentinel.conf
port 26379
#MyMaster
sentinel monitor MyMaster 10.249.2.133 6379 1
sentinel down-after-milliseconds MyMaster 5000
sentinel failover-timeout MyMaster 900000
sentinel parallel-syncs MyMaster 2

三台主机都启动
[root@hivemaster redis]# ./src/redis-sentinel sentinel.conf 
18329:X 09 Dec 17:47:55.211 * Increased maximum number of open files to 10032 (it was originally set to 1024).
                _._                                                  
           _.-``__ ''-._                                             
      _.-``    `.  `_.  ''-._           Redis 3.0.0 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ''-._                                   
 (    '      ,       .-`  | `,    )     Running in sentinel mode
 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 26379
 |    `-._   `._    /     _.-'    |     PID: 18329
  `-._    `-._  `-./  _.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |           http://redis.io        
  `-._    `-._`-.__.-'_.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |                                  
  `-._    `-._`-.__.-'_.-'    _.-'                                   
      `-._    `-.__.-'    _.-'                                       
          `-._        _.-'                                           
              `-.__.-'                                               

18329:X 09 Dec 17:47:55.213 # Sentinel runid is 6a6744a61159c56b86b5b11dd48ac0491085aae5
18329:X 09 Dec 17:47:55.213 # +monitor master MyMaster 10.249.2.133 6379 quorum 1
18329:X 09 Dec 17:47:56.214 * +slave slave 10.249.2.131:6379 10.249.2.131 6379 @ MyMaster 10.249.2.133 6379
18329:X 09 Dec 17:47:56.215 * +slave slave 10.249.2.134:6379 10.249.2.134 6379 @ MyMaster 10.249.2.133 6379
18329:X 09 Dec 17:47:56.987 * +sentinel sentinel 10.249.2.131:26379 10.249.2.131 26379 @ MyMaster 10.249.2.133 6379
18329:X 09 Dec 17:47:57.020 * +sentinel sentinel 10.249.2.133:26379 10.249.2.133 26379 @ MyMaster 10.249.2.133 6379

三、测试哨兵
1、终止主133redis服务。
[root@hivemaster redis]# ps -ef | grep redis
root     16550     1  0 17:44 ?        00:00:00 ./src/redis-server *:6379    
root     16607 16130  0 17:54 pts/1    00:00:00 ./src/redis-sentinel *:26379 [sentinel]
root     16611 16568  0 17:55 pts/2    00:00:00 grep redis
[root@hivemaster redis]# ./src/redis-cli -p 6379 shutdown
[root@hivemaster redis]# ps -ef | grep redis             
root     16607 16130  0 17:54 pts/1    00:00:00 ./src/redis-sentinel *:26379 [sentinel]
root     16614 16568  0 17:55 pts/2    00:00:00 grep redis

2、查看log
18347:X 09 Dec 17:54:48.769 # +odown master MyMaster 10.249.2.133 6379 #quorum 1/1
18347:X 09 Dec 17:54:48.769 # Next failover delay: I will not start a failover before Fri Dec  9 18:24:49 2016
18347:X 09 Dec 17:54:49.826 # +config-update-from sentinel 10.249.2.133:26379 10.249.2.133 26379 @ MyMaster 10.249.2.133 6379
18347:X 09 Dec 17:54:49.826 # +switch-master MyMaster 10.249.2.133 6379 10.249.2.134 6379                                看到切换过程已经切换到134
18347:X 09 Dec 17:54:49.826 * +slave slave 10.249.2.131:6379 10.249.2.131 6379 @ MyMaster 10.249.2.134 6379  
18347:X 09 Dec 17:54:49.861 * +slave slave 10.249.2.133:6379 10.249.2.133 6379 @ MyMaster 10.249.2.134 6379

3、进入131和134查看配置文件(发现写入很多配置)
sentinel config-epoch MyMaster 1
sentinel leader-epoch MyMaster 1
sentinel known-slave MyMaster 10.249.2.131 6379
sentinel known-slave MyMaster 10.249.2.133 6379
sentinel known-sentinel MyMaster 10.249.2.133 26379 87abcd43db6cdc29d76f0e5a85e3dee5876eae0e
sentinel known-sentinel MyMaster 10.249.2.134 26379 fa83ecbc2346928da1a8c8e5b788cc39e5c70df3
sentinel current-epoch 1

4、进入134测试
[root@hivemaster redis]# ./src/redis-cli -p 6379
127.0.0.1:6379> 
127.0.0.1:6379> 
127.0.0.1:6379> info Replication
# Replication
role:master
connected_slaves:1
slave0:ip=10.249.2.131,port=6379,state=online,offset=94090,lag=0
master_repl_offset:94090
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:2
repl_backlog_histlen:94089
127.0.0.1:6379> get name
"wolf"
127.0.0.1:6379> set name laolang
OK
127.0.0.1:6379> save
OK

5、进入131测试
127.0.0.1:6379> info Replication
# Replication
role:slave
master_host:10.249.2.134
master_port:6379
master_link_status:up
master_last_io_seconds_ago:1
master_sync_in_progress:0
slave_repl_offset:67915
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
127.0.0.1:6379> 
[root@localhost redis]# ./src/redis-cli -p 6379
127.0.0.1:6379> get name
"wolf"
127.0.0.1:6379> set name laolang
(error) READONLY You can't write against a read only slave.

三、原主节点恢复
[root@hivemaster redis]# ./src/redis-server redis.conf 
[root@hivemaster redis]# ps -ef | grep redis
root     16607 16130  0 17:54 pts/1    00:00:02 ./src/redis-sentinel *:26379 [sentinel]
root     16648     1  0 18:04 ?        00:00:00 ./src/redis-server *:6379    
root     16652 16568  0 18:05 pts/2    00:00:00 grep redis

现在的主节点上查看(未回切)
[root@hivemaster redis]# ./src/redis-cli -p 6379
127.0.0.1:6379> info Replication
# Replication
role:master
connected_slaves:2
slave0:ip=10.249.2.131,port=6379,state=online,offset=127316,lag=1
slave1:ip=10.249.2.133,port=6379,state=online,offset=127316,lag=1
master_repl_offset:127455
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:2
repl_backlog_histlen:127454









































  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值