redis-sentinel的理解实践
一、前言
组内现在用的是redis 的sentinel。
本着实践的原则,对sentinel的几台服务器进行了网络或者抓包方面的实践。
一共三台redis服务器,
10.10.20.6, 10.10.20.9, 10.10.20.11
其中,10.10.20.11为主。
我代码里是这么配置的:
#集群名称
redis.sentinel.master=redisMaster
redis.sentinel.nodes=10.10.20.6:26379,10.10.20.9:26379,10.10.20.11:26379
二、实践
1、进程查看
每台服务器上都开启了两个进程,各监听一个端口,一个26379,一个6379.

以上只看了一台,实则,三台都是类似的。
2、长连接查看
另外,三台服务器的sentinel进程之间,应该都是有建立长连接的。我们看看是不是这么回事?
2.1 10.10.20.11上看到的长连接:
下面是从服务器上抓的11和6之间的长连接:

下面是从服务器上抓的11和9之间的长连接:

2.2 10.10.20.9上看到的长连接:

可以看出来,sentinel进程和另外两台服务器上的sentinel进程,都建立了长连接。(另外一台就不一一截图了)
那么,长连接上交换什么数据呢?
三、sentinel之间的数据
我这里,在11上抓了个包:(保存到了11cap这个文件)
tcpdump -i eth1 -w 11cap port 26379
在windows上用wireshark打开后,

这个图里,可以看到,有大量的ping/pong心跳消息。
另外,也可以看到,有下面这样的:

上面提到了53635端口,是sentinel进程打开的,而不是6379端口的进程打开的:

(lsof -p 2557 查看进程打开的文件)
这个我理解,应该就是各个sentinel之间,向别的sentinel表示自己观察到master是谁,方便后续进行投票吧。
这部分我还没有特别懂。
四、参考资料
https://blog.csdn.net/qq_33394088/article/details/80587588
redis-sentinel的理解实践的更多相关文章
- Redis+sentinel 高可用实践
1.环境规划 10.213.50.138(主) redis+sentinel 10.213.50.168(从) redis+sentinel 10.213.50.227 作为客户端测试插入数 2.r ...
- Redis Sentinel 高可用部署实践集群
一.Redis Sentinel 介绍 1.Sentinel 数据库环境搭建,从单机版到主备.再到多数据库集群,我们需要一个高可用的监控:比如Mysql中,我们可能会采用MHA来搭建我们 ...
- 新书介绍 -- 《Redis核心原理与实践》
大家好,今天给大家介绍一下我的新书 -- <Redis核心原理与实践>. 后端开发的同学应该对Redis都不陌生,Redis由于性能极高.功能强大,已成为业界非常流行的内存数据库. < ...
- Redis核心原理与实践--Redis启动过程源码分析
Redis服务器负责接收处理用户请求,为用户提供服务. Redis服务器的启动命令格式如下: redis-server [ configfile ] [ options ] configfile参数指 ...
- Redis Sentinel集群配置中的一些细节
今天在配置Redis集群,用作Tomcat集群的缓存共享.关于Redis集群的配置网上有很多文章,这里只是记录一下我在配置过程中遇到的一些小的细节问题. 1. 关于Protected Mode的问题 ...
- Redis Sentinel机制与用法说明【转】
本文来自:https://segmentfault.com/a/1190000002680804 概述 Redis-Sentinel是Redis官方推荐的高可用性(HA)解决方案,当用Redis做Ma ...
- Redis Sentinel:集群Failover解决方案(转载)
本文转载自:http://shift-alt-ctrl.iteye.com/blog/1884370 文中的配置例子,还有failover过程中触发的订阅事件具有很好的参考价值. Redis sent ...
- Redis Sentinel机制与用法(一)
Sentinel spring 集群配置: 概述 Redis-Sentinel是Redis官方推荐的高可用性(HA)解决方案,当用Redis做Master-slave的高可用方案时,假如master宕 ...
- redis高可用之REDIS SENTINEL
1. Redis主从配置 1.1. 设置主从复制 Master <= Salve 10.24.6.5:6379 <= 10.24.6.7:6379 1.2. 取消主从复制 1.3. ...
随机推荐
- android:ViewHolder模式
ViewHolder holder = null; if(convertView == null){ convertView = mInflater.inflate(R.layout.xxx null ...
- CentOS 的 /etc/profile 和 ~/.bash_profile 及 .zshrc
交互式登陆shell 对于交互式的登陆shell而言,CentOS规定了startup文件的加载顺序如下: 登陆过程: 1. 读取并执行/etc/profile文件: 2. 读取并执行~/.bash_ ...
- excel两张表数据匹配数据(VLOOKUP)
最近项目中需要跨项目导入数据,现整理Excel的一个小技能,记录如下. 第一步:我们打开一个excel表,创建数据如下. 第二步:我们把光标定位在需要展示数据的单元格中,如下图所示. 第三步:我们可以 ...
- ReactNative: 搭建ReactNative开发环境
搭建ReactNative开发环境 不废话,具体步骤如下: 一.安装需要的软件 1.Homebrew Homebrew, Mac系统的包管理器,用于安装NodeJS和一些其他必需的工具软件. /usr ...
- stm32型号解读
ST意法半导体在牵手ARM后可以说是做的非常成功,抓住了从普通MCU到ARM的市场转变的机会.由于ST公司的STM32系列ARM 使用了完善的库开发,作为芯片的应用者不用从底层的寄存器来实现每个功 ...
- Python根据多个空格Split字符串
下面的String: 1 沪1 上海市 1850 1350 400 1300 1186/1644(嘉定约100,松江69 奉贤68 2007年上海常住人口1858万人,户籍人口1378.86万人,来沪 ...
- python2中在sqlite3中插入中文
# -*- coding: utf-8 -*- import sqlite3 conn = sqlite3.connect('SWC_Perf_Info.db') cur = conn.cursor( ...
- Window开启上帝模式
所谓的上帝模式就是所有功能在一个文件下,方便.快捷地操作! 01.新建一个文件夹 02.重命名文件夹 文件夹重命名为“GodMode.{ED7BA470-8E54-465E-825C-99712043 ...
- zabbix监控k8s出现的pod error status
配置zabbix客户端配置文件 vim /etc/zabbix/zabbix_agentd.conf 添加 Include=/etc/zabbix/zabbix_agentd.d/ #!/bin/b ...
- hihocoder第237周:三等分带权树
题目链接 问题描述 给定一棵树,树中每个结点权值为[-100,100]之间的整数.树中包含结点总数不超过1e5.任选两个非根节点A.B,将这两个结点与其父节点断开,可以得到三棵子树.现要求三棵子树的权 ...