docker搭建redis主从复制(一主二从)——哨兵模式

1、首先开启三台虚拟机,分别安装dokcer

2、拉取镜像

docker pull redis

3、查看镜像

4、配置文件修改(提前准备好配置文件)

5、启动容器(三台机器分别执行)

docker run -d -p 6379:6379 --name redis --privileged=true -v /usr/local/redis/data:/data -v /usr/local/redis/redis.conf:/etc/redis/redis.conf redis redis-server /etc/redis/redis.conf

参数说明:

-v /usr/local/redis/data:/data ## 将容器里的数据挂载到宿主机、usr/local/redis/data目录下

-v /usr/local/redis/redis.conf:/etc/redis/redis.conf ## 容器里的redis配置文件与/usr/local/redis/redis.conf下的配置文件互相通信,(前提准备好redis.conf),这样每次修改不用进入到容器里

redis-server /etc/redis/redis.conf  ## 用指定容器里的目前启动redis

6、查看容器

docker ps

redis已经启动 

7、进入容器

docker exec -it redis /bin/bash

7.1 登录容器

redis-cli

7.2 输入密码

 7.3 验证是否成功

至此服务已正常启动 

8、主从复制配置

8.1 主节点配置

8.2 从节点配置(其余一个节点一致)

 9、重启容器服务

docker restart redis

10、信息查看

10.1 主节点信息

 10.2 从节点信息

 

 11、哨兵模式配置

11.1 下载配置文件

wget http://download.redis.io/redis-stable/sentinel.conf

 11.2 启动哨兵模式容器

docker run -d --privileged=true --name sentinel -v /usr/local/redis/sentinel.conf/:/usr/local/etc/redis/sentinel.conf -p 26379:26379 redis:latest redis-sentinel /usr/local/etc/redis/sentinel.conf

11.3 编辑配置文件(3台机器一样,可通过远程复制命令进行复制)

scp sentinel.conf 192.168.111.146:/usr/local/redis/

 11.4 故障演示,停掉主节点redis服务

docker stop redis

此时已经看到192.168.111.147成为主节点

 

 11.5 重新启动主节点

docker restart redis

 147主节点的从节点已变成两个,以前的主节点并不会重新夺回以前的主节点配置,而是成为新的主节点的从节点

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用Docker搭建Redis主从复制,你需要按照以下步骤进行操作: 1. 首先,确保你已经安装了Docker。如果没有,请先安装Docker。 2. 创建一个用于节点的Redis容器。在终端中运行以下命令: ``` docker run -d --name redis-master -p 6379:6379 redis ``` 这将在后台运行一个名为redis-master的Redis容器,并将其映射到本地的6379端口。 3. 创建两个用于从节点的Redis容器。在终端中运行以下命令: ``` docker run -d --name redis-slave1 redis docker run -d --name redis-slave2 redis ``` 这将在后台分别运行两个名为redis-slave1和redis-slave2的Redis容器。 4. 获取节点的IP地址。运行以下命令以获取节点容器的IP地址: ``` docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' redis-master ``` 记下这个IP地址,稍后将在配置从节点时使用。 5. 配置从节点连接到节点。首先,进入第一个从节点容器: ``` docker exec -it redis-slave1 redis-cli ``` 然后,运行以下命令设置从节点连接到节点: ``` slaveof <节点IP地址> 6379 ``` 将`<节点IP地址>`替换为步骤4中获取的节点IP地址。 6. 重复步骤5,配置第二个从节点连接到节点: ``` docker exec -it redis-slave2 redis-cli slaveof <节点IP地址> 6379 ``` 7. 现在,你已经成功配置了Redis主从复制。你可以通过连接到任何一个从节点,并在其中执行命令来验证复制是否正常工作。例如,可以在从节点上运行`INFO replication`命令来检查复制状态。 请注意,这只是一个基本的设置示例。在实际生产环境中,你可能还需要进行更多的配置和优化。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值