centos7下使用docker容器设置redis的主从配置以及哨兵配置

由于昨天的博客已经配置了redis容器,所以配置容器的过程就不再写在本篇里面。各位可以看本人昨天的博客来配置docker容器中的redis容器。
1.先查看启动的容器:docker ps -a
然后进入容器内部:docker exec -it 容器id redis-cli
测试容器:

127.0.0.1:6379> set a test
OK
127.0.0.1:6379> get a
"test"
127.0.0.1:6379> quit

测试成功,退出。

2.查看容器的内网ip地址:[root@localhost ~]# docker inspect redis-slave1
会出现很长的一串东西,我们找到NetworkSettings中的IPAddress,这个就是容器的ip地址。
这边我得到的容器地址是:
redis-master:172.17.0.2:6379
redis-slave1:172.17.0.3:6379
redis-slave2:172.17.0.4:6379
这时候我们再次进入容器内部,查看容器的主从状态,不出意外的话应该3个容器都是master状态,所以我们要进入内部、更改主从状态。
先查看状态:

docker exec -it 6091eaf2475c /bin/bash
redis-cli

3.然后我们更改名字叫master的容器为主机,所以要把名为slave1、slave2的容器的主机改为127.0.1 6379:

docker exec -it redis-slave1 /bin/bash 
redis-cli
SLAVEOF 172.17.0.2 6379
quit
exit

4.同样的操作来2次,即可更改这个两个容器的主机,然后我们查看名为master的主机是否有2个从机了。先进入容器内部:

docker exec -it redis-slave1 /bin/bash 
redis-cli
info replication

如果显示有一行代码如下:connected_slaves:2 则表示我们的配置成功,就开始配置哨兵了。

5.开始配置哨兵
还是要进入3台容器的内部配置,在容器的根目录里创建sentinel.conf文件
文件内容为: sentinel monitor redis-master 172.17.0.2 6379 1

docker exec -it 容器ID /bin/bash
cd / && touch sentinel.conf
vim /sentinel.conf

如果出现:shell bash: vi: command not found
则需要这两个命令都输入,而且要按顺序输入:1、apt-get update 2、apt-get install vim
最后依次启动哨兵,为了方便,我们使用多个窗口。

6.测试
为了查看哨兵是否成功配置,我们把主机关闭:

docker stop 容器ID
然后去其他2个窗口查看剩下的2个容器有没有推选出一个成为主机:
在这里插入图片描述
如果显示了这样的一行,那么我们的哨兵就配置成功了。
具体的理论可以参考这位大神的博客:https://www.cnblogs.com/leeSmall/p/8398401.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值