Redis 安装成windows服务- 一主二从三哨兵,sentinel安装为Windows服务

 

 这里只做记录说明

Redis的主从配置网上很多文章,百度一大堆,安装流程应该都可以配置通。我使用的这篇文章 

https://blog.csdn.net/u010648555/article/details/79427606

 

配置完成主从后,继续哨兵的配置,同样网上很多文章,我参考  

https://blog.csdn.net/u010648555/article/details/79430105

在配置哨兵的过程中遇到问题,哨兵搭建都成功,相互之间也知道对方的存在,就是无法通信,无法启动故障迁移。

原因主要是因为 sentinel.conf 配置确实一个配置,不过添加那一句貌似就裸奔了,要完善处理,可以参考这骗文章:

https://www.cnblogs.com/zhoujinyi/p/5585723.html

我测试时添加了

protected-mode no

  正式环境建议研究配置,都给密码,改端口

如下时我的 sentinel.conf 完整配置

# 这个是Redis6379配置内容,其他文件同理新增然后改一下端口即可,26380,和 26381。

#当前Sentinel服务运行的端口
port 26379  

protected-mode no
# 哨兵监听的主服务器 
sentinel monitor mymaster 127.0.0.1 6379 2
# 3s内mymaster无响应,则认为mymaster宕机了
sentinel down-after-milliseconds mymaster 3000
#如果10秒后,mysater仍没启动过来,则启动failover  
sentinel failover-timeout mymaster 10000  
# 执行故障转移时, 最多有1个从服务器同时对新的主服务器进行同步
sentinel parallel-syncs mymaster 1

修改后即可测试成功自动迁移。

下面就是把Redis和Sentinel都弄成Windows 的服务运行。

将Redis做成服务运行,这篇文章也说得清楚,

https://www.cnblogs.com/zoro-zero/p/6437519.html

不过没有说将哨兵做成服务。下面是我自己测试成功,可以将哨兵做成服务的脚本

(在redis目录下执行,管理员执行)

//删除服务,默认的Redis
redis-server --service-uninstall 
//删除服务,指定的服务名称
redis-server --service-uninstall --service-name RedisService1


//安装redis
redis-server --service-install redis.windows.conf --loglevel verbose

 

//安装其他名称的服务
redis-server --service-install --service-name redisService1 --port 10001



//将Sentinel安装为Windows服务
redis-server --service-install sentinel.conf --sentinel --service-name RedisSentinel --port 26379

 另外,测试哨兵的时候,这个命令也很好用,比 shutdown 方便。

测试利器,  debug sleep 0.1就相当于执行了一条开销为100ms的命令

127.0.0.1:6379> debug sleep 1
OK
(1.00s)

  

debug error

测试利器, debug error,redis直接会返回一个错误应答

127.0.0.1:6379> debug error "test"
(error) test

  

 

 

posted @ 2018-05-10 18:01  留下的枇杷  阅读(2165)  评论(1编辑  收藏  举报