当前位置:首页 > Centos > 正文

CentOS Pacemaker集群管理(手把手教你搭建高可用Linux集群)

在现代 IT 基础设施中,确保服务的高可用性至关重要。如果你正在使用 CentOS 系统,并希望构建一个可靠的高可用集群,那么 CentOS Pacemaker集群管理 是你必须掌握的核心技能。本教程将从零开始,详细讲解如何在 CentOS 上安装、配置和管理基于 Pacemaker 的高可用集群,即使你是初学者也能轻松上手。

什么是 Pacemaker?

Pacemaker 是一个开源的高可用性集群资源管理器,常与 Corosync 搭配使用。它能够监控集群中的节点和服务状态,在主节点发生故障时自动将服务切换到备用节点,从而实现故障转移,保障业务连续性。这种机制广泛应用于 Web 服务器、数据库、文件共享等关键服务。

CentOS Pacemaker集群管理(手把手教你搭建高可用Linux集群) Pacemaker集群管理 高可用集群配置 Pacemaker故障转移 Linux集群教程 第1张

准备工作

本教程假设你有两台运行 CentOS 7 或 CentOS 8 的服务器(例如 node1 和 node2),并满足以下条件:

  • 两台服务器网络互通,且能通过主机名互相解析(建议配置 /etc/hosts)
  • 关闭防火墙或开放必要端口(如 5403-5405/udp、2224/tcp 等)
  • 禁用 SELinux(或设置为 permissive 模式)
  • 以 root 用户操作,或具备 sudo 权限

第1步:安装 Pacemaker 和 Corosync

在两台服务器上执行以下命令安装所需软件包:

yum install -y pacemaker pcs corosync fence-agents-allsystemctl enable --now pcsd

安装完成后,pcsd 服务会自动启动。该服务用于通过 Web 界面或命令行管理集群。

第2步:设置 hacluster 用户密码

Pacemaker 使用名为 hacluster 的系统用户进行节点间通信。你需要为该用户设置相同密码:

passwd hacluster# 输入并确认一个强密码,例如:MyClusterPass123!

第3步:认证集群节点

在任意一台节点(如 node1)上执行以下命令,对所有节点进行认证:

pcs cluster auth node1 node2 -u hacluster -p MyClusterPass123!

成功后会显示:node1: Authorizednode2: Authorized

第4步:创建并启动集群

继续在 node1 上执行以下命令创建名为 mycluster 的集群:

pcs cluster setup mycluster node1 node2pcs cluster start --allpcs cluster enable --all

现在,你的 高可用集群配置 已初步完成!可通过以下命令查看集群状态:

pcs status

第5步:添加一个虚拟 IP 资源(示例)

为了演示 Pacemaker故障转移 功能,我们添加一个虚拟 IP 地址作为集群资源:

# 设置集群属性(允许无仲裁运行,适用于双节点)pcs property set no-quorum-policy=ignore# 添加虚拟IP资源(替换为你自己的IP)pcs resource create VirtualIP ocf:heartbeat:IPaddr2 \  ip=192.168.1.100 cidr_netmask=24 op monitor interval=30s

现在,虚拟 IP 192.168.1.100 会在其中一个节点上激活。你可以通过 ip addr show 查看。如果当前节点宕机,Pacemaker 会自动将该 IP 切换到另一节点。

常见问题与维护

  • 查看资源状态:使用 pcs status resources
  • 手动迁移资源:使用 pcs resource move VirtualIP node2
  • 清除迁移限制:使用 pcs resource clear VirtualIP
  • 日志位置:/var/log/pacemaker.log 和 /var/log/messages

结语

通过本篇 Linux集群教程,你应该已经掌握了在 CentOS 上搭建和管理 Pacemaker 高可用集群的基本流程。虽然这只是入门,但你已具备了应对真实生产环境中服务高可用需求的基础能力。后续可深入学习 STONITH( fencing)、多资源组、约束策略等高级功能。

提示:在生产环境中,请务必启用 STONITH 并合理规划网络与存储,以避免脑裂(split-brain)问题。