前言

简单介绍一下哨兵的部署业务图,非部署步骤。

正文

看一下部署的拓扑图:

然后这里用docker 来部署一下哨兵模式。

搭建一主二从。

version: '3.7'
services:
master:
image: redis
container_name: redis-master
restart: always
command: redis-server --requirepass GaosiDev --masterauth GaosiDev
ports:
- 6388:6379 slave1:
image: redis
container_name: redis-slave-1
restart: always
command: redis-server --slaveof redis-master 6379 --requirepass GaosiDev --masterauth GaosiDev
ports:
- 6381:6379 slave2:
image: redis
container_name: redis-slave-2
restart: always
command: redis-server --slaveof redis-master 6379 --requirepass GaosiDev --masterauth GaosiDev
ports:
- 6382:6379

然后启动一下:

docker-compose up -d

然后直接可以看到:

这里就创建好了。

接下来就创建sentinel:

version: '2'
services:
sentinel1:
image: redis ## 镜像
container_name: redis-sentinel-1
ports:
- "26379:26379"
command: redis-sentinel /usr/local/etc/redis/sentinel.conf
volumes:
- "./sentinel1.conf:/usr/local/etc/redis/sentinel.conf"
sentinel2:
image: redis ## 镜像
container_name: redis-sentinel-2
ports:
- "26380:26379"
command: redis-sentinel /usr/local/etc/redis/sentinel.conf
volumes:
- "./sentinel2.conf:/usr/local/etc/redis/sentinel.conf"
sentinel3:
image: redis ## 镜像
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: redis-sentinel_default ##通过(docker inspect 主节点容器id)来查看,对应 NetworkMode

查看主节点的信息,docker inspect:

然后进行配置sentinel1.conf、sentinel2.conf、sentinel3.conf 都一样。

填写:

port 26379
dir /tmp
#172.21.0.4填写自己的主节点ip
sentinel monitor mymaster 172.21.0.4 6379 2
sentinel auth-pass mymaster GaosiDev
sentinel down-after-milliseconds mymaster 30000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 10000
sentinel deny-scripts-reconfig yes

同样是docker-compose up -d

查看:

出现错误了,这个其实很好理解,我们加入了redis-sentinel_default网络,然后这个网络不存在。

查看一下redis 主节点网络是什么。

然后把redis-sentinel_default 改成redis-docker_default。

然后重新启动:

然后使用sentinel看一下监控状态:

然后使用:

这里发现一个问题,那就是怎么没有重节点,看来是出现一些问题了。

这是正常的呀。

原来是刚才填错地址了。。。

然后改一下从新启动。

查看一下从节点信息:

查看集群信息:

这样就成功了。

下一节本来是介绍集群的,但是现在用不上,所以就不整理了。

