在现代企业 IT 架构中,RockyLinux Corosync集群 是实现服务高可用性的核心组件之一。本文将从零开始,详细讲解如何在 Rocky Linux 系统上配置 Corosync 集群通信,帮助初学者轻松掌握 Corosync通信配置 的关键步骤。
什么是 Corosync?
Corosync 是一个开源的集群引擎,用于在多个节点之间提供可靠的组通信和成员管理服务。它常与 Pacemaker 资源管理器配合使用,共同构建 RockyLinux高可用集群,确保关键服务(如数据库、Web 服务器等)在节点故障时自动切换,保障业务连续性。
准备工作
在开始之前,请确保满足以下条件:
至少两台 Rocky Linux 8/9 服务器(本教程以两节点为例:node1 和 node2) 所有节点之间网络互通,且能通过主机名互相解析(建议配置 /etc/hosts) 关闭防火墙或开放 Corosync 所需端口(默认使用 UDP 5403-5405) 所有节点时间同步(建议使用 chrony 或 ntp)安装 Corosync 和 Pacemaker
在所有节点上执行以下命令安装所需软件包:
sudo dnf install -y corosync pacemaker pcssudo systemctl enable --now pcsd
安装完成后,为 hacluster 用户设置密码(所有节点密码需一致):
sudo passwd hacluster
配置 Corosync 集群通信
我们将在 node1 上完成集群初始化,然后同步配置到其他节点。
首先,认证集群节点:
sudo pcs cluster auth node1 node2 -u hacluster -p your_password --force
接着,创建并启动集群:
sudo pcs cluster setup my_cluster node1 node2 --start --enable
此时,Corosync 已在两个节点上运行,并建立了集群通信。你可以通过以下命令检查状态:
sudo pcs status
验证 Corosync 通信
运行以下命令查看 Corosync 成员状态:
sudo corosync-cmapctl | grep members
如果看到两个节点的 IP 地址和状态均为 active,则说明 Corosync Pacemaker集群教程 中最关键的通信环节已成功建立。
常见问题排查
节点无法加入集群:检查防火墙是否放行 UDP 5403-5405 端口,以及主机名解析是否正确。 pcs status 显示 offline:确认 pcsd 服务是否在所有节点运行(systemctl status pcsd)。 时间不同步导致脑裂:务必使用 NTP/Chrony 同步所有节点时间。总结
通过本教程,你已经成功在 Rocky Linux 上配置了基于 Corosync 的高可用集群通信。这是构建企业级容错系统的第一步。后续可在此基础上添加资源(如 VIP、Apache、MySQL)并通过 Pacemaker 进行管理,真正实现 RockyLinux高可用集群 的价值。
提示:生产环境中建议至少使用三个节点以避免脑裂(Split-Brain)问题。
