文件结构

1. redis-sentinel

  1. 1-1. docker-compose.yml

1-2. sentinel

  1. 1-2-1 docker-compose.yml
  2. 1-2-2 sentinel.conf
  3. 1-2-3 sentinel1.conf
  4. 1-2-4 sentinel2.conf
  5. 1-2-5 sentinel3.conf

1、docker-compose 文件实现一主两从

编写docker-compose.yml文件,内容如下:

  1. version: '3.7'
  2. services:
  3. master:
  4. image: redis
  5. container_name: redis-master
  6. restart: always
  7. command: redis-server --requirepass GaosiDev --masterauth GaosiDev
  8. ports:
  9. - 6380:6379
  10. slave1:
  11. image: redis
  12. container_name: redis-slave-1
  13. restart: always
  14. command: redis-server --slaveof redis-master 6379 --requirepass GaosiDev --masterauth GaosiDev
  15. ports:
  16. - 6381:6379
  17. slave2:
  18. image: redis
  19. container_name: redis-slave-2
  20. restart: always
  21. command: redis-server --slaveof redis-master 6379 --requirepass GaosiDev --masterauth GaosiDev
  22. ports:
  23. - 6382:6379

docker-compose 文件实现 sentinel

  1. version: '2'
  2. services:
  3. sentinel1:
  4. image: redis ## 镜像
  5. container_name: redis-sentinel-1
  6. ports:
  7. - "26379:26379"
  8. command: redis-sentinel /usr/local/etc/redis/sentinel.conf
  9. volumes:
  10. - "./sentinel1.conf:/usr/local/etc/redis/sentinel.conf"
  11. sentinel2:
  12. image: redis ## 镜像
  13. container_name: redis-sentinel-2
  14. ports:
  15. - "26380:26379"
  16. command: redis-sentinel /usr/local/etc/redis/sentinel.conf
  17. volumes:
  18. - "./sentinel2.conf:/usr/local/etc/redis/sentinel.conf"
  19. sentinel3:
  20. image: redis ## 镜像
  21. container_name: redis-sentinel-3
  22. ports:
  23. - "26381:26379"
  24. command: redis-sentinel /usr/local/etc/redis/sentinel.conf
  25. volumes:
  26. - ./sentinel3.conf:/usr/local/etc/redis/sentinel.conf
  27. networks:
  28. default:
  29. external:
  30. name: redis-sentinel_default ##通过(docker inspect 主节点容器id)来查看,对应 NetworkMode

编辑 sentinel.conf 文件

  1. port 26379
  2. dir /tmp
  3. #172.18.0.3填写自己的主节点ip,通过(docker inspect 主节点容器id)来查看,对应 IPAddress
  4. sentinel monitor mymaster 172.17.0.4 6379 2
  5. sentinel auth-pass mymaster GaosiDev
  6. sentinel down-after-milliseconds mymaster 30000
  7. sentinel parallel-syncs mymaster 1
  8. sentinel failover-timeout mymaster 10000
  9. sentinel deny-scripts-reconfig yes

参考链接

https://www.cnblogs.com/ruiyeclub/p/12355073.html

https://www.cnblogs.com/JulianHuang/p/12650721.html

