第 3 章 使用隔离代理修复
您可以使用 Fence Agents Remediation Operator 自动修复不健康的节点,类似于 Self Node Remediation Operator。通过使用管理界面或传统的 API,此 Operator 运行一个 fence-agent,以通过电源节点从不健康状态修复节点。
3.1. 关于隔离代理修复 Operator 复制链接链接已复制到粘贴板!
Fence Agents Remediation (FAR) Operator 使用外部工具 隔离 不健康的节点。这些工具是一组隔离代理,每个隔离代理可用于隔离节点的不同环境,并使用重启节点的传统应用程序编程接口(API)调用。通过这样做,FAR 可以最小化有状态应用程序的停机时间,在发生临时故障时恢复计算容量,并增加工作负载的可用性。
FAR 仅在节点变得不健康时隔离节点,它还会尝试 修复 该节点不健康。它添加一个污点来驱除无状态 pod,使用隔离代理隔离节点,并在重启后完成补救,使用资源删除来删除任何剩余的工作负载(主要有状态工作负载)。添加污点和删除工作负载可加快工作负载重新调度。
Operator 监视是否有新的或删除的自定义资源(CR),名为 FenceAgentsRemediation,它根据 CR 的名称触发隔离代理修复节点。FAR 使用 NodeHealthCheck 控制器来检测集群中节点的健康状况。当节点被识别为不健康时,NodeHealthCheck 资源会根据 CR 创建 FenceAgentsRemediation CR,然后触发 Fence Agents Remediation Operator。FenceAgentsRemediation Template
FAR 使用隔离代理隔离 Kubernetes 节点。通常,隔离是将无响应/释放计算机进入安全状态并隔离计算机的过程。隔离代理是一个软件代码,它使用管理界面执行隔离,主要基于电源隔离,启用电源循环、重置或关闭计算机。隔离代理示例是 fence_ipmilan,用于智能平台管理接口(IPMI)环境。
apiVersion: fence-agents-remediation.medik8s.io/v1alpha1
kind: FenceAgentsRemediation
metadata:
name: node-name
namespace: openshift-workload-availability
spec:
- 1
- node-name 应该与不健康集群节点的名称匹配。
Operator 包括了一组隔离代理,它们也可以在红帽高可用性附加组件中可用,该插件使用 IPMI 或 API 等管理界面来为裸机服务器、虚拟机和云平台置备/重新引导节点。