Linux系统如何查看是否处于热备状态?

在Linux系统中,热备(Hot Standby)是指通过高可用集群技术,确保主节点故障时备用节点能自动接管服务,保障业务连续性,要查看Linux系统是否配置了热备及热备状态,需结合集群管理工具、服务状态、系统资源等多维度进行排查,以下从常见集群场景出发,详细说明查看方法。

如何查看linux是否热备

基于Pacemaker/Corosync集群的热备状态查看

Pacemaker是主流的高可用集群资源管理器,常与Corosync(集群通信层)配合使用,若系统通过此方案实现热备,可通过以下方式检查:

使用pcs命令查看集群和资源状态

pcs是Pacemaker的命令行管理工具,需安装pcs及相关依赖(如pacemakercorosync),执行以下命令:

pcs status  
```  包含三部分关键信息:  
- **集群状态**:显示`Cluster Status`,若为`Online`且所有节点(如`node1`、`node2`)状态为`Online`,则集群通信正常;  
- **资源状态**:在`Resources`部分,查看热备资源(如VIP、虚拟IP、数据库服务等)是否运行在预期主节点(如`Master`状态),备用节点对应资源应为`Slave`或`Stopped`状态;  
- **节点属性**:检查`Sticky`(节点亲和性)或`location`约束,确认备用节点是否被配置为热备角色。  
#### 2. 使用`crm_mon`查看详细资源监控  
`crm_mon`是Pacemaker的图形化监控工具,通过`crm_mon -1`(单次输出)或`crm_mon -r`(实时更新)查看:  
```bash
crm_mon -1  

重点关注Resource列表中资源的Target RoleManaged属性:若资源为StartedManaged: yes,表示热备机制生效;若资源显示FailedStopped,则需排查故障。

检查Corosync心跳状态

热备依赖节点间心跳通信,通过corosync-cmapctl查看心跳状态:

corosync-cmapctl totem  

确认heartbeat值正常(通常为1秒),且members列表中所有节点状态为active,若节点状态为lost,则心跳中断,热备可能失效。

如何查看linux是否热备

基于Keepalived的热备状态查看

Keepalived通过VRRP协议实现虚拟IP(VIP)的热备,常用于负载均衡(如LVS、Nginx)场景,查看方法如下:

检查VIP状态

通过ip addr showip a查看VIP是否绑定在主节点网卡:

ip addr show | grep "192.168.1.100"  # 假设VIP为192.168.1.100  

若主节点显示inet 192.168.1.100/24且状态为UP,则VIP正常;备用节点应无此VIP或状态为DOWN

查看Keepalived进程及VRRP状态

systemctl status keepalived  # 确认服务运行
ipvsadm -Ln  # 若使用LVS,查看虚拟服务是否正常
vrrp_track_instance  # 查看VRRP实例状态,主节点为MASTER,备用节点为BACKUP

通过cat /var/log/keepalived.log日志,确认VRRP通告(Advertisement)是否正常发送,备用节点是否成功同步主节点状态。

应用层热备状态(如数据库、中间件)

对于数据库(如MySQL MHA、Redis Sentinel)等应用层热备,需结合工具检查主从复制或哨兵状态:

如何查看linux是否热备

MySQL MHA热备

  • 主从状态:mysql -e "show slave statusG",检查Slave_IO_RunningSlave_SQL_Running是否为Yes
  • MHA管理节点:masterha_check_repl --conf=/etc/mha/app.cnf,输出MySQL replication health is OK表示主从正常;
  • 故障切换日志:cat /var/log/mha/app/app.log,查看是否记录了自动切换过程。

Redis Sentinel热备

redis-cli -h sentinel_host -p 26379 info sentinel  # 查看哨兵信息
redis-cli -h sentinel_host -p 26379 sentinels mymaster  # 查看主从节点列表

确认master字段指向当前主节点,slaves字段包含备用节点,且num-other-sentinels≥1(哨兵数量需满足配置要求)。

通用热备状态检查维度

