使用docker快速搭建redis哨兵模式

这篇具有很好参考价值的文章主要介绍了使用docker快速搭建redis哨兵模式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

说明

本文主要参考:

https://www.cnblogs.com/coderaniu/p/15352323.html
https://developer.aliyun.com/article/892805

但是这两篇博客均缺失部分关键性细节,所以重新撰文。读者可以结合本文和上述文章一起阅读。

安装步骤

安装docker和docker-compose

此处略

安装redis一主两从

创建docker-compose.yml文件,内容如下:

version: '3.7'
services:
  master:
    image: redis:5.0.14
    container_name: redis-master
    restart: always
    command: redis-server --requirepass redispwd  --appendonly yes
    ports:
      - 6379:6379
    volumes:
      - ./data1:/data
  slave1:
    image: redis:5.0.14
    container_name: redis-slave-1
    restart: always
    command: redis-server --slaveof redis-master 6379  --requirepass redispwd --masterauth redispwd  --appendonly yes
    ports:
      - 6380:6379
    volumes:
      - ./data2:/data
  slave2:
    image: redis:5.0.14
    container_name: redis-slave-2
    restart: always
    command: redis-server --slaveof redis-master 6379  --requirepass redispwd --masterauth redispwd  --appendonly yes
    ports:
      - 6381:6379
    volumes:
      - ./data3:/data

执行命令docker-compose up -d创建三个redis容器。

通过docker ps | grep redis命令可以查看已经启动了三个redis容器,其中master节点容器id为:d0baa2f30fb9

使用docker快速搭建redis哨兵模式
通过docker inspect d0baa2f30fb9查看该容器的IP地址和网络:

使用docker快速搭建redis哨兵模式

安装哨兵

创建sentinel.conf文件,文件内容如下:

port 26379
dir /tmp
sentinel monitor mymaster 172.18.0.2 6379 2
sentinel down-after-milliseconds mymaster 30000
sentinel parallel-syncs mymaster 1
sentinel auth-pass mymaster redispwd
sentinel failover-timeout mymaster 180000
sentinel deny-scripts-reconfig yes

注意第三行的IP地址,和上一步截图中的IP地址一致。

sentinel.conf复制为三个完全一样的文件sentinel1.confsentinel2.confsentinel3.conf

创建另一个docker-compose.yml文件,内容如下:

version: '3.7'
services:
  sentinel1:
    image: redis:5.0.14
    container_name: redis-sentinel-1
    restart: always
    ports:
      - 26379:26379
    command: redis-sentinel /usr/local/etc/redis/sentinel.conf
    volumes:
      - ./sentinel1.conf:/usr/local/etc/redis/sentinel.conf
  sentinel2:
    image: redis:5.0.14
    container_name: redis-sentinel-2
    restart: always
    ports:
    - 26380:26379
    command: redis-sentinel /usr/local/etc/redis/sentinel.conf
    volumes:
      - ./sentinel2.conf:/usr/local/etc/redis/sentinel.conf
  sentinel3:
    image: redis:5.0.14
    container_name: redis-sentinel-3
    ports:
      - 26381:26379
    command: redis-sentinel /usr/local/etc/redis/sentinel.conf
    volumes:
      - ./sentinel3.conf:/usr/local/etc/redis/sentinel.conf
networks:
  default:
    external:
      name: sen-redis_default

这里注意最后一行,和上一步截图中的名称一致

执行命令docker-compose up -d创建三个redis哨兵容器:

使用docker快速搭建redis哨兵模式
查看哨兵的日志:

使用docker快速搭建redis哨兵模式

待定问题

由于使用的是docker的网络,开发机器无法直接连接进行测试。
只能使用docker的方式启动测试代码,并通过docker run --name contianername - -network sen-redis_default imageid启动进行测试。这里需要注意- -network sen-redis_default,和前续提到的网络名称一致。文章来源地址https://www.toymoban.com/news/detail-485973.html

