我已经安装了DRBD,Corosync和Pacemaker,其中Pacemaker应该在不同群集节点上的DRBD块设备上安装文件系统,具体取决于节点的可用性。 该设置还没有完全正常工作,因此我尝试使用ocf-testertestingPacemaker的DRBD资源代理ocf::linbit:drbd 。
如果我这样尝试( 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
所以我的问题是这样的:我怎样才能手动调用(即testing)OCF资源代理ocf-tester ? 对于给定的例子,我希望执行完成一个规定的返回值。 我在Debian上使用DRBD 8.4.3和Pacemaker 1.1.16。
DRBD可以存在于很多状态,因此需要在Pacemaker中定义一个额外的主/从集合,用于引用使用ocf:libit:drbd资源代理的原语。 需要主/从设备的资源代理通常不能使用ocf-tester 。
不过,我可以向你保证, ocf:linbit:drbd资源代理是OCF兼容的。