redis 简单整理——哨兵部署业务图[二十九]的更多相关文章

  1. 【Android Studio安装部署系列】二十九、Android Studio安装本地插件(以国际化方法插件AndroidLocalizationer为例)

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 实际开发中,需要用到插件,用来提高效率,这里就以生成国际化strings.xml的插件AndroidLocalizationer为例 ...

  2. Web 开发人员和设计师必读文章推荐【系列二十九】

    <Web 前端开发精华文章推荐>2014年第8期(总第29期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...

  3. mysql进阶(二十九)常用函数

    mysql进阶(二十九)常用函数 一.数学函数 ABS(x) 返回x的绝对值 BIN(x) 返回x的二进制(OCT返回八进制,HEX返回十六进制) CEILING(x) 返回大于x的最小整数值 EXP ...

  4. 使用Typescript重构axios(二十九)——添加baseURL

    0. 系列文章 1.使用Typescript重构axios(一)--写在最前面 2.使用Typescript重构axios(二)--项目起手,跑通流程 3.使用Typescript重构axios(三) ...

  5. Bootstrap <基础二十九>面板(Panels)

    Bootstrap 面板(Panels).面板组件用于把 DOM 组件插入到一个盒子中.创建一个基本的面板,只需要向 <div> 元素添加 class .panel 和 class .pa ...

  6. WCF技术剖析之二十九:换种不同的方式调用WCF服务[提供源代码下载]

    原文:WCF技术剖析之二十九:换种不同的方式调用WCF服务[提供源代码下载] 我们有两种典型的WCF调用方式:通过SvcUtil.exe(或者添加Web引用)导入发布的服务元数据生成服务代理相关的代码 ...

  7. Bootstrap入门(二十九)JS插件6:弹出框

    Bootstrap入门(二十九)JS插件6:弹出框 加入小覆盖的内容,像在iPad上,用于存放非主要信息 弹出框是依赖于工具提示插件的,那它也和工具提示是一样的,是需要初始化才能够使用的 首先我们引入 ...

  8. JAVA之旅(二十九)——文件递归,File结束练习,Properties,Properties存取配置文件,load,Properties的小练习

    JAVA之旅(二十九)--文件递归,File结束练习,Properties,Properties存取配置文件,load,Properties的小练习 我们继续学习File 一.文件递归 我们可以来实现 ...

  9. Django笔记二十九之中间件介绍

    本文首发于公众号:Hunter后端 原文链接:Django笔记二十九之中间件介绍 这一节介绍一下 Django 的中间件. 关于中间件,官方文档的解释为:中间件是一个嵌入 Django 系统的 req ...

  10. VMwarevSphere 服务器虚拟化之二十九 桌面虚拟化之安装View副本服务器

    VMwarevSphere 服务器虚拟化之二十九  桌面虚拟化之安装View副本服务器 VMware View中高可用性可是一个必须要考虑的问题.在整个虚拟桌面环境中View Connection S ...

随机推荐

  1. Jmeter 如何连接mysql数据库?

    1 首先安装jmeter jdbc 插件 JDBC驱动包下载教程:https://blog.csdn.net/qq_50896685/article/details/129154801 2 安装好后将 ...

  2. 电子设备内幕:RAM和ROM小百科

    大家好,我是知微. 在智能手机出现之前,大家对RAM和ROM这两个词都没什么概念.如今很多手机在宣传的时候,都会标明有多大的RAM(运行内存)和ROM(存储空间),因为这在很大程度上影响手机的使用流畅 ...

  3. 16. Class字节码结构

    1. 相关概念 1.1字节码文件的跨平台性 Java 语言是跨平台的(write once, run anywhere) 当 Java 源代码成功编译成字节码后,如果想在不同的平台上面运行, 则无须再 ...

  4. Zabbix“专家坐诊”第186期问答汇总

    问题一 Q:这两个键值vm.memory.size[pused]和vm.memory.util监控内存使用率有什么区别,使用那个监控使用率更好,支持windows系统和Linux系统么,对agent端 ...

  5. Review Book for GEE(Graduate Entrance Examination)

    English is made up of phrases and idioms, in the case of both written and spoken usage. When learnin ...

  6. DiagnosticSource DiagnosticListener 无侵入式分布式跟踪

    ASP.NET Core 中的框架中发出大量诊断事件,包括当前请求进入请求完成事件,HttpClient发出收到与响应,EFCore查询等等. 我们可以利用DiagnosticListener来选择性 ...

  7. JNI中AttachCurrentThread和DetachCurrentThread的问题

    在<Java与CC++交互JNI编程>中有讲过AttachCurrentThread和DetachCurrentThread的使用. 我们知道在jni中我们可以使用pthread或者std ...

  8. BugkuCTF-游戏过关

    首先将exe文件下载下来,打开看一下: 玩游戏 n是灯的序列号,m是灯的状态 如果第n盏灯的m是1,它就开,如果不是,它就关 起初所有的灯都关上了 现在你可以输入n来改变它的状态 但是你应该注意一件事 ...

  9. 记录--uni-app中安卓包检查更新、新版本下载、下载进度条显示功能实现

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 需求描述 如果想要做一个app的话,可以有很多种选择方案,uni-app是其中的一个性价比高一些(坑多一些)的方案.本文记录一下,uni- ...

  10. Python利用pandas拆分大型的csv文件

    当将大型CSV文件拆分成较小的文件时,您可以使用Python的Pandas库来处理 导入必要的库 import pandas as pd 定义拆分函数 当定义拆分函数时,我们将在以下步骤中处理CSV文 ...