第 4 章 使用 STONITH 的隔离 Controller 节点


隔离(fencing)是隔离故障节点来保护集群和集群资源的过程。如果没有隔离,故障节点可能会导致集群中的数据崩溃。director 使用 Pacemaker 提供 Controller 节点的高可用性集群。

Pacemaker 使用名为 STONITH 的进程来隔离失败的节点。STONITH 是 "Shoot the other nodes in the head" 的缩写。STONITH 默认禁用,需要手动配置,以便 Pacemaker 能够控制集群中每个节点的电源管理。

如果 Controller 节点失败健康检查,则作为 Pacemaker 指定的协调器(DC)的 Controller 节点使用 Pacemaker stonith 服务来隔离受影响的 Controller 节点。

重要

不支持在不使用 STONITH 的情况下部署高可用性 overcloud。您必须在高可用性 overcloud 中为作为 Pacemaker 集群一部分的每个节点配置 STONITH 设备。有关 STONITH 和 Pacemaker 的信息,请参阅红帽高可用性集群中的隔离RHEL 高可用性集群的支持策略

4.1. 支持的隔离代理

当您使用隔离部署高可用性环境时,您可以根据环境需要选择隔离代理。要更改隔离代理,您必须在 fence .yaml 文件中配置附加参数。

Red Hat OpenStack Platform (RHOSP)支持以下隔离代理:

智能平台管理接口 (IPMI)
Red Hat OpenStack Platform (RHOSP)用来管理隔离的默认隔离机制。
STONITH 块设备(SBD)

SBD (基于存储)守护进程与 Pacemaker 和 watchdog 设备集成,以便在触发隔离机制时调度节点以可靠地关闭,并在传统隔离机制不可用时可靠地关闭。

重要
  • 使用 pacemaker_remote 的远程裸机或虚拟机节点不支持 SBD 隔离,因此如果部署使用 Instance HA,则不支持它。
  • 不支持使用块存储设备的 fence_sbdsbd poison-pill 隔离。
  • SBD 隔离只支持兼容 watchdog 设备。如需更多信息,请参阅 RHEL 高可用性集群的支持政策 - sbd 和 fence_sbd
fence_kdump

在带有 kdump 崩溃恢复服务的部署中使用。如果您选择此代理,请确保您有足够的磁盘空间来存储转储文件。

除了 IPMI、fence_ the 或 Redfish 隔离代理外,您还可以将此代理 配置为辅助机制。如果您配置多个隔离代理,请确保为第一个代理分配足够时间来完成任务,然后再启动下一个任务。

重要
  • RHOSP director 仅支持 fence_kdump STONITH 代理的配置,不支持隔离代理依赖的完整 kdump 服务的配置。有关配置 kdump 服务的详情,请参考红帽知识库解决方案 如何在 Red Hat Pacemaker 集群中配置 fence_kdump
  • 如果 Pacemaker 网络流量接口使用 ovs_bridgesovs_bonds 或 Linux 网桥上的 VLAN,则不支持 fence_kdump。要启用 fence_kdump,您必须将网络设备改为 linux_bondlinux_bridge。有关 VLAN 和 kdump 的详情,请查看红帽知识库解决方案 kdump 支持哪些 VLAN 配置?有关网络接口配置的更多信息,请参阅 网络接口参考
Redfish
在部署中使用支持 DMTF Redfish API 的服务器。要指定此代理,请在 fence .yaml 文件中将 agent 参数的值改为 fence_redfish。有关 Redfish 的更多信息,请参阅 DTMF 文档
fence_ASP for Red Hat Virtualization (RHV)

用于为在 RHV 环境中运行的 Controller 节点配置隔离。您可以像 IPMI 隔离一样生成 fence.yaml 文件,但您必须在 nodes.json 文件中定义 pm_type 参数以使用 RHV。

默认情况下,ssl_insecure 参数设置为接受自签名证书。您可以根据安全要求更改参数值。

重要

确保您使用在 RHV 中创建和启动虚拟机的角色,如 UserVMManager

多层隔离
您可以配置多个隔离代理来支持复杂的隔离用例。例如,您可以将 IPMI 隔离配置为 fence_kdump。隔离代理的顺序决定了 Pacemaker 触发每个机制的顺序。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.