redis 主从配置文件

下载redis镜像

镜像中心

推荐使用国内daocloud镜像
镜像地址:daocloud.io/library/

拉取redis镜像

docker pull daocloud.io/library/redis:latest

查看拉取的镜像

docker images

搭建redis集群

运行redis镜像

首先使用docker启动3个redis容器服务,分别使用到6379、6380、6381端口

docker run --name redis-6379 -p 6379:6379 -d daocloud.io/library/redis
docker run --name redis-6380 -p 6380:6379 -d daocloud.io/library/redis
docker run --name redis-6381 -p 6381:6379 -d daocloud.io/library/redis

查看运行

docker ps

 

 

配置redis集群

使用如下命令查看容器内网的ip地址等信息

docker inspect containerid

 

3个redis的内网ip地址为:

redis-6379:172.17.0.2:6379
redis-6380:172.17.0.3:6379
redis-6381:172.17.0.4:6379

进入docker容器内部,查看当前redis角色(主还是从)

 

可以看到当前3台redis都是master角色,使用redis-cli命令修改redis-6380、redis-6381的主机为172.17.0.2:6379

SLAVEOF host port // SLAVEOF 172.17.0.2 6379

查看redis-6379是否已经拥有2个从机:

命令为: redis-cli info

配置Sentinel哨兵

Redis 的 Sentinel 系统用于管理多个 Redis 服务器(instance), 该系统执行以下三个任务:

监控(Monitoring): Sentinel 会不断地检查你的主服务器和从服务器是否运作正常。
提醒(Notification): 当被监控的某个 Redis 服务器出现问题时, Sentinel 可以通过 API 向管理员或者其他应用程序发送通知。
自动故障迁移(Automatic failover): 当一个主服务器不能正常工作时, Sentinel 会开始一次自动故障迁移操作, 它会将失效主服务器的其中一个从服务器升级为新的主服务器, 并让失效主服务器的其他从服务器改为复制新的主服务器; 当客户端试图连接失效的主服务器时, 集群也会向客户端返回新主服务器的地址, 使得集群可以使用新主服务器代替失效服务器。

具体介绍可参考:http://redisdoc.com/topic/sentinel.html

接下来直接进入3台redis容器内部进行配置

docker exec -ti 容器id /bin/bash

进入根目录创建sentinel.conf文件

cd / && touch sentinel.conf

修改文件内容为:

sentinel monitor mymaster 172.17.0.2 6379 1

最后,启动Redis哨兵:

使用 redis-sentinel /sentinel.conf 启动Redis哨兵监控
使用 ps –ef |grep redis 命令,可以看到redis-server和redis-sentinel正在运行

至此,Sentinel哨兵配置完毕。

测试验证

首先查看哨兵监控情况

 

然后尝试关闭主机

 

再查看剩余2个从机,这里会自动选举产生新的主机

 

然后,我们再次将刚才停止的主机启动起来,发现启动后其自动成为从机

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值