17.1 支持的资源代理类

您需要为添加的每个群集资源定义资源代理应符合的标准。资源代理可抽象化所提供的服务,并为群集提供精确的状态,使群集与它管理的资源无关。当指定启动、停止或监视命令时,群集会依赖资源代理来执行正确的操作。

资源代理通常以壳层脚本的形式提供。High Availability Extension 支持以下各种资源代理:

旧版 Heartbeat 1 资源代理

Heartbeat 版本 1 附带自己的资源代理样式。由于很多用户已根据约定编写了自己的代理,所以同样也支持这些资源代理。但是,建议如有可能请将配置迁移到 High Availability OCF RA。有关详细信息,参见 http://wiki.linux-ha.org/HeartbeatResourceAgent

Linux Standards Base (LSB) 脚本

LSB 资源代理一般由操作系统/分发包提供,并可在 /etc/init.d 中找到。要想用于群集,这些代理必须遵守 LSB 规范。例如,根据 http://www.linuxbase.org/spec/refspecs/LSB_3.0.0/LSB-Core- generic/LSB-Core-generic/iniscrptact.html 中所述,它们必须已实现一些操作,至少要包括启动停止重新启动重新装载强制重新装载状态

Open Cluster Framework (OCF) 资源代理

OCF RA 代理最适合用于 High Availability,特别是在您需要主资源或特殊监视功能时。这些代理通常位于 /usr/lib/ocf/resource.d/heartbeat/。其功能与 LSB 脚本的功能相似。但是,它们始终使用环境变量来执行配置,这使它们可以轻松地接受和处理参数。OCF 规范(由于它与资源代理相关)可在 http://www.opencf.org/cgi-bin/viewcvs.cgi/specs/ra/resource-agent-api.txt?rev=HEAD 4 中找到。OCF 规范包含以下严格定义:操作必须返回退出代码。群集会严格遵守这些规范。有关详细信息,请参见 http://wiki.linux-ha.org/OCFResourceAgent。有关所有可用的 OCF RA 的详细列表,请参见部分 18.0, HA OCF 代理

STONITH 资源代理

此类仅用于与屏障相关的资源。有关详细信息,参见部分 8.0, 屏障和 STONITH

随 High Availability Extension 提供的代理已写入 OCF 规范。