Drbd

正確使用 Pacemaker 的 ocf-tester 與 OCF 資源代理

  • December 6, 2017

我有一個使用 DRBD、Corosync 和 Pacemaker 的設置,其中 Pacemaker 應該在不同集群節點上的 DRBD 塊設備上安裝一個文件系統,具體取決於節點的可用性。該設置尚未完全正常工作,因此我嘗試測試 Pacemaker 的 DRBD 資源代理ocf::linbit:drbd,使用ocf-tester.

如果我這樣嘗試(drbd_res是 P​​acemaker 中的 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。

你的錯誤告訴你:

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

然後它應該可以正常工作。希望是有幫助的。:) 祝一切順利。:)

DRBD 可以以多種狀態存在,因此需要在 Pacemaker 中定義一個額外的主/從集,該集引用使用ocf:libit:drbd資源代理的原語。需要主/從集的資源代理通常無法使用ocf-tester.

但是,我可以向您保證,ocf:linbit:drbd資源代理符合 OCF。

引用自:https://serverfault.com/questions/869889