1. 创建哨兵的配置文件

先在 /etc 目录创建一个sentinel目录作为哨兵的配置信息存放目录,并将Redis安装目录的sentinel.conf文件(我这边路径是 /usr/local/redis-3.2.8/sentinel.conf)复制到 /etc/sentinel目录,并重命名为26379.conf,26379是哨兵的默认端口,如下图。

2. 哨兵的配置

2.1 进入 /var 目录使用 mkdir -p sentinel/26379 指令创建一个哨兵的工作目录,存放哨兵工作相关的信息,如下图。

2.2 打开/etc/sentinel/26379.conf进行配置,哨兵的配置主要有三处,①bind 本机的IP地址;②哨兵的工作目录;③sentinel monitor的信息,如下图。

注意:这是其它三个要改名字的地方。

2.3 成功启动哨兵监控,如下图。

3. 哨兵集群的配置

3.1 两台主机同样进行第一点和第二点的操作即可,唯一需要注意的是在bind时,bind自身的主机IP地址如下图。

3.2 第二台哨兵配置完之后,同样运行redis-sentinel /etc/sentinel/26379.conf,得到如下图输出结果。

3.3 同样配置第三台哨兵即可构成哨兵集群。

3.4 此时,不能关闭哨兵会话,新建一个终端窗口或会话,使用 redis-cli -h 192.168.56.101 -p 26379 连接本机哨兵,查看哨兵所监控的相关信息,如下图。

4. 主备切换

4.1 在运行哨兵情况下,重新开启一个终端或会话,使用 ps -ef | grep redis 指令得到Redis进程ID,然后使用 kill -9 ID 将Redis master节点杀掉,模拟生产环境中的系统崩溃,如下图。

4.2 先查看被杀的master所在主机的哨兵信息,如下图。

4.3 被杀的master的slave的哨兵日志信息,如下图。

4.4 Redis集群另外一个master的哨兵的日志信息,如下图。

5. 故障恢复

5.1 将被杀的master重新启动后,需要先删除 /var/run 目录下的redis_6379id文件,否则直接启动会报错,如下图。

5.2 进入 /var/run 目录,删除 redis_6379.pid 文件,如下图。

5.3 重启Redis服务,分别查看三个哨兵的日志信息,如下图。

6. 哨兵进程设置

6.1 实际中,哨兵进程应该作为后台进程启动,而不是占着一个终端,并且日志文件应该输出到指定文件(我这边指定日志文件为 /var/sentinel/26379.log)中,而不是输出到终端,在 /etc/sentinel/26379.conf 文件开头设置即可,如下图。

6.2 此时启动哨兵,哨兵就作为后台进程运行,不会占着终端,而且log文件中保存了相应内容,如下图。

在三台Redis节点上部署哨兵集群以及主备切换、故障恢复的容灾演练中哨兵各自的日志信息、状态查看分析相关推荐

  1. 现场工程师出马:VMware+LVM卷快速在windows Server上部署Kafka集群

    最近遇到的疑难现场问题层出不穷,本次遭遇的挑战是在4台windows Server 服务器上部署Kafka集群.这是一种比较少见的操作,原因是有些依赖的驱动对虚拟化支持不好,只能运行在实体win机上. ...

  2. DM8守护集群(主备)数据库补丁升级操作

    概述 本文介绍在测试环境对DM8守护集群数据库补丁升级操作相关内容. 一.升级集群介绍 1.1升级集群架构说明 本次升级守护集群架构如下图,有A.B.C三台机器,分别是主库.备库和监视器. 1.2集群 ...

  3. keepalived高可用lvs集群,主/备和主/主模型

    利用keepalived高可用lvs集群,主/备和主/主: vrrp_script高可用双主nginx: keepalived主备:lvs-dr工作模型 网络搭建: 在前端2台调度器: DR1:172 ...

  4. linux上部署K8S集群

    部署K8S集群 服务器硬件要求:三台虚拟机服务器,操作系统都为centos: ​ 硬盘最低配置:内存2GB,CPU2核,硬盘30GB. 准备环境 master 192.168.200.110 node ...

  5. 猿创征文| 在 OCP 上部署 OceanBase 集群

    前言 OceanBase是由蚂蚁集团完全自主研发的国产原生分布式数据库 ,始创于2010年.已连续9年平稳支撑双11, 创新推出"三地五中心"城市级容灾新标准 ,是一个在TPC-C ...

  6. linux上部署hadoop集群 HA-QJM篇

    环境 基础篇需要4台机器(一台namenode,三台datanode); HA篇需要8台机器:两台namenode(一台作active nn,另一台作standby nn),三台datanode,三台 ...

  7. 在 Azure 上部署 Kubernetes 集群

    导读 在实验.演示的时候,或者是生产过程中,我经常会需要运行一些 Docker 负载.虽然这在本地计算机上十分容易,但是当你要在云端运行的时候就有点困难了.相比于本地运行,在云端运行真的太复杂了.我尝 ...

  8. Hadoop上部署Spark集群

    1.基础环境配置 安装spark 将spark3.3上传到linux 将spark文件解压到/usr/local文件夹下 tar -zxvf spark-3.3.0-bin-hadoop3.tgz - ...

  9. 达梦8数据库dm8集群部署之DW集群Linux(主备自切)

    安装前准备 集群规划 A机器 B机器 业务IP 10.16.216.80(217没有配置暂时使用216网段) 10.16.216.81 心跳IP 10.16.217.10 10.16.217.11 实 ...

最新文章

  1. 【视觉SLAM14讲】ch3课后题答案
  2. 国家五部委联合发布“AI标准顶层设计”:2021年明确、2023年初步建成
  3. HDU-1025 Constructing Roads In JGShining's Kingdom
  4. [FreeBSD] kvm下安装virtio驱动的freebsd
  5. Spring boot部署工程
  6. spark.mllib:NaiveBayes
  7. 【Alpha阶段汇总】成果展示与体验总结
  8. 字符串hash(一)
  9. WPF 中的设备无关单位
  10. nodejs命令行执行程序_在NodeJS中编写命令行应用程序
  11. 谈Servlet与JSP
  12. mjpeg解码到rgb
  13. centos7查看python安装路径
  14. 想赚钱?先把底层逻辑搞清楚
  15. 数据分析需要权衡哪些要素?
  16. python不调包实现sobel_python利用百度云接口实现车牌识别的示例
  17. 【语音处理】基于matlab音频信号FIR+IIR(高通+低通+带通)滤波器频谱分析【含Matlab源码 1732期】
  18. 贝壳找房原生爬虫租房分析
  19. 出中的意思是什么_从里出来是什么意思
  20. 解决苹果电脑OS X 10.8.5 安装双系统,遇到的各种坑

热门文章

  1. 【转载】ABAP自定义长文本的处理
  2. SAP更新数据表的程序执行需要SE38后执行
  3. 定义定价用途的条件类型(Condition Types)
  4. 计算出前一期间XXXX物料的期末结算
  5. sap 事务代码跳过权限检查
  6. 哪些医药企业使用SAP系统呢?
  7. 汇总内表数据:at end of方法和collect方法
  8. SAP SD模块几个透明表
  9. ALV中调用Excel inplace时没能传递数据实例解决
  10. OO实现ALV TABLE 十:ALV的页眉页脚