第 1 章 简介和规划实例 HA 部署
Compute 实例(Instance HA)的高可用性是一个用于从故障 Compute 节点撤离实例的工具,并在不同的 Compute 节点上重新创建实例。
实例 HA 可以与共享存储或本地存储环境配合使用,这意味着撤离的实例维护相同的网络配置,如静态 IP 地址和浮动 IP 地址。重新创建的实例也会在新的 Compute 节点中维护相同的特征。
1.1. 实例 HA 的工作原理 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
当 Compute 节点出现故障时,overcloud 隔离代理会隔离该节点,那么 Instance HA 代理会将实例从故障 Compute 节点撤离到不同的 Compute 节点。
当 Compute 节点失败并触发 Instance HA 时,会出现以下事件:
-
在出现故障时,
IPMI代理执行第一层隔离,其中包括物理重置节点,以确保它关闭并防止 overcloud 上的数据崩溃或多个相同实例。当节点离线时,它被视为被隔离。 在物理 IPMI 隔离后,
fence-nova代理会自动执行第二个层隔离,并通过运行以下命令来使用"evacuate=yes"集群标记隔离的节点:$ attrd_updater -n evacuate -A name="evacuate" host="FAILEDHOST" value="yes"FAILEDHOST是故障 Compute 节点的名称。-
nova-evacuate代理持续在后台运行,并使用"evacuate=yes"属性定期检查集群是否有节点。当nova-evacuate检测到隔离的节点包含此属性时,代理会启动撤离节点。撤离过程与可随时执行的手动实例撤离过程类似。 -
当失败的节点在 IPMI 重置后重新启动时,该节点上的
nova-compute进程也会自动启动。因为该节点之前被隔离,所以它不会运行任何新实例,直到 Pacemaker 取消隔离节点为止。 -
当 Pacemaker 检测到 Compute 节点在线时,它会在节点上启动
compute-unfence-trigger资源代理,这会释放该节点,以便可以再次运行实例。