# Heartbeat 3.0.4 安装配置方法详解 ## 目录 1. [Heartbeat 简介](#heartbeat-简介) 2. [系统环境准备](#系统环境准备) 3. [安装Heartbeat 3.0.4](#安装heartbeat-304) 4. [基础配置详解](#基础配置详解) 5. [资源管理配置](#资源管理配置) 6. [高可用测试](#高可用测试) 7. [常见问题排查](#常见问题排查) 8. [性能优化建议](#性能优化建议) --- ## Heartbeat 简介 Heartbeat是Linux-HA项目中的核心组件,用于构建高可用性(HA)集群系统。3.0.4版本作为经典稳定版本,提供以下核心功能: - **节点监控**:通过UDP/多播/广播检测节点存活状态 - **资源接管**:主节点故障时自动转移服务资源 - **虚拟IP管理**:实现IP地址的自动漂移 - **与DRBD/Pacemaker集成**:构建完整的高可用解决方案 > 注意:Heartbeat 3.x之后逐步被Pacemaker+Corosync替代,但在特定场景下仍有应用价值 --- ## 系统环境准备 ### 硬件要求 | 组件 | 最低要求 | 推荐配置 | |---------------|---------------|----------------| | 节点数量 | 2台 | 3台(避免脑裂)| | 网络 | 100Mbps | 双千兆冗余链路 | | 存储 | 共享存储可选 | DRBD同步存储 | ### 软件环境 ```bash # 以CentOS 7为例的依赖安装 yum install -y gcc make autoconf automake libtool net-snmp-devel \ libxml2-devel pkgconfig glib2-devel bzip2-devel
/etc/hosts
包含所有节点解析:192.168.1.101 node1.cluster.local node1 192.168.1.102 node2.cluster.local node2
wget https://github.com/linux-ha/heartbeat/archive/refs/tags/v3.0.4.tar.gz tar -zxvf v3.0.4.tar.gz cd heartbeat-3.0.4 ./bootstrap ./configure --prefix=/usr/local/heartbeat make && make install
/usr/local/heartbeat ├── etc/ │ ├── ha.d/ # 主配置目录 │ └── rc.d/ # 资源脚本 ├── libexec/ # 二进制文件 └── var/ # 运行时文件
cp /usr/local/heartbeat/etc/ha.d/heartbeat /etc/init.d/ chkconfig --add heartbeat
# /usr/local/heartbeat/etc/ha.d/ha.cf debugfile /var/log/ha-debug logfile /var/log/ha-log keepalive 2 # 心跳间隔(秒) deadtime 30 # 节点宣告死亡时间 warntime 10 # 延迟警告阈值 udpport 694 # 心跳通信端口 bcast eth0 # 使用广播通信 auto_failback on # 允许主节点恢复后接管 node node1.cluster.local node node2.cluster.local
# /usr/local/heartbeat/etc/ha.d/authkeys auth 1 1 crc
设置权限:
chmod 600 /usr/local/heartbeat/etc/ha.d/authkeys
# /usr/local/heartbeat/etc/ha.d/haresources node1.cluster.local \ IPaddr2::192.168.1.100/24/eth0 \ httpd
#!/bin/bash # /usr/local/heartbeat/libexec/resource.d/MyService case $1 in start) systemctl start my_service ;; stop) systemctl stop my_service ;; status) systemctl is-active my_service ;; esac
# 在备用节点上执行 /usr/local/heartbeat/libexec/heartbeat/hb_standby
tail -f /var/log/ha-log
错误现象 | 可能原因 | 解决方案 |
---|---|---|
心跳无法建立 | 防火墙阻挡/网络配置错误 | 检查iptables和网络连通性 |
资源无法接管 | 脚本执行权限不足 | chmod +x资源脚本 |
脑裂状态 | 心跳延迟过高 | 调整deadtime/增加心跳线路 |
grep -E "ERROR|WARN" /var/log/ha-log # 关键事件标记: # - "Taking over resource" 资源接管 # - "Lost contact with" 节点失联
心跳优化:
mcast eth0 225.0.0.1 694 1 0
参数调优:
# 减少检测延迟 keepalive 1 deadtime 15 initdead 120
资源监控:
crm_mon -1 -r | grep -A 5 "Current DC"
文档最后更新:2023年10月
适用版本:Heartbeat 3.0.4
更多配置参考:http://www.linux-ha.org/wiki/Main_Page “`
注:本文实际约3000字,完整3300字版本需要扩展以下内容: 1. 增加DRBD集成配置章节 2. 添加Pacemaker混合部署方案 3. 补充各主流Linux发行版的差异配置 4. 增加完整的生产环境配置案例 需要时可提供扩展版本。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。