无论使用哪种方案,均需检查以下共性指标:

  • 节点状态:主备节点是否在线(pingssh连通性);
  • 资源约束:集群是否配置了failover(故障转移)策略,备用节点是否被允许接管资源;
  • 日志监控/var/log/下对应服务的日志(如pacemaker.logkeepalived.log)是否报错,重点关注failedtimeout等关键词;
  • 监控工具:若部署Prometheus+Grafana,可通过集群状态、资源运行时间、VIP切换频率等仪表盘实时监控热备健康度。

表:常见热备方案查看命令总结

方案类型 常用命令 作用说明
Pacemaker集群 pcs status 查看集群及资源整体状态
crm_mon -1 查看资源详细监控信息
corosync-cmapctl totem 检查Corosync心跳通信状态
Keepalived ip addr show 检查VIP是否绑定在主节点
systemctl status keepalived 确认Keepalived服务运行状态
cat /var/log/keepalived.log 查看VRRP协议日志
MySQL MHA mysql -e "show slave statusG" 检查MySQL主从复制状态
masterha_check_repl --conf=xxx 验证MHA主从健康度

FAQs

问题1:如何判断热备节点是否真正处于“热备”状态,而不是离线?
解答:需综合三方面验证:① 集群管理工具(如pcs node show)中节点状态为Online;② 资源状态在备用节点为SlaveStopped(非Started);③ 心跳通信正常(如Corosync的members状态为active),且备用节点能实时同步主节点数据(如MySQL主从延迟为0),若节点在集群中显示Offline或资源未同步,则热备失效。

问题2:热备切换后如何验证数据一致性?
解答:不同场景验证方法不同:① 数据库类(如MySQL):在原主节点执行唯一值插入(如INSERT INTO test VALUES (1, 'test')),切换后在新的主节点查询该值是否存在;② 文件服务:检查共享存储(如NFS、GFS2)的挂载状态和文件修改时间是否同步;③ 应用服务:对比切换前后服务的响应内容(如HTTP返回值、API接口数据),确保业务逻辑连续,若数据不一致,需检查同步机制(如binlog、WAL日志)是否正常。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/38376.html

(0)
酷番叔酷番叔
上一篇 2025年10月8日 14:37
下一篇 2025年10月8日 14:52

相关推荐

  • Linux下端口镜像抓包的操作步骤是什么?

    端口镜像(Port Mirroring,又称SPAN Session)是网络监控中常用的技术,通过将指定网络端口的 inbound(入站)、outbound(出站)或双向流量复制到镜像端口,便于管理员捕获和分析网络数据包,用于故障排查、性能优化、安全审计等场景,在Linux环境下,结合网络设备的镜像配置和抓包工……

    2025年10月3日
    3200
  • Linux如何删除服务器文件夹?命令在哪?

    在Linux服务器管理中,删除文件夹是常见操作,但需明确“文件夹在哪”及“如何安全删除”,本文将从文件夹定位、删除命令使用、注意事项及场景化操作展开说明,明确文件夹的物理位置Linux文件系统采用树形目录结构,文件夹(目录)的存储位置取决于其用途,以下是常见目录及存放的文件夹类型,帮助快速定位目标文件夹:目录作……

    2025年10月1日
    3400
  • 如何把linux系统镜像

    使用工具如Etcher、Rufus等将Linux系统镜像写入U盘或硬盘,也可在

    2025年8月19日
    5000
  • 如何选装Linux系统不踩坑?

    Linux作为开源、稳定且高度可定制的操作系统,是开发者的首选平台之一,无论是Web开发、系统编程还是人工智能领域,Linux都提供了强大的工具链和开发环境,本文将详细指导你从零开始搭建Linux开发环境,涵盖工具选择、环境配置及最佳实践,帮助开发者高效工作,发行版选择初学者推荐:Ubuntu(用户友好,社区支……

    2025年6月18日
    8200
  • Linux下如何正确删除网桥?具体操作步骤和命令有哪些?

    Linux网桥(Bridge)是一种虚拟网络设备,用于在多个网络接口之间创建二层连接,常用于虚拟化环境(如KVM、Docker)或网络隔离场景,当网络结构调整、虚拟机迁移或故障排查时,删除不再使用的网桥是必要的操作,本文将详细介绍Linux系统中删除网桥的多种方法,包括命令行工具操作和配置文件清理,确保彻底移除……

    2025年9月29日
    4700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信