Redis哨兵怎么查看状态和信息,简单操作步骤分享
- 问答
- 2025-12-23 22:12:56
- 1
你需要连接到正在运行的哨兵实例,哨兵默认监听26379端口,你可以使用Redis的命令行工具redis-cli来连接,打开你的终端,输入以下命令(如果哨兵不在本机或端口有修改,请替换相应的IP和端口):
redis-cli -p 26379
连接成功后,命令提示符会变成sentinel>,这表明你现在正在对哨兵发送命令。
查看主节点的信息
这是最常用也最核心的命令,用来查看哨兵监控的主节点(master)的状态,命令是:
sentinel masters
这个命令会列出哨兵所监控的所有主节点的详细信息,信息会非常多,包括主节点的名字、IP地址、端口号、状态、主观下线的次数、从节点的数量等等,如果你只想看某一个特定的主节点,比如你的主节点名叫mymaster,你可以使用:
sentinel master mymaster
这会只显示关于mymaster的详细信息。
查看从节点的信息
知道了主节点的情况,下一步自然是想知道它下面有多少个从节点(slave),这些从节点是否健康,命令是:
sentinel slaves mymaster
将mymaster替换成你的主节点名字,这个命令会列出所有被哨兵发现的、属于mymaster的从节点列表,信息包括每个从节点的IP、端口、复制偏移量、连接状态等,帮助你判断数据同步是否正常。
查看哨兵节点本身的信息
一个哨兵集群通常由多个哨兵实例组成,以实现高可用,你想知道当前有多少个哨兵在共同监控你的主节点,它们之间是否能够正常通信,命令是:
sentinel sentinels mymaster
这个命令会列出除了你当前连接的这一个哨兵之外,其他所有也在监控mymaster的哨兵同伴的信息,包括它们的IP、端口、最后通信时间等,如果这里列出的哨兵数量比你实际部署的少,那可能意味着有哨兵节点失联了,需要警惕。
获取当前主节点的地址
这是在应用程序中集成哨兵时最常用的功能,你的应用程序不需要知道主节点到底是谁,它只需要问哨兵:“当前有效的主节点地址是什么?”命令是:
sentinel get-master-addr-by-name mymaster
这个命令会直接返回一个结果,包含当前主节点的IP地址和端口号,应用程序可以通过这个命令动态地找到可写的主节点。
检查哨兵的基本状态
除了上面这些专门的信息查询,还有一些基础命令可以用来检查哨兵是否正常工作。
- 查看哨兵监控的主节点列表:
sentinel masters会显示详细信息,但如果你只是想知道哨兵在监控哪些主节点,可以快速扫一眼。 - 检查哨兵是否存活: 使用Redis的通用
PING命令,在sentinel>提示符下,直接输入ping,如果它回复PONG,说明这个哨兵进程是活跃的。 - 查看哨兵的核心配置: 使用
info命令,在哨兵模式下,info命令输出的信息是经过筛选的,主要展示与哨兵功能相关的部分,比如它监控的主节点数量、最后一个OK的时间戳等,这比sentinel masters的输出更概括。
查看日志
命令行的信息是瞬时的,而日志则记录了哨兵运行的历史事件,对于排查问题至关重要,哨兵的所有重要操作都会记录在日志文件中,
- 发现另一个哨兵。
- 判断主节点进入“主观下线”状态。
- 与其他哨兵协商,判断主节点进入“客观下线”状态。
- 发起故障转移投票。
- 选举出新的主节点。
- 通知客户端配置变更。
当出现问题时(比如主从切换了但你不知道为什么),第一件事就是去查看哨兵的日志文件,日志文件的路径在你启动哨兵时的配置文件(sentinel.conf)中通过logfile参数指定。
简单操作步骤总结:
- 连接哨兵:
redis-cli -p 26379 - 检查主节点:
sentinel master your-master-name - 检查从节点:
sentinel slaves your-master-name - 检查其他哨兵:
sentinel sentinels your-master-name - 动态获取主地址:
sentinel get-master-addr-by-name your-master-name - 结合日志分析:当有异常时, tail -f 查看哨兵日志文件。
通过以上这些简单的命令,你就可以比较全面地掌握你的Redis哨兵集群和主从复制的运行状态了,日常运维中多使用sentinel masters和sentinel slaves来做个快速健康检查是个好习惯。

本文由召安青于2025-12-23发表在笙亿网络策划,如有疑问,请联系我们。
本文链接:http://www.haoid.cn/wenda/67168.html
