搭建步骤

第一步: 在 redis.conf 配置文件目录下拷贝三份 sentinel.conf 文件
[root@node-01 redis-5.0.9]# cp sentinel.conf sentinel.conf1
[root@node-01 redis-5.0.9]# cp sentinel.conf sentinel.conf2
[root@node-01 redis-5.0.9]# cp sentinel.conf sentinel.conf3
第二步:在 sentinel.conf1 文件中查看配置
  • 配置格式:sentinel monitor 被监控机器名 IP地址 端口号 得票数

    Vim 打开 sentinel.conf1 文件,修改如下配置项:

port 26379 # 哨兵监控端口(sentinel.conf1)
daemonize yes # 后台运行
sentinel monitor mymaster 127.0.0.1 6379 2 # 表示只要有2个哨兵节点认为主服务器有问题则进入客观下载状态
  • 然后修改 sentinel.conf2 的监控端口为 26380
port 26380 # 哨兵监控端口(sentinel.conf2)
daemonize yes # 后台运行
sentinel monitor mymaster 127.0.0.1 6379 2 # 表示只要有2个哨兵节点认为主服务器有问题则进入客观下载状态
  • 然后修改 sentinel.conf3 的监控端口为 26381
port 26381 # 哨兵监控端口(sentinel.conf3)
daemonize yes # 后台运行
sentinel monitor mymaster 127.0.0.1 6379 2 # 表示只要有2个哨兵节点认为主服务器有问题则进入客观下载状态
第三步:启动哨兵模式
  • cd 进入 Redis 的 src 目录,然后分别执行启动 3 个哨兵模式脚本,如下:
[root@node-01 redis-5.0.9]# src/redis-sentinel sentinel.conf1
[root@node-01 redis-5.0.9]# src/redis-sentinel sentinel.conf2
[root@node-01 redis-5.0.9]# src/redis-sentinel sentinel.conf3
第四步:查看 3 个哨兵模式进程,确定是否启动成功
[root@node-01 redis-5.0.9]# ps -ef | grep sentinel
root 1824 1 0 12:34 ? 00:00:00 src/redis-sentinel *:26379 [sentinel]
root 1829 1 0 12:34 ? 00:00:00 src/redis-sentinel *:26380 [sentinel]
root 1834 1 0 12:34 ? 00:00:00 src/redis-sentinel *:26381 [sentinel]
root 1841 1495 0 12:35 pts/0 00:00:00 grep --color=auto sentinel

说明三个哨兵进程已成功启动

第五步:检测哨兵模式
  • 直接关闭端口为 6379 的 Master 主服务器,以模拟主服务器故障,如下:
127.0.0.1:6379> shutdown
not connected>
  • 查看端口号 6380 服务器的主从关系
[root@node-01 redis-5.0.9]# src/redis-cli -p 6380
127.0.0.1:6380> info replication
# Replication
role:slave # 表示该服务器是一个从服务器
master_host:127.0.0.1 # 表示连接的主服务器 IP 地址
master_port:6381 # 表示连接的主服务器端口号
master_link_status:up
master_last_io_seconds_ago:0
master_sync_in_progress:0
slave_repl_offset:29805
slave_priority:100
slave_read_only:1
connected_slaves:0
master_replid:ab744fc6feb39f575ec3958f288a52ec7dd034db
master_replid2:554339e6ceb0172e1a8be239d5f84edfa7c39455
master_repl_offset:29805
second_repl_offset:28586
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:29805

查看结果为端口 6380 的服务器仍然是从服务器,但是它连接的主服务器不再是端口 6379 的服务器了,而变为了 端口为6381 的服务器。

  • 查看端口号 6381 服务器的主从关系
[root@node-01 redis-5.0.9]# src/redis-cli -p 6381
127.0.0.1:6381> info replication
# Replication
role:master # 表示该服务器为主服务器
connected_slaves:1 #表示该服务器拥有1个从服务器连接
# 从服务器列表信息
slave0:ip=127.0.0.1,port=6380,state=online,offset=70265,lag=1
master_replid:ab744fc6feb39f575ec3958f288a52ec7dd034db
master_replid2:554339e6ceb0172e1a8be239d5f84edfa7c39455
master_repl_offset:70398
second_repl_offset:28586
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:85
repl_backlog_histlen:70314

查看结果为端口 6381 的服务器已经由原来的从服务器(Slave),切换为主服务器(Master),而且连接在原来主服务器的端口 6380 的从服务器,也重新连接到新的主服务器上了。

  • 重新启动端口 6380 的前任主服务器
[root@node-01 redis-5.0.9]# src/redis-cli -p 6379
127.0.0.1:6379> info replication
# Replication
role:slave # 表示该服务器为从服务器
master_host:127.0.0.1 # 表示连接的主服务器IP地址
master_port:6381#表示连接的主服务器端口号
master_link_status:up
master_last_io_seconds_ago:1
master_sync_in_progress:0
slave_repl_offset:131755
slave_priority:100
slave_read_only:1
connected_slaves:0
master_replid:ab744fc6feb39f575ec3958f288a52ec7dd034db
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:131755
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:129724
repl_backlog_histlen:2032

