May 302013
 

Master/Slaveセットのリソースにおいて、ネットワーク疎通がOKなノードのみがMasterになれるようにするために、以下に掲載されているlocation制約を設ける方法がありました。
DRBD HowTo 1.0 – ClusterLabs

上記はcrmコマンドで設定する手順なのですが、pcsコマンドでは同様のことを定義する方法がわかりません。
MLでも質問が出ていますが、明確な回答は出ていないようです。
pcs group colocation and ping rules | Linux-HA | Pacemaker

仕方ないので、crmコマンドで定義した際に生成される内容をXMLで用意して、直接cibadminで登録しています。

# cat location-ping.xml
<constraints>
  <rsc_location id="ms-drbd-0_master_on_connected_node" rsc="ms-drbd0">
    <rule boolean-op="or" id="ms-drbd-0_master_on_connected_node-rule" role="Master" score="-INFINITY">
      <expression attribute="pingd" id="ms-drbd-0_master_on_connected_node-expression" operation="not_defined"/>
      <expression attribute="pingd" id="ms-drbd-0_master_on_connected_node-expression-0" operation="lte" value="0"/>
    </rule>
  </rsc_location>
</constraints>
# cibadmin -U -x location-ping.xml
# pcs constraint all
Location Constraints:
  Resource: ms-drbd0
    Rule: pingd not_defined  (score:-INFINITY) (id:ms-drbd-0_master_on_connected_node)
    Rule: pingd lte 0 (score:-INFINITY) (id:ms-drbd-0_master_on_connected_node)
Ordering Constraints:
Colocation Constraints:
#

Sorry, the comment form is closed at this time.