欢迎光临南昌笑劳网络科技有限公司,我们是一家专注中小型企业营销推广服务的公司!

咨询热线:400 76543 55
南昌笑劳网络科技有限公司
最新资讯News
南昌笑劳网络科技有限公司

Linux服务器高可用项目教程_PacemakerCorosyncHA实践

作者:冷漠man | 点击: | 来源:冷漠man
0901
2026
Pacemaker+Corosync是Linux高可用主流开源组合,Corosync负责节点通信与成员管理,Pacemaker负责资源调度,需配合使用;配置上Corosync有独立配置文件,Pacemaker配置存于CIB;启动须先corosync后pacemaker;双节点Web高可用需完成装包、认证、建集群、添加VIP及服务资源四步;必须启用qdevice仲裁和fencing机制防脑裂;运维需结合corosync-quorumtool、日志分析及故障模拟验证。...
Pacemaker+Corosync是Linux高可用主流开源组合,Corosync负责节点通信与成员管理,Pacemaker负责资源调度,需配合使用;配置上Corosync有独立配置文件,Pacemaker配置存于CIB;启动须先corosync后pacemaker;双节点Web高可用需完成装包、认证、建集群、添加VIP及服务资源四步;必须启用qdevice仲裁和fencing机制防脑裂;运维需结合corosync-quorumtool、日志分析及故障模拟验证。

Linux服务器高可用(HA)项目中,Pacemaker + Corosync 是目前最主流、生产环境验证最充分的开源组合。它不依赖商业软件,能实现服务自动故障转移、资源隔离、多节点状态同步,适用于数据库、Web集群、文件共享等关键业务场景。

核心组件分工要搞清

Corosync 负责底层通信和集群成员管理——它让节点知道“谁在线、谁掉线”,并保证消息可靠传递;Pacemaker 是资源管理器——它根据策略决定“哪个节点运行哪项服务、出问题时怎么切、切之前要不要先停旧实例”。两者必须配合使用,不能只装一个。

  • Corosync 配置文件是 /etc/corosync/corosync.conf,重点设 bindnetaddr(监听网段)、quorum(法定票数策略)和 totem 参数(超时与重传)
  • Pacemaker 本身不存独立配置文件,所有资源、约束、属性都通过 crmshpcs 命令实时写入集群CIB(Cluster Information Base)
  • 启动顺序固定:先启 corosync,再启 pacemaker;停机则相反

基础高可用服务搭建四步走

以双节点 Web 服务(Apache)为例,实现访问 IP 自动漂移、服务自动重启或迁移:

  • 装包统一用发行版源:CentOS/RHEL 用 yum install pcs pacemaker corosync fence-agents-all;Ubuntu/Debian 用 apt install pacemaker corosync pcs
  • 初始化集群前先认证:执行 pcs cluster auth node1 node2 -u hacluster -p 密码,账号密码需一致,hacluster 是默认管理用户
  • 创建并启动集群:运行 pcs cluster setup --name mycluster node1 node2,再 pcs cluster start --all
  • 添加 VIP 和 Apache 资源pcs resource create vip ocf:heartbeat:IPaddr2 ip=192.168.10.100 cidr_netmask=24 op monitor interval=30s pcs resource create webserver systemd:httpd op monitor interval=60s pcs constraint colocation add webserver with vip INFINITY pcs constraint order vip then webserver

避免脑裂和误切换的关键设置

两节点集群最容易因网络闪断导致“各说各话”,必须靠仲裁和 fencing 控制局面:

  • 启用 qdevice(推荐):部署一个独立的仲裁节点(qnetd),让集群在只剩一节点时仍能判断是否该继续提供服务,命令:pcs quorum device add model qnetd host=qnetd.example.com algorithm=ffsplit
  • 务必配 fencing(隔离机制):如使用 fence_virt(KVM)、fence_ipmilan(iDRAC/iLO)或 fence_pcmk(基于 Pacemaker 自身)。没 fencing 的集群等于裸奔,故障时可能双活写数据
  • 禁用 STONITH 的后果很严重:不要为了“测试方便”执行 pcs property set stonith-enabled=false,生产环境必须开启,并确保 fence 设备真实可用

日常运维和排错看这三处

别只盯着 pcs status,真正定位问题得交叉验证:

  • 查 Corosync 状态:运行 corosync-quorumtool -s 看投票结果、corosync-cfgtool -s 看节点连通性
  • 看 Pacemaker 日志细节:重点翻 /var/log/cluster/corosync.log/var/log/cluster/pacemaker.log,搜索 WARNERRORfencetransition
  • 模拟故障快速验证:用 pcs resource move webserver node2 手动迁移;用 pcs cluster stop node1 测试自动接管;拔网线后观察 pcs status 是否显示 fencing 触发


# linux  # transition  # 数据库  # debian  # 开源  # 双节  # 适用于  # 盯着  # 为例  # 所有资源  # 要先  # 只剩  # var  # Property  # centos  # node  # go  # apache  # ipad  # ubuntu  # ai  # 资源管理器  # 配置文件  # Resource  # Error  # 它不 

我要咨询做网站
成功案例
建站流程
  • 网站需
    求分析
  • 网站策
    划方案
  • 页面风
    格设计
  • 程序设
    计研发
  • 资料录
    入优化
  • 确认交
    付使用
  • 后续跟
    踪服务
  • 400 76543 55
    sale#ncxiaolao.cn
Hi,Are you ready?
准备好开始了吗?
那就与我们取得联系吧

咨询送礼现在提交,将获得笑劳科技策划专家免费为您制作
价值5880元《全网营销方案+优化视频教程》一份!
下单送礼感恩七周年,新老用户下单即送创业型空间+域名等大礼
24小时免费咨询热线400 76543 55
合作意向表
您需要的服务
您最关注的地方
预算

直接咨询