docker-搭建一主两备三哨兵redis集群

一 目标

搭建一主两备三哨兵,高可用集群,实现热处理的容灾方案

概述:

  共需要6个redis容器,其中1个master,2个slave,3个sential

使用的端口如下:

  master:6701

  slave1:6702  slave2:6703

  sentinel1:22001  sentinel2:22002  sentinel:22003

二 步骤

1. 搭建一主两从的集群

可按如下步骤搭建 (https://www.cnblogs.com/qxAndWorld/p/17785208.html)

结果如下,一主两从集群运行

 

2. 准备三份sentinel.conf

2.1 修改配置

2.2.1 准备三份配置文件

2.2.2 分别修改配置,配置各哨兵的ip,端口,监听的master等

 

  示例配置:

 

sentinel monitor mymaster 192.168.65.100 6701 2
sentinel announce-ip 192.168.65.100
sentinel announce-port 22001

  配置说明:

sentinel monitor: sentinel监控的master节点的名称、地址和端口号,最后一个quorums表示至少需要多少个sentinel判定master节点故障才进行故障转移。一般配置为sentinel数量/2+1
sentinel announce-ip: sentinel发布的ip
sentinel announce-port:  sentinel发布的port--使用对外开放的端口

  

3.启动sentinel

-- 启动哨兵1
docker run --name sentinel-1 \ -v /docker/redis/sentinel1.conf:/etc/redis/sentinel.conf \ -dp 22001:26379 redis:7.0 \ redis-sentinel /etc/redis/sentinel.conf

-- 启动哨兵2
docker run --name sentinel-2 \ -v /docker/redis/sentinel2.conf:/etc/redis/sentinel.conf \ -dp 22002:26379 redis:7.0 \ redis-sentinel /etc/redis/sentinel.conf

-- 启动哨兵3
docker run --name sentinel-3 \ -v /docker/redis/sentinel3.conf:/etc/redis/sentinel.conf \ -dp 22003:26379 redis:7.0 \ redis-sentinel /etc/redis/sentinel.conf

 

 

4. 查看关系

docker exec -it sentinel-1 \
> redis-cli -h 192.168.65.100 -p 22001 info sentinel

 可见master是192.168.65.100:6701, slave有两个, sentinel有三个,说明搭建成功

 

5. 容灾测试

停掉当前master【redis1】, 发现重新选举出了新的master【redis2】

 

 

posted @ 2023-10-25 09:44  qx和世界  阅读(180)  评论(0编辑  收藏  举报