到了这里,关于使用docker快速搭建redis哨兵模式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Redis哨兵集群搭建及RedisTemplate的哨兵模式配置详解

    本文详细介绍了Redis哨兵集群的原理、架构和工作流程,包括哨兵的功能作用、故障恢复机制、选举新的master等内容。同时,提供了哨兵集群架构示意图和实例准备、配置、启动、测试的步骤。此外,还介绍了如何在Spring的RedisTemplate中配置哨兵模式,实现Redis主从集群的自动切换和节点感知。

    2024年02月14日
    浏览(34)
  • 【NOSQL】redis哨兵模式、集群搭建

    主从复制:主从复制是高可用Redis的基础,哨兵和集群都是在主从复制基础上实现高可用的。主从复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复。缺陷:故障恢复无法自动化;写操作无法负载均衡;存储能力受到单机的限制。 哨兵:在主从复

    2024年02月12日
    浏览(46)
  • Redis 哨兵模式的原理及其搭建

    Redis提供了哨兵(Sentinel)机制来实现主从集群的自动故障恢复。 1.1.1.集群结构和作用 哨兵的结构如图: 哨兵的 作用 如下: 监控 :Sentinel 会不断检查您的master和slave是否按预期工作。 自动故障恢复 :如果master故障,Sentinel会将一个slave提升为master。当故障实例恢复后也以新

    2024年02月05日
    浏览(36)
  • redis搭建哨兵集群模式+整合springboot

    Sentinel 哨兵模式是为了弥补主从复制集群中主机宕机后,主备切换的复杂性而演变出来的。哨兵顾名思义,就是用来监控的,主要作用就是监控主从集群,自动切换主备,完成集群故障转移。 ​ Sentinel 哨兵Sentinel 哨兵介绍 ​ Sentinel 哨兵本质上是一个运行在特殊模式下的Re

    2024年01月19日
    浏览(36)
  • docker+redis哨兵模式(一主二从三哨兵)- docker-compose

    一、docker-compose 安装: sudo apt-get update   #安装最新的docke-ce sudo apt-get install  docker-ce   # 下载最新的docker-compose curl -L https://github.com/docker/compose/releases/download/1.25.0-rc4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose   # 修改docker-compose 权限 chmod +x /usr/local/bin/docker-compose

    2024年02月06日
    浏览(31)
  • Redis主从复制、哨兵模式、集群模式的搭建与springboot集成

    Redis有三种模式:分别是主从同步/复制、哨兵模式、Cluster 主从复制 :主从复制是高可用Redis的基础,哨兵和群集都是在主从复制基础上实现高可用的。主从复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单故障恢复。 缺陷:故障恢复无法自动化,写操作无

    2024年02月02日
    浏览(33)
  • Linux Redis主从复制 | 哨兵监控模式 | 集群搭建 | 超详细

    4.1 环境部署 4.2 安装Redis(主从服务器) 4.3 修改Master节点Redis配置文件 (192.168.163.100) 4.4 修改Slave节点Redis配置文件 (192.168.163.110 192.168.163.120) 4.5 验证结果 5.1 哨兵模式的原理 5.2 哨兵模式的作用 5.3哨兵模式的结构 哨兵结构由两部分组成, 哨兵节点 和 数据节点 : 哨兵节点:

    2023年04月14日
    浏览(37)
  • SpringBoot Redis 使用Lettuce和Jedis配置哨兵模式

    在Spring Boot 中配置Redis哨兵模式,可以使用 Lettuce 或 Jedis 配置 Redis 哨兵模式,实现高可用的 Redis 集群。 因为在Spring Boot中 spring-boot-starter-data-redis 已经实现了两种客户端链接方式,我们选择其中一种就可以。 Lettuce 和 Jedis 都是 Redis 客户端库,可以与 Redis 服务器进行通信。它

    2024年02月16日
    浏览(28)
  • linux安装搭建配置docker,mysql,nacos,redis哨兵集群,kafka,elasticsearch,kibana,IK分词器,安装Rabbitmq,安装并配置maven

    目录 搭建docker 1.2安装yum工具  1.3更新阿里镜像源 1.4下载docker 1.5关闭防火墙 1.6启动docker 1.7查看docker版本 1.8配置阿里云镜像 1.8.1 创建文件夹 1.8.2在文件夹内新建一个daemon.json文件 1.8.3重载文件 1.9重启docker 2安装MySQL 3安装nacos 3.1拉取nacos镜像并启动 3.2启动nacos命令 3.3命令敲完

    2024年02月03日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包