文章目录
1.原文链接
Docker部署Redis集群----第六节(docker-redis-sentinel集群的机制)
Docker部署Redis集群----第七节(docker-redis-sentinel集群实现篇)
Docker部署Redis集群----第八节(docker-redis哨兵集群原理篇)
2.构建sentinel集群
主从节点参考上一篇文章【Redis】Docker下部署Redis集群----主从复制
容器名称 | 容器IP地址 | 映射端口号 |
---|---|---|
redis-master-6382 | 172.60.0.2 | 6382:6379 |
redis-slave-6383 | 172.60.0.3 | 6383:6379 |
redis-slave-6384 | 172.60.0.4 | 6384:6379 |
redis-slave-6385 | 172.60.0.5 | 6385:6379 |
redis-sentinel-22536 | 172.60.0.6 | 22536:26379 |
redis-sentinel-22537 | 172.60.0.7 | 22537:26379 |
redis-sentinel-22538 | 172.60.0.8 | 22538:26379 |
#哨兵节点
docker run -itd --name redis-sentinel-22536 \
--net mynetwork01 -p 22536:26379 --ip 172.60.0.6 mycentos_redis
#哨兵节点
docker run -itd --name redis-sentinel-22537 \
--net mynetwork01 -p 22537:26379 --ip 172.60.0.7 mycentos_redis
#哨兵节点
docker run -itd --name redis-sentinel-22538 \
--net mynetwork01 -p 22538:26379 --ip 172.60.0.8 mycentos_redis
3.进入sentinel节点修改三处配置文件
#进入容器
docker exec -it redis-sentinel-22536 bash
docker exec -it redis-sentinel-22537 bash
docker exec -it redis-sentinel-22538 bash
#创建配置文件
mkdir myredis && vim /myredis/redis-sentinel.conf
#修改三处配置
bind 0.0.0.0
protected-mode no
#随便找了下图中出现Sentinel最多的地方加入这行配置
sentinel monitor mymaster 172.60.0.2 6379 2
4.使用守护进程启动sentinel并指定其日志目录
#修改配置文件
daemonize yes
logfile "/var/log/sentinel_log.log"
5.启动三台sentinel节点
redis-sentinel /myredis/redis-sentinel.conf &
启动节点后可查看日志发现Sentinel集群已经配置成功
6.主机挂掉,哨兵集群在从机中选出新的主机,且原主机变为现主机的从机
#停了注解
docker stop redis-master-6382
#查看其中一个哨兵日志
cat /var/log/sentinel_log.log
#进入新的主机查看主从关系
docker exec -it redis-slave-6383 bash
redis-cli
info replication
版权声明:本文为qq_46514118原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。