正确使用 Pacemaker 的 ocf-tester 与 OCF 资源代理

正确使用 Pacemaker 的 ocf-tester 与 OCF 资源代理

我已经设置了 DRBD、Corosync 和 Pacemaker,其中 Pacemaker 应根据节点的可用性,在不同集群节点上的 DRBD 块设备上安装文件系统。该设置尚未完全运行,因此我尝试使用 测试 Pacemaker 的 DRBD 资源ocf::linbit:drbd代理ocf-tester

如果我尝试这样做(drbd_res是 Pacemaker 中 DRBD 资源的名称;r1是 中的资源名称/etc/drbd.conf

sudo ocf-tester -n drbd_res -o drbd_resource="r1"\
    /usr/lib/ocf/resource.d/linbit/drbd monitor

我收到此错误信息:

Beginning tests for /usr/lib/ocf/resource.d/linbit/drbd...
/usr/sbin/ocf-tester: 226: /usr/sbin/ocf-tester: xmllint: not found
* rc=127: Your agent produces meta-data which does not conform to ra-api-1.dtd
* rc=6: Validation failed.  Did you supply enough options with -o ?
WARNING: You may be disappointed: This RA is intended for pacemaker
1.0 or better! 
ERROR: meta parameter misconfigured, expected clone-max -le 2, but found unset. 
Aborting tests

所以我的问题是:我究竟如何手动调用(即测试)OCF 资源代理ocf-tester?对于给定的示例,我期望执行完成时使用以下其中一个订明返回值。我在 Debian 上使用 DRBD 8.4.3 和 Pacemaker 1.1.16。

答案1

您的错误表明:

Beginning tests for /usr/lib/ocf/resource.d/linbit/drbd...
/usr/sbin/ocf-tester: 226: /usr/sbin/ocf-tester: xmllint: not found

它不必xmllint测试代理,因此首先使用以下命令安装它:apt-get install libxml2-utils

那么它应该可以正常工作。希望有帮助。:) 一切顺利。:)

答案2

DRBD 可以存在于许多状态中,因此需要在 Pacemaker 中定义一个额外的主/从集,该集引用使用ocf:libit:drbd资源代理的原语。需要主/从集的资源代理通常无法使用 进行测试ocf-tester

但是,我可以向您保证,ocf:linbit:drbd资源代理符合 OCF 标准。

相关内容