docker 搭建 redis 集群(哨兵模式)的更多相关文章

  1. docker搭建redis集群

    一.简介 docker作为一个容器技术,在搭建资源隔离性服务上具有很大的优势,在一台服务器上可以启动多个docker容器,感觉每个在容器里面部署的服务就像是部署在不同的服务器上.此次基于docker以 ...

  2. docker搭建redis集群和Sentinel,实现故障转移

    0.引言 公司开发需要用到redis,虽然有运维自动搭建,还是记录下如何搭建redis集群和Sentinel. 采用的是vagrant虚拟机+docker的方式进行搭建. 搭建思路: 首先是借鉴下其他 ...

  3. 5分钟实现用docker搭建Redis集群模式和哨兵模式

    如果让你为开发.测试环境分别搭一套哨兵和集群模式的redis,你最快需要多久,或许你需要一天?2小时?事实是可以更短. 是的,你已经猜到了,用docker部署,真的只需要十几分钟. 一.准备工作 拉取 ...

  4. 利用Docker搭建Redis集群

    Redis集群搭建 运行Redis镜像 分别使用以下命令启动3个Redis docker run --name redis-6379 -p 6379:6379 -d hub.c.163.com/lib ...

  5. Docker:Docker搭建Redis集群(6)

    国外的公有云实在是太慢了,经常time out 这里搜集几个国内出名的: hub.c.163.com (网易:https://c.163.com/hub#/m/home/) dev.aliyun.co ...

  6. php操作redis集群哨兵模式

    前段时间项目里正好用到了redis的集群哨兵部署,因为此前并无了解过,所以一脸懵逼啊,查阅了几篇资料,特此综合总结一下,作为记录. 写在前沿:随着项目的扩张,对redis的依赖也越来越大,为了增强re ...

  7. windows系统上搭建redis集群哨兵及主从复制

    搭建master 修改redis配置redis.windows.conf: 修改监听端口:  port 26379 修改绑定IP: bind 127.0.0.1 添加redis日志:logfile & ...

  8. 使用docker搭建redis集群

    创建网卡 docker network create redis --subnet 172.20.0.0/ --gateway 172.20.0.1 通过脚本创建6个redis配置 for i in ...

  9. Centos7 安装redis集群哨兵模式

    https://blog.csdn.net/lihongtai/article/details/82826809

随机推荐

  1. 国产龙芯3A3000处理器评测:与英特尔差距明显

    国产龙芯3A3000处理器评测:与英特尔差距明显 国产龙芯3A3000处理器评测:与英特尔差距明显 新浪财经APP缩小字体放大字体收藏微博微信分享579 新酷产品第一时间免费试玩,还有众多优质达人分享 ...

  2. 064.Python开发虚拟环境

    在使用 Python 开发的过程中,工程一多,难免会碰到不同的工程依赖不同版本的库的问题:亦或者是在开发过程中不想让物理环境里充斥各种各样的库,引发未来的依赖灾难.此时,我们需要对于不同的工程使用不同 ...

  3. Python 递归函数详解

    递归函数的概念: 直接或间接的调用自身的函数,称为递归函数. 每调用一次自身,相当于复制一份该函数,只不过参数有变化,参数的变化,就是重要的结束条件 下面是一个递归函数的实例: #coding=utf ...

  4. 关于RabbitMQ的一些问题总结

    消息中间件在工作中一般都不会采用单机模式的,该篇其实是对mq的高可用等等常见问题做一些归纳. 消息队列的高可用 普通集群与镜像集群模式,此处不做深究,另开一篇专门讲述此处 如何保证消息不被重复消费 保 ...

  5. xxl-job使用遇到的问题(二)

    xxl-job使用遇到的问题(二) 关联阅读 xxl-job使用遇到的问题(一) 1.问题现象 最近有个老定时任务迁移到xxl-job的时候,遇到一个小问题.虽然很快解决,但是还是有必要记录一下~ j ...

  6. Android开发Activity全局切换的动画效果

    切换动画 slide_left_in.xml 从左边进 --> 退出的时候使用 <?xml version="1.0" encoding="utf-8&quo ...

  7. 将 maven repo 部署到 Gitlab

    为什么要将 maven repo 部署到 Gitlab 将 Maven artifacts 放在对应的项目仓库下,而不是专门再去建一个 Maven 仓库.这么做使用起来更方便,更易于管理. 借助 Gi ...

  8. 韩小韩 API接口

    官方网址:https://api.vvhan.com/ 天气API接口: https://api.vvhan.com/api/weather Bing每日图片API接口: https://api.vv ...

  9. Java中如何将函数名作为参数传递

    采用lambda表达式: import java.util.function.Function; class Test { public static void main(String... args ...

  10. 自动驾驶传感器比较:激光雷达(LiDAR) vs. 雷达(RADAR)

    自动驾驶传感器比较:激光雷达(LiDAR) vs. 雷达(RADAR) 据麦姆斯咨询报道,2032年全球范围内自动驾驶汽车的产量将高达2310万辆,未来该市场的复合年增长率(CAGR)高达58%.届时 ...