第 2 章 Pacemaker 入门
要熟悉您用来创建 Pacemaker 集群的工具和进程,您可以执行以下流程。这些内容适用于想了解集群软件以及如何管理它,而不需要配置集群的用户。
这些步骤并不会创建受支持的红帽集群。受支持的红帽集群至少需要两个节点并配置隔离设备。有关红帽对 RHEL 高可用性集群的支持政策、要求和限制的详情,请参考 RHEL 高可用性集群的支持政策。
2.1. 学习使用 Pacemaker
通过这个过程,您将了解如何使用 Pacemaker 设置集群、如何显示集群状态以及如何配置集群服务。这个示例创建了一个 Apache HTTP 服务器作为集群资源,并显示了集群在资源失败时如何响应。
在本例中:
- 
						节点为 z1.example.com。
- 浮动 IP 地址为 192.168.122.120。
先决条件
- 运行 RHEL 8 的单个节点
- 与节点静态分配的一个 IP 地址在同一网络上的浮动 IP 地址
- 
						运行的节点的名称位于 /etc/hosts文件中
流程
- 从 High Availability 频道安装红帽高可用性附加组件软件包,并启动并启用 - pcsd服务。- yum install pcs pacemaker fence-agents-all systemctl start pcsd.service systemctl enable pcsd.service - # yum install pcs pacemaker fence-agents-all ... # systemctl start pcsd.service # systemctl enable pcsd.service- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 如果您正在运行 - firewalld守护进程,启用红帽高可用性附加组件所需的端口。- firewall-cmd --permanent --add-service=high-availability firewall-cmd --reload - # firewall-cmd --permanent --add-service=high-availability # firewall-cmd --reload- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 在群集的每个节点上设置用户 - hacluster的密码,并为您要运行- pcs命令的节点上群集中的每个节点验证用户- hacluster。本例只使用一个节点,您要从这个节点中运行命令。把这一步包括在这个步骤的原因是,它是配置一个被支持的红帽高可用性多节点集群的一个必要步骤。- passwd hacluster pcs host auth z1.example.com - # passwd hacluster ... # pcs host auth z1.example.com- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 创建名为 - my_cluster且具有一个成员的群集,并检查群集的状态。这个命令会创建并启动集群。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 红帽高可用性集群要求为集群配置隔离功能。在 Red Hat High Availability Cluster 中的红帽知识库解决方案隔离 中描述了此要求的原因。然而,在本简介中,它只显示如何使用基本 Pacemaker 命令,通过将启用了 - stonith-enabled集群选项设置为- false来禁用隔离。警告- 对生产环境集群而言, - stonith-enabled=false的使用完全不合适。它通知集群,假设出现故障的节点已被安全隔离。- pcs property set stonith-enabled=false - # pcs property set stonith-enabled=false- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 在您的系统中配置网页浏览器并创建一个网页来显示简单文本信息。如果您正在运行 - firewalld守护进程,请启用- httpd所需的端口。注意- 不要使用 - systemctl enable启用任何由集群管理的在系统引导时启动的服务。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 要让 Apache 资源代理获得 Apache 状态,在现有配置中添加以下内容来启用状态服务器 URL。 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 创建 - IPaddr2和- apache资源,供群集管理。- IPaddr2资源是一个浮动 IP 地址,它不能是已经与物理节点关联的浮动 IP 地址。如果没有指定- IPaddr2资源的 NIC 设备,浮动 IP 必须位于与静态分配的 IP 地址相同的网络中。- 您可以使用 - pcs resource list命令显示所有可用资源类型的列表。您可以使用- pcs resource describe resourcetype命令显示您可以为指定资源类型设置的参数。例如,以下命令显示您可以为- apache类型的资源设置的参数:- pcs resource describe apache - # pcs resource describe apache ...- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 在本例中,IP 地址资源和 apache 资源都配置为名为 - apachegroup的组的一部分,这样可确保资源在配置正常工作的多节点群集时在同一节点上运行。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 配置集群资源后,您可以使用 - pcs resource config命令显示为该资源配置的选项。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 将浏览器指向使用您配置的浮动 IP 地址创建的网站。这个命令会显示您定义的文本信息。
- 停止 apache web 服务并检查集群的状态。使用 - killall -9模拟应用程序级别的崩溃。- killall -9 httpd - # killall -9 httpd- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 检查集群状态。您应该看到停止 web 服务会导致操作失败,但集群软件会重启该服务,您应该仍然可以访问网站。 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 您可以在服务启动并再次运行后,清除失败的资源中的失败状态。当您查看集群状态时,失败的操作通知将不再出现。 - pcs resource cleanup WebSite - # pcs resource cleanup WebSite- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 当您完成查看集群和集群状态后,停止节点上的集群服务。即使为此简介仅在一个节点上启动服务,但包含 - --all参数,因为它将停止实际多节点群集上所有节点上的群集服务。- pcs cluster stop --all - # pcs cluster stop --all- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow