redis 使用 docker 部署哨兵模式,sentinel 发现不了从机

发布于 2022-09-11 23:35:56 字数 1404 浏览 28 评论 0

如题所述,使用docker来测试部署redis的哨兵模式,哨兵发现不了从机。主从架构是没有问题的,从机能正确的从主节点同步数据,主界面也能看到当前有多少从节点。

启动了一个主节点,两个从节点,没有配置密码,可以正常运行

docker run -d -p  6379:6379 --name_master redis -v /usr/local/redis:/etc/redis redis redis-server /etc/redis/redis.conf
docker run -d -p  6380:6379 --name redis_slave1 -v /usr/local/redis:/etc/redis redis redis-server /etc/redis/redis.conf
docker run -d -p  6381:6379 --name redis_slave1 -v /usr/local/redis:/etc/redis redis redis-server /etc/redis/redis.conf

然后分别进入两个从节点指定主节点的ip和端口

这样就完成了主从架构


然后启动哨兵

docker run -d -p 26379:26379 --name redis_sentinel1 -v /usr/local/redis:/etc/redis redis redis-sentinel /etc/redis/sentinel.conf

配置文件内容如下:

protected-mode no
bind 0.0.0.0
port 26379
daemonize no

pidfile "/var/run/redis-sentinel.pid"
logfile ""
dir "/tmp"

sentinel monitor mymaster 192.168.99.100 6379 1
sentinel down-after-milliseconds mymaster 5000

sentinel failover-timeout mymaster 180000

192.168.99.100 是我的 docker 虚拟机的ip地址,我是windows 10系统。 整个配置就是这样,哨兵可以正常启动,但是在redis_sentinel1中使用命令行执行info命令,查看结果如下:

clipboard.png

只显示一个从节点,而且这个从节点还不是之前启动的两个从节点中的任何一个。

clipboard.png

整了一个晚上都没搞好,哪位大神知道什么地方有问题,不胜感激

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

对不⑦ 2022-09-18 23:35:56

找到原因了,因为集群不仅需要开放redis端口还需要开放集群总线端口,
例如:redis端口为6379,则集群总线端口为16379
redis端口为6380,则集群总线端口为16380

所以在创建docker容器的时候同时开放集群总线端口就好了。如果是在一台机器部署,则可以修改redis端口,例如redis master的端口是6379,则修改从机端口为6380,这样就OK了

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文