我的名片

网名:观海听潮

职业:PHP开发工程师

现居:山东省-青岛市

Email:1256699215@qq.com

当前访客

来自美国弗吉尼亚州的朋友,您好!

感谢您访问观海听潮 · 博客网站,祝您生活愉快!

您现在的位置是:首页  > IT文档  > redis  > linux linux

观海听潮

redis哨兵模式部署(windows,linux)

摘要
linux环境下部署redis哨兵模式,实现redis中断后能自动更换主服务,避免因为连接不上redis出现错误。

1、部署主从复制模式,windows的已经讲过了,讲一下linux的主从复制。

我的redis.conf目录: /usr/local/redis/etc/redis.conf

复制redis.conf到/usr/local/redis目录下面,复制3份,分别是redis7269.conf,redis7270.conf,redis7271conf

2、修改配置文件:

公共修改:

port 端口号

bind 127.0.0.1 因为是在一个服务器上,这个ip不用修改

daemonize yes 默认后台运行

pidfile /var/run/redis_端口号.pid

logfile "端口号.log"

dbfilename dump端口号.rdb

注意:如果设置了密码:主从都要有requirepass  和  masterauth。因为哨兵模式下,主服务器会变成从服务器。

7270和7271修改:

slaveof 127.0.0.1 7269

3、启动服务:

进入redis目录,执行命令:

bin/redis-server redis7269.conf  bin/redis-server redis7270.conf  bin/redis-server redis7271.conf,

如果出现错误,是配置文件出错,需要重新配置。

注意每次修改配置文件,要先停止服务,

bin/redis-cli -h 127.0.0.1 -p 7269 shutdown或者在客户端口:执行shutdown。

然后在重新启动服务,否则修改的配置是不会执行的。这个坑弄了我好长时间。

4、检查是否启动成功:命令:ps -ef | grep redis

5、查看主从关系是否配置成功,执行命令:

bin/redis-cli -p 7269

auth 密码

info replication

如果 主服务器connected——slaves:0,说明主从关系配置失败,要检查从服务器日志。就是之前公告配置的端口号.log。

查看错误信息,修改配置,关掉服务,重新启动。

6、//主从复制配置好以后,再配置哨兵模式

在/usr/local/redis  下新增sentinel27269.conf sentinel27270.conf  sentinel27271.conf三个文件

文件内容:

# Generated by CONFIG REWRITE

daemonize yes//默认后台启动

port 27269//端口号

dir "/tmp"

sentinel myid 2a616f0e6bbc46030046c115e2371d2a7958c25e

sentinel monitor mymaster 127.0.0.1 7269 2 //这个是一样的

sentinel down-after-milliseconds mymaster 3000

sentinel failover-timeout mymaster 10000

sentinel auth-pass mymaster 密码   //如果设置了密码,这块是要写的

具体其他配置的含义,可以自己去网上查找。

注意:密码设置好了,就不要再修改了,还有就是sentinel.conf里的配置尽量能确定好,因为sentinel.conf启动后就没办法再改配置了。

反正我是没找到怎么去中断sentinel.conf的运行。

然后就是启动sentinel.conf了。

命令:bin/redis-sentinel sentinel27269.conf bin/redis-sentinel sentinel27270.conf bin/redis-sentinel sentinel27271.conf

检查是否启动成功:命令:ps -ef | grep redis

7、测试

在7269客户端,执行shutdown,这样7269就中断啦。

然后在7270客户端,执行 info replication命令。

这个截图是7269重新启动后的截图,如果7269没有重新启动,是没有:

并且连接数是1。

这个结果就说明在哨兵模式下,当主服务7269中断后,会随机在子服务中来选择一个作为主服务器,剩余的那个子服务也会重新连接新的子服务来当主服务。然后在重新启动7269后,7269也不会重新变成主服务,而是7270的子服务。

如果没有出现以上信息,需要自行去看日志解决。

这个问题是我配置时出现的问题,具体原因是redis7269.conf没有配置密码masterauth

参考文档:https://www.cnblogs.com/qq78292959/archive/2013/09/21/3331032.html


or 讨厌 (0)
微博logo QQ空间logo QQlogo 豆瓣logo 人人logo 百度贴吧logo 有道云笔记logo

文章评论

表情表情
×
图片图片

评论列表