查看结果为重启服务器后,原来的端口 6379 的主服务器已经不再是主服务器,而自动变为端口6381 的新主服务器的从服务器了。

至此,哨兵模式环境搭建和测试成功:)

Redis 哨兵模式配置的更多相关文章

  1. redis哨兵模式配置

    java对redis的读写 依赖包:jedis.jar maven下: <!-- https://mvnrepository.com/artifact/redis.clients/jedis - ...

  2. Redis哨兵模式高可用部署和配置

    一.Redis 安装配置 1.下载redis安装包 wget http://download.redis.io/releases/redis-4.0.9.tar.gz 2.解压安装包 tar -zxv ...

  3. redis环境搭建及一主二从三哨兵模式配置

    一.单机redis环境搭建 1.安装: OS:linux redhat6.5 下载redis 官网下载链接:https://redis.io/download 把安装包上传到服务器,进行解压 [roo ...

  4. Redis哨兵模式的配置

    绪论 现有三台设备,192.168.137.11.192.168.137.12和192.168.137.13,要求在三台设备上实现redis哨兵模式,其中192.168.137.11为master,其 ...

  5. Springboot2.x集成Redis哨兵模式

    Springboot2.x集成Redis哨兵模式 说明 Redis哨兵模式是Redis高可用方案的一种实现方式,通过哨兵来自动实现故障转移,从而保证高可用. 准备条件 pom.xml中引入相关jar ...

  6. Spring Boot 入门(十):集成Redis哨兵模式,实现Mybatis二级缓存

    本片文章续<Spring Boot 入门(九):集成Quartz定时任务>.本文主要基于redis实现了mybatis二级缓存.较redis缓存,mybaits自带缓存存在缺点(自行谷歌) ...

  7. [Redis] Redis哨兵模式部署 - zz胖的博客

    1. 部署Redis集群 redis的安装及配置参考[redis部署] 本文以创建一主二从的集群为例. 1.1 部署与配置 先创建sentinel目录,在该目录下创建8000,8001,8002三个以 ...

  8. Redis 哨兵模式(Sentinel)

    上一篇我们介绍了 redis 主从节点之间的数据同步复制技术,通过一次全量复制和不间断的命令传播,可以达到主从节点数据同步备份的效果,一旦主节点宕机,我们可以选择一个工作正常的 slave 成为新的主 ...

  9. Redis哨兵模式主从同步不可以绑定127.0.0.1或者0.0.0.0,不然无法进行主从同步

    Redis哨兵模式主从同步不可以绑定127.0.0.1或者0.0.0.0,不然无法进行主从同步,一定要绑定内网IP,而对于跨机房的问题,可以使用iptables进行nat转发来解决.

随机推荐

  1. 我成为 Microsofti Azure MVP 啦!(ps:不是美国职业篮球)

    一,引言 今天是个高兴的日子,早上10点左右收到了来自微软的MVP的礼包的快递,对我来说,这是一件很值得纪念的日子.所以今天就水一篇心得感想吧!!! 我是年前2月9号开始申请MVP的,经历了差不多1个 ...

  2. 批处理文件设置IP以及DNS

    先附上批处理文件代码(批处理文件怎么创建自己另行百度,这里不再赘述) Echo offecho ==============请输入序号修改办公区===========echo *********1.家 ...

  3. 这样介绍Ribbon,从此任何问题也难不住你

    Springcloud的核心组件之Ribbon 上篇文章详细介绍了springcloud的注册中心Eureka,那么这篇文章则会介绍springcloud的另外一个组件Spring Cloud Rib ...

  4. 关gzip压缩,我有新发现

    1 gzip的压缩效果是立竿见影的: 2 网站是否开启gzip的查看方式 2.1 打开Chrome浏览器,按 F12打开调试面板 2.2 切换到network页签,在网络请求列表的表头,鼠标右键==& ...

  5. 数据结构☞二叉搜索树BST

    二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它可以是一棵空树,也可以是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值: 若它 ...

  6. Box UVA - 1587

    Ivan works at a factory that produces heavy machinery. He has a simple job - he knocks up wooden box ...

  7. 【Mybatis源码解析】- JDBC连接数据库的原理和操作

    JDBC连接数据库的原理和操作 JDBC即Java DataBase Connectivity,java数据库连接:JDBC 提供的API可以让JAVA通过API方式访问关系型数据库,执行SQL语句, ...

  8. python3存储numpy格式的矩阵

    技术背景 numpy在python中的地位是相当高的,即使是入门的python使用者也会经常看到这个库的使用.除了替代python自带的列表数据格式list之外,numpy的一大优势是其底层的高性能实 ...

  9. 【Feign/Ribbon】记录一次生产上的SpringCloudFeign的重试问题

    在上周在的微供有数项目中(数据产品),需要对接企业微信中第三方应用,在使用Feign的去调用微服务的用户模块用微信的code获取access_token以及用户工厂信息时出现Feign重试超时报错的情 ...

  10. LA3266田忌赛马

    题意:       田忌和齐王赛马,两个人每人n匹马,每个马都有自己的速度,赢一场得到200分,输一场失去200分,平则不得分,问田忌可能得到的最高得分是多少? 思路:       又是一个比较经典的 ...