496 lines
28 KiB
Diff
496 lines
28 KiB
Diff
From 8a0a16c8ed72c74d656664694ebe36b76ff22498 Mon Sep 17 00:00:00 2001
|
|
From: Ken Gaillot <kgaillot@redhat.com>
|
|
Date: Wed, 30 Mar 2022 17:14:33 -0500
|
|
Subject: [PATCH] Test: cts-scheduler: add test for
|
|
multiple-active=stop_unexpected
|
|
|
|
---
|
|
cts/cts-scheduler.in | 1 +
|
|
cts/scheduler/dot/stop-unexpected.dot | 40 ++++
|
|
cts/scheduler/exp/stop-unexpected.exp | 201 ++++++++++++++++++
|
|
cts/scheduler/scores/stop-unexpected.scores | 17 ++
|
|
cts/scheduler/summary/stop-unexpected.summary | 41 ++++
|
|
cts/scheduler/xml/stop-unexpected.xml | 131 ++++++++++++
|
|
6 files changed, 431 insertions(+)
|
|
create mode 100644 cts/scheduler/dot/stop-unexpected.dot
|
|
create mode 100644 cts/scheduler/exp/stop-unexpected.exp
|
|
create mode 100644 cts/scheduler/scores/stop-unexpected.scores
|
|
create mode 100644 cts/scheduler/summary/stop-unexpected.summary
|
|
create mode 100644 cts/scheduler/xml/stop-unexpected.xml
|
|
|
|
diff --git a/cts/cts-scheduler.in b/cts/cts-scheduler.in
|
|
index 3a8aeaca5..8c04687da 100644
|
|
--- a/cts/cts-scheduler.in
|
|
+++ b/cts/cts-scheduler.in
|
|
@@ -273,6 +273,7 @@ TESTS = [
|
|
[ "rec-rsc-6", "Resource Recover - multiple - restart" ],
|
|
[ "rec-rsc-7", "Resource Recover - multiple - stop" ],
|
|
[ "rec-rsc-8", "Resource Recover - multiple - block" ],
|
|
+ [ "stop-unexpected", "Resource Recover - multiple - stop unexpected" ],
|
|
[ "rec-rsc-9", "Resource Recover - group/group" ],
|
|
[ "monitor-recovery", "on-fail=block + resource recovery detected by recurring monitor" ],
|
|
[ "stop-failure-no-quorum", "Stop failure without quorum" ],
|
|
diff --git a/cts/scheduler/dot/stop-unexpected.dot b/cts/scheduler/dot/stop-unexpected.dot
|
|
new file mode 100644
|
|
index 000000000..0f67eec54
|
|
--- /dev/null
|
|
+++ b/cts/scheduler/dot/stop-unexpected.dot
|
|
@@ -0,0 +1,40 @@
|
|
+ digraph "g" {
|
|
+"dgroup_running_0" [ style=bold color="green" fontcolor="orange"]
|
|
+"dgroup_start_0" -> "dgroup_running_0" [ style = bold]
|
|
+"dgroup_start_0" -> "dummy2_start_0 node2" [ style = bold]
|
|
+"dgroup_start_0" -> "dummy3_start_0 node2" [ style = bold]
|
|
+"dgroup_start_0" -> "dummy_start_0 node2" [ style = bold]
|
|
+"dgroup_start_0" [ style=bold color="green" fontcolor="orange"]
|
|
+"dgroup_stop_0" -> "dgroup_stopped_0" [ style = bold]
|
|
+"dgroup_stop_0" -> "dummy2_stop_0 node2" [ style = bold]
|
|
+"dgroup_stop_0" -> "dummy3_stop_0 node2" [ style = bold]
|
|
+"dgroup_stop_0" -> "dummy_stop_0 node3" [ style = bold]
|
|
+"dgroup_stop_0" [ style=bold color="green" fontcolor="orange"]
|
|
+"dgroup_stopped_0" -> "dgroup_start_0" [ style = bold]
|
|
+"dgroup_stopped_0" [ style=bold color="green" fontcolor="orange"]
|
|
+"dummy2_monitor_10000 node2" [ style=bold color="green" fontcolor="black"]
|
|
+"dummy2_start_0 node2" -> "dgroup_running_0" [ style = bold]
|
|
+"dummy2_start_0 node2" -> "dummy2_monitor_10000 node2" [ style = bold]
|
|
+"dummy2_start_0 node2" -> "dummy3_start_0 node2" [ style = bold]
|
|
+"dummy2_start_0 node2" [ style=bold color="green" fontcolor="black"]
|
|
+"dummy2_stop_0 node2" -> "dgroup_stopped_0" [ style = bold]
|
|
+"dummy2_stop_0 node2" -> "dummy2_start_0 node2" [ style = bold]
|
|
+"dummy2_stop_0 node2" -> "dummy_stop_0 node3" [ style = bold]
|
|
+"dummy2_stop_0 node2" [ style=bold color="green" fontcolor="black"]
|
|
+"dummy3_monitor_10000 node2" [ style=bold color="green" fontcolor="black"]
|
|
+"dummy3_start_0 node2" -> "dgroup_running_0" [ style = bold]
|
|
+"dummy3_start_0 node2" -> "dummy3_monitor_10000 node2" [ style = bold]
|
|
+"dummy3_start_0 node2" [ style=bold color="green" fontcolor="black"]
|
|
+"dummy3_stop_0 node2" -> "dgroup_stopped_0" [ style = bold]
|
|
+"dummy3_stop_0 node2" -> "dummy2_stop_0 node2" [ style = bold]
|
|
+"dummy3_stop_0 node2" -> "dummy3_start_0 node2" [ style = bold]
|
|
+"dummy3_stop_0 node2" [ style=bold color="green" fontcolor="black"]
|
|
+"dummy_monitor_10000 node2" [ style=bold color="green" fontcolor="black"]
|
|
+"dummy_start_0 node2" -> "dgroup_running_0" [ style = bold]
|
|
+"dummy_start_0 node2" -> "dummy2_start_0 node2" [ style = bold]
|
|
+"dummy_start_0 node2" -> "dummy_monitor_10000 node2" [ style = bold]
|
|
+"dummy_start_0 node2" [ style=bold color="green" fontcolor="orange"]
|
|
+"dummy_stop_0 node3" -> "dgroup_stopped_0" [ style = bold]
|
|
+"dummy_stop_0 node3" -> "dummy_start_0 node2" [ style = bold]
|
|
+"dummy_stop_0 node3" [ style=bold color="green" fontcolor="black"]
|
|
+}
|
|
diff --git a/cts/scheduler/exp/stop-unexpected.exp b/cts/scheduler/exp/stop-unexpected.exp
|
|
new file mode 100644
|
|
index 000000000..1f94532f7
|
|
--- /dev/null
|
|
+++ b/cts/scheduler/exp/stop-unexpected.exp
|
|
@@ -0,0 +1,201 @@
|
|
+<transition_graph cluster-delay="60s" stonith-timeout="90" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" transition_id="0">
|
|
+ <synapse id="0">
|
|
+ <action_set>
|
|
+ <pseudo_event id="15" operation="stopped" operation_key="dgroup_stopped_0">
|
|
+ <attributes CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
|
|
+ </pseudo_event>
|
|
+ </action_set>
|
|
+ <inputs>
|
|
+ <trigger>
|
|
+ <rsc_op id="4" operation="stop" operation_key="dummy_stop_0" on_node="node3" on_node_uuid="node3"/>
|
|
+ </trigger>
|
|
+ <trigger>
|
|
+ <rsc_op id="8" operation="stop" operation_key="dummy2_stop_0" on_node="node2" on_node_uuid="node2"/>
|
|
+ </trigger>
|
|
+ <trigger>
|
|
+ <rsc_op id="10" operation="stop" operation_key="dummy3_stop_0" on_node="node2" on_node_uuid="node2"/>
|
|
+ </trigger>
|
|
+ <trigger>
|
|
+ <pseudo_event id="14" operation="stop" operation_key="dgroup_stop_0"/>
|
|
+ </trigger>
|
|
+ </inputs>
|
|
+ </synapse>
|
|
+ <synapse id="1">
|
|
+ <action_set>
|
|
+ <pseudo_event id="14" operation="stop" operation_key="dgroup_stop_0">
|
|
+ <attributes CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
|
|
+ </pseudo_event>
|
|
+ </action_set>
|
|
+ <inputs/>
|
|
+ </synapse>
|
|
+ <synapse id="2">
|
|
+ <action_set>
|
|
+ <pseudo_event id="13" operation="running" operation_key="dgroup_running_0">
|
|
+ <attributes CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
|
|
+ </pseudo_event>
|
|
+ </action_set>
|
|
+ <inputs>
|
|
+ <trigger>
|
|
+ <pseudo_event id="7" operation="start" operation_key="dummy_start_0"/>
|
|
+ </trigger>
|
|
+ <trigger>
|
|
+ <rsc_op id="9" operation="start" operation_key="dummy2_start_0" on_node="node2" on_node_uuid="node2"/>
|
|
+ </trigger>
|
|
+ <trigger>
|
|
+ <rsc_op id="11" operation="start" operation_key="dummy3_start_0" on_node="node2" on_node_uuid="node2"/>
|
|
+ </trigger>
|
|
+ <trigger>
|
|
+ <pseudo_event id="12" operation="start" operation_key="dgroup_start_0"/>
|
|
+ </trigger>
|
|
+ </inputs>
|
|
+ </synapse>
|
|
+ <synapse id="3">
|
|
+ <action_set>
|
|
+ <pseudo_event id="12" operation="start" operation_key="dgroup_start_0">
|
|
+ <attributes CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
|
|
+ </pseudo_event>
|
|
+ </action_set>
|
|
+ <inputs>
|
|
+ <trigger>
|
|
+ <pseudo_event id="15" operation="stopped" operation_key="dgroup_stopped_0"/>
|
|
+ </trigger>
|
|
+ </inputs>
|
|
+ </synapse>
|
|
+ <synapse id="4">
|
|
+ <action_set>
|
|
+ <pseudo_event id="7" operation="start" operation_key="dummy_start_0">
|
|
+ <attributes CRM_meta_name="start" CRM_meta_record_pending="false" CRM_meta_timeout="300000" />
|
|
+ </pseudo_event>
|
|
+ </action_set>
|
|
+ <inputs>
|
|
+ <trigger>
|
|
+ <rsc_op id="4" operation="stop" operation_key="dummy_stop_0" on_node="node3" on_node_uuid="node3"/>
|
|
+ </trigger>
|
|
+ <trigger>
|
|
+ <pseudo_event id="12" operation="start" operation_key="dgroup_start_0"/>
|
|
+ </trigger>
|
|
+ </inputs>
|
|
+ </synapse>
|
|
+ <synapse id="5">
|
|
+ <action_set>
|
|
+ <rsc_op id="4" operation="stop" operation_key="dummy_stop_0" on_node="node3" on_node_uuid="node3">
|
|
+ <primitive id="dummy" class="ocf" provider="heartbeat" type="DummyTimeout"/>
|
|
+ <attributes CRM_meta_name="stop" CRM_meta_on_node="node3" CRM_meta_on_node_uuid="node3" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
|
|
+ </rsc_op>
|
|
+ </action_set>
|
|
+ <inputs>
|
|
+ <trigger>
|
|
+ <rsc_op id="8" operation="stop" operation_key="dummy2_stop_0" on_node="node2" on_node_uuid="node2"/>
|
|
+ </trigger>
|
|
+ <trigger>
|
|
+ <pseudo_event id="14" operation="stop" operation_key="dgroup_stop_0"/>
|
|
+ </trigger>
|
|
+ </inputs>
|
|
+ </synapse>
|
|
+ <synapse id="6">
|
|
+ <action_set>
|
|
+ <rsc_op id="2" operation="monitor" operation_key="dummy_monitor_10000" on_node="node2" on_node_uuid="node2">
|
|
+ <primitive id="dummy" class="ocf" provider="heartbeat" type="DummyTimeout"/>
|
|
+ <attributes CRM_meta_interval="10000" CRM_meta_name="monitor" CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
|
|
+ </rsc_op>
|
|
+ </action_set>
|
|
+ <inputs>
|
|
+ <trigger>
|
|
+ <pseudo_event id="7" operation="start" operation_key="dummy_start_0"/>
|
|
+ </trigger>
|
|
+ </inputs>
|
|
+ </synapse>
|
|
+ <synapse id="7">
|
|
+ <action_set>
|
|
+ <rsc_op id="9" operation="start" operation_key="dummy2_start_0" on_node="node2" on_node_uuid="node2">
|
|
+ <primitive id="dummy2" class="ocf" provider="heartbeat" type="Dummy"/>
|
|
+ <attributes CRM_meta_name="start" CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
|
|
+ </rsc_op>
|
|
+ </action_set>
|
|
+ <inputs>
|
|
+ <trigger>
|
|
+ <pseudo_event id="7" operation="start" operation_key="dummy_start_0"/>
|
|
+ </trigger>
|
|
+ <trigger>
|
|
+ <rsc_op id="8" operation="stop" operation_key="dummy2_stop_0" on_node="node2" on_node_uuid="node2"/>
|
|
+ </trigger>
|
|
+ <trigger>
|
|
+ <pseudo_event id="12" operation="start" operation_key="dgroup_start_0"/>
|
|
+ </trigger>
|
|
+ </inputs>
|
|
+ </synapse>
|
|
+ <synapse id="8">
|
|
+ <action_set>
|
|
+ <rsc_op id="8" operation="stop" operation_key="dummy2_stop_0" on_node="node2" on_node_uuid="node2">
|
|
+ <primitive id="dummy2" class="ocf" provider="heartbeat" type="Dummy"/>
|
|
+ <attributes CRM_meta_name="stop" CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
|
|
+ </rsc_op>
|
|
+ </action_set>
|
|
+ <inputs>
|
|
+ <trigger>
|
|
+ <rsc_op id="10" operation="stop" operation_key="dummy3_stop_0" on_node="node2" on_node_uuid="node2"/>
|
|
+ </trigger>
|
|
+ <trigger>
|
|
+ <pseudo_event id="14" operation="stop" operation_key="dgroup_stop_0"/>
|
|
+ </trigger>
|
|
+ </inputs>
|
|
+ </synapse>
|
|
+ <synapse id="9">
|
|
+ <action_set>
|
|
+ <rsc_op id="3" operation="monitor" operation_key="dummy2_monitor_10000" on_node="node2" on_node_uuid="node2">
|
|
+ <primitive id="dummy2" class="ocf" provider="heartbeat" type="Dummy"/>
|
|
+ <attributes CRM_meta_interval="10000" CRM_meta_name="monitor" CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
|
|
+ </rsc_op>
|
|
+ </action_set>
|
|
+ <inputs>
|
|
+ <trigger>
|
|
+ <rsc_op id="9" operation="start" operation_key="dummy2_start_0" on_node="node2" on_node_uuid="node2"/>
|
|
+ </trigger>
|
|
+ </inputs>
|
|
+ </synapse>
|
|
+ <synapse id="10">
|
|
+ <action_set>
|
|
+ <rsc_op id="11" operation="start" operation_key="dummy3_start_0" on_node="node2" on_node_uuid="node2">
|
|
+ <primitive id="dummy3" class="ocf" provider="heartbeat" type="Dummy"/>
|
|
+ <attributes CRM_meta_name="start" CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
|
|
+ </rsc_op>
|
|
+ </action_set>
|
|
+ <inputs>
|
|
+ <trigger>
|
|
+ <rsc_op id="9" operation="start" operation_key="dummy2_start_0" on_node="node2" on_node_uuid="node2"/>
|
|
+ </trigger>
|
|
+ <trigger>
|
|
+ <rsc_op id="10" operation="stop" operation_key="dummy3_stop_0" on_node="node2" on_node_uuid="node2"/>
|
|
+ </trigger>
|
|
+ <trigger>
|
|
+ <pseudo_event id="12" operation="start" operation_key="dgroup_start_0"/>
|
|
+ </trigger>
|
|
+ </inputs>
|
|
+ </synapse>
|
|
+ <synapse id="11">
|
|
+ <action_set>
|
|
+ <rsc_op id="10" operation="stop" operation_key="dummy3_stop_0" on_node="node2" on_node_uuid="node2">
|
|
+ <primitive id="dummy3" class="ocf" provider="heartbeat" type="Dummy"/>
|
|
+ <attributes CRM_meta_name="stop" CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
|
|
+ </rsc_op>
|
|
+ </action_set>
|
|
+ <inputs>
|
|
+ <trigger>
|
|
+ <pseudo_event id="14" operation="stop" operation_key="dgroup_stop_0"/>
|
|
+ </trigger>
|
|
+ </inputs>
|
|
+ </synapse>
|
|
+ <synapse id="12">
|
|
+ <action_set>
|
|
+ <rsc_op id="1" operation="monitor" operation_key="dummy3_monitor_10000" on_node="node2" on_node_uuid="node2">
|
|
+ <primitive id="dummy3" class="ocf" provider="heartbeat" type="Dummy"/>
|
|
+ <attributes CRM_meta_interval="10000" CRM_meta_name="monitor" CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
|
|
+ </rsc_op>
|
|
+ </action_set>
|
|
+ <inputs>
|
|
+ <trigger>
|
|
+ <rsc_op id="11" operation="start" operation_key="dummy3_start_0" on_node="node2" on_node_uuid="node2"/>
|
|
+ </trigger>
|
|
+ </inputs>
|
|
+ </synapse>
|
|
+</transition_graph>
|
|
diff --git a/cts/scheduler/scores/stop-unexpected.scores b/cts/scheduler/scores/stop-unexpected.scores
|
|
new file mode 100644
|
|
index 000000000..68f98e837
|
|
--- /dev/null
|
|
+++ b/cts/scheduler/scores/stop-unexpected.scores
|
|
@@ -0,0 +1,17 @@
|
|
+
|
|
+pcmk__group_allocate: dgroup allocation score on node2: 0
|
|
+pcmk__group_allocate: dgroup allocation score on node3: 0
|
|
+pcmk__group_allocate: dummy allocation score on node2: 0
|
|
+pcmk__group_allocate: dummy allocation score on node3: 0
|
|
+pcmk__group_allocate: dummy2 allocation score on node2: 100
|
|
+pcmk__group_allocate: dummy2 allocation score on node3: 0
|
|
+pcmk__group_allocate: dummy3 allocation score on node2: 100
|
|
+pcmk__group_allocate: dummy3 allocation score on node3: 0
|
|
+pcmk__native_allocate: dummy allocation score on node2: 200
|
|
+pcmk__native_allocate: dummy allocation score on node3: 0
|
|
+pcmk__native_allocate: dummy2 allocation score on node2: 200
|
|
+pcmk__native_allocate: dummy2 allocation score on node3: -INFINITY
|
|
+pcmk__native_allocate: dummy3 allocation score on node2: 100
|
|
+pcmk__native_allocate: dummy3 allocation score on node3: -INFINITY
|
|
+pcmk__native_allocate: st-sbd allocation score on node2: 100
|
|
+pcmk__native_allocate: st-sbd allocation score on node3: 0
|
|
diff --git a/cts/scheduler/summary/stop-unexpected.summary b/cts/scheduler/summary/stop-unexpected.summary
|
|
new file mode 100644
|
|
index 000000000..7c7fc68b6
|
|
--- /dev/null
|
|
+++ b/cts/scheduler/summary/stop-unexpected.summary
|
|
@@ -0,0 +1,41 @@
|
|
+Current cluster status:
|
|
+ * Node List:
|
|
+ * Online: [ node2 node3 ]
|
|
+
|
|
+ * Full List of Resources:
|
|
+ * st-sbd (stonith:external/sbd): Started node2
|
|
+ * Resource Group: dgroup:
|
|
+ * dummy (ocf:heartbeat:DummyTimeout): FAILED [ node2 node3 ]
|
|
+ * dummy2 (ocf:heartbeat:Dummy): Started node2
|
|
+ * dummy3 (ocf:heartbeat:Dummy): Started node2
|
|
+
|
|
+Transition Summary:
|
|
+ * Recover dummy ( node2 ) due to being multiply active
|
|
+ * Restart dummy2 ( node2 ) due to required dummy start
|
|
+ * Restart dummy3 ( node2 ) due to required dummy2 start
|
|
+
|
|
+Executing Cluster Transition:
|
|
+ * Pseudo action: dgroup_stop_0
|
|
+ * Resource action: dummy3 stop on node2
|
|
+ * Resource action: dummy2 stop on node2
|
|
+ * Resource action: dummy stop on node3
|
|
+ * Pseudo action: dgroup_stopped_0
|
|
+ * Pseudo action: dgroup_start_0
|
|
+ * Pseudo action: dummy_start_0
|
|
+ * Resource action: dummy monitor=10000 on node2
|
|
+ * Resource action: dummy2 start on node2
|
|
+ * Resource action: dummy2 monitor=10000 on node2
|
|
+ * Resource action: dummy3 start on node2
|
|
+ * Resource action: dummy3 monitor=10000 on node2
|
|
+ * Pseudo action: dgroup_running_0
|
|
+
|
|
+Revised Cluster Status:
|
|
+ * Node List:
|
|
+ * Online: [ node2 node3 ]
|
|
+
|
|
+ * Full List of Resources:
|
|
+ * st-sbd (stonith:external/sbd): Started node2
|
|
+ * Resource Group: dgroup:
|
|
+ * dummy (ocf:heartbeat:DummyTimeout): Started node2
|
|
+ * dummy2 (ocf:heartbeat:Dummy): Started node2
|
|
+ * dummy3 (ocf:heartbeat:Dummy): Started node2
|
|
diff --git a/cts/scheduler/xml/stop-unexpected.xml b/cts/scheduler/xml/stop-unexpected.xml
|
|
new file mode 100644
|
|
index 000000000..6e61aeba3
|
|
--- /dev/null
|
|
+++ b/cts/scheduler/xml/stop-unexpected.xml
|
|
@@ -0,0 +1,131 @@
|
|
+<cib epoch="631" num_updates="25" admin_epoch="0" validate-with="pacemaker-3.0" crm_feature_set="3.0.8" have-quorum="1" cib-last-written="Thu Aug 20 11:44:27 2015" update-origin="node2" update-client="cibadmin" update-user="root" dc-uuid="node2">
|
|
+ <configuration>
|
|
+ <crm_config>
|
|
+ <cluster_property_set id="cib-bootstrap-options">
|
|
+ <nvpair name="dc-version" value="1.1.11-3ca8c3b" id="cib-bootstrap-options-dc-version"/>
|
|
+ <nvpair name="cluster-infrastructure" value="corosync" id="cib-bootstrap-options-cluster-infrastructure"/>
|
|
+ <nvpair name="node-action-limit" value="2" id="cib-bootstrap-options-node-action-limit"/>
|
|
+ <nvpair name="no-quorum-policy" value="ignore" id="cib-bootstrap-options-no-quorum-policy"/>
|
|
+ <nvpair name="stonith-enabled" value="false" id="cib-bootstrap-options-stonith-enabled"/>
|
|
+ <nvpair name="stonith-timeout" value="90" id="cib-bootstrap-options-stonith-timeout"/>
|
|
+ <nvpair name="last-lrm-refresh" value="1439556204" id="cib-bootstrap-options-last-lrm-refresh"/>
|
|
+ </cluster_property_set>
|
|
+ </crm_config>
|
|
+ <nodes>
|
|
+ <node uname="node2" id="node2">
|
|
+ <instance_attributes id="nodes-node2">
|
|
+ <nvpair id="nodes-node2-standby" name="standby" value="off"/>
|
|
+ </instance_attributes>
|
|
+ </node>
|
|
+ <node id="node3" uname="node3">
|
|
+ <instance_attributes id="nodes-node3">
|
|
+ <nvpair id="nodes-node3-standby" name="standby" value="off"/>
|
|
+ </instance_attributes>
|
|
+ </node>
|
|
+ </nodes>
|
|
+ <resources>
|
|
+ <primitive id="st-sbd" class="stonith" type="external/sbd"/>
|
|
+ <group id="dgroup">
|
|
+ <meta_attributes id="dgroup-meta_attributes">
|
|
+ <nvpair name="multiple-active" value="stop_unexpected" id="dgroup-meta_attributes-multiple-active"/>
|
|
+ </meta_attributes>
|
|
+ <primitive id="dummy" class="ocf" provider="heartbeat" type="DummyTimeout">
|
|
+ <operations>
|
|
+ <op name="monitor" interval="10s" timeout="20" id="dummy-monitor-10s"/>
|
|
+ <op name="start" timeout="300s" interval="0" id="dummy-start-0"/>
|
|
+ <op name="stop" timeout="20s" interval="0" id="dummy-stop-0"/>
|
|
+ </operations>
|
|
+ <meta_attributes id="dummy-meta_attributes">
|
|
+ <nvpair name="target-role" value="Started" id="dummy-meta_attributes-target-role"/>
|
|
+ </meta_attributes>
|
|
+ </primitive>
|
|
+ <primitive id="dummy2" class="ocf" provider="heartbeat" type="Dummy">
|
|
+ <operations>
|
|
+ <op name="monitor" interval="10s" timeout="20" id="dummy2-monitor-10s"/>
|
|
+ <op name="start" timeout="20s" interval="0" id="dummy2-start-0"/>
|
|
+ <op name="stop" timeout="20s" interval="0" id="dummy2-stop-0"/>
|
|
+ </operations>
|
|
+ <meta_attributes id="dummy2-meta_attributes">
|
|
+ <nvpair name="target-role" value="Started" id="dummy2-meta_attributes-target-role"/>
|
|
+ </meta_attributes>
|
|
+ </primitive>
|
|
+ <primitive id="dummy3" class="ocf" provider="heartbeat" type="Dummy">
|
|
+ <operations>
|
|
+ <op name="monitor" interval="10s" timeout="20" id="dummy3-monitor-10s"/>
|
|
+ <op name="start" timeout="20s" interval="0" id="dummy3-start-0"/>
|
|
+ <op name="stop" timeout="20s" interval="0" id="dummy3-stop-0"/>
|
|
+ </operations>
|
|
+ <meta_attributes id="dummy3-meta_attributes">
|
|
+ <nvpair name="target-role" value="Started" id="dummy3-meta_attributes-target-role"/>
|
|
+ </meta_attributes>
|
|
+ </primitive>
|
|
+ </group>
|
|
+ </resources>
|
|
+ <constraints/>
|
|
+ <op_defaults>
|
|
+ <meta_attributes id="op_defaults-options">
|
|
+ <nvpair id="op_defaults-options-record-pending" name="record-pending" value="false"/>
|
|
+ </meta_attributes>
|
|
+ </op_defaults>
|
|
+ <rsc_defaults>
|
|
+ <meta_attributes id="rsc_defaults-options">
|
|
+ <nvpair name="resource-stickiness" value="100" id="rsc_defaults-options-resource-stickiness"/>
|
|
+ <nvpair name="migration-threshold" value="100" id="rsc_defaults-options-migration-threshold"/>
|
|
+ </meta_attributes>
|
|
+ </rsc_defaults>
|
|
+ </configuration>
|
|
+ <status>
|
|
+ <node_state id="node2" uname="node2" in_ccm="true" crmd="online" crm-debug-origin="do_update_resource" join="member" expected="member">
|
|
+ <transient_attributes id="node2">
|
|
+ <instance_attributes id="status-node2">
|
|
+ <nvpair id="status-node2-shutdown" name="shutdown" value="0"/>
|
|
+ <nvpair id="status-node2-probe_complete" name="probe_complete" value="true"/>
|
|
+ </instance_attributes>
|
|
+ </transient_attributes>
|
|
+ <lrm id="node2">
|
|
+ <lrm_resources>
|
|
+ <lrm_resource id="dummy3" type="Dummy" class="ocf" provider="heartbeat">
|
|
+ <lrm_rsc_op id="dummy3_last_0" operation_key="dummy3_start_0" operation="start" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="13:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;13:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="24" rc-code="0" op-status="0" interval="0" last-run="1440063239" last-rc-change="1440063239" exec-time="6" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8" op-force-restart=" state " op-restart-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
|
|
+ <lrm_rsc_op id="dummy3_monitor_10000" operation_key="dummy3_monitor_10000" operation="monitor" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="14:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;14:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="25" rc-code="0" op-status="0" interval="10000" last-rc-change="1440063239" exec-time="5" queue-time="0" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/>
|
|
+ </lrm_resource>
|
|
+ <lrm_resource id="st-sbd" type="external/sbd" class="stonith">
|
|
+ <lrm_rsc_op id="st-sbd_last_0" operation_key="st-sbd_start_0" operation="start" crm-debug-origin="do_update_resource" crm_feature_set="3.0.8" transition-key="10:6:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;10:6:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="27" rc-code="0" op-status="0" interval="0" last-run="1440064019" last-rc-change="1440064019" exec-time="1213" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
|
|
+ </lrm_resource>
|
|
+ <lrm_resource id="dummy" type="DummyTimeout" class="ocf" provider="heartbeat">
|
|
+ <lrm_rsc_op id="dummy_last_0" operation_key="dummy_start_0" operation="start" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="9:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;9:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="20" rc-code="0" op-status="0" interval="0" last-run="1440063237" last-rc-change="1440063237" exec-time="1009" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8" op-force-restart=" state " op-restart-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
|
|
+ <lrm_rsc_op id="dummy_monitor_10000" operation_key="dummy_monitor_10000" operation="monitor" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="10:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;10:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="21" rc-code="0" op-status="0" interval="10000" last-rc-change="1440063238" exec-time="1010" queue-time="0" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/>
|
|
+ </lrm_resource>
|
|
+ <lrm_resource id="dummy2" type="Dummy" class="ocf" provider="heartbeat">
|
|
+ <lrm_rsc_op id="dummy2_last_0" operation_key="dummy2_start_0" operation="start" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="11:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;11:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="22" rc-code="0" op-status="0" interval="0" last-run="1440063239" last-rc-change="1440063239" exec-time="5" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8" op-force-restart=" state " op-restart-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
|
|
+ <lrm_rsc_op id="dummy2_monitor_10000" operation_key="dummy2_monitor_10000" operation="monitor" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="12:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;12:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="23" rc-code="0" op-status="0" interval="10000" last-rc-change="1440063239" exec-time="5" queue-time="0" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/>
|
|
+ </lrm_resource>
|
|
+ </lrm_resources>
|
|
+ </lrm>
|
|
+ </node_state>
|
|
+ <node_state id="node3" uname="node3" crmd="online" crm-debug-origin="do_update_resource" in_ccm="true" join="member" expected="member">
|
|
+ <transient_attributes id="node3">
|
|
+ <instance_attributes id="status-node3">
|
|
+ <nvpair id="status-node3-shutdown" name="shutdown" value="0"/>
|
|
+ <nvpair id="status-node3-probe_complete" name="probe_complete" value="true"/>
|
|
+ </instance_attributes>
|
|
+ </transient_attributes>
|
|
+ <lrm id="node3">
|
|
+ <lrm_resources>
|
|
+ <lrm_resource id="dummy3" type="Dummy" class="ocf" provider="heartbeat">
|
|
+ <lrm_rsc_op id="dummy3_last_0" operation_key="dummy3_monitor_0" operation="monitor" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="11:2:7:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:7;11:2:7:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="18" rc-code="7" op-status="0" interval="0" last-run="1440063820" last-rc-change="1440063820" exec-time="7" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8" op-force-restart=" state " op-restart-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
|
|
+ </lrm_resource>
|
|
+ <lrm_resource id="st-sbd" type="external/sbd" class="stonith">
|
|
+ <lrm_rsc_op id="st-sbd_last_0" operation_key="st-sbd_stop_0" operation="stop" crm-debug-origin="do_update_resource" crm_feature_set="3.0.8" transition-key="9:6:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;9:6:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="21" rc-code="0" op-status="0" interval="0" last-run="1440064019" last-rc-change="1440064019" exec-time="1" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
|
|
+ </lrm_resource>
|
|
+ <lrm_resource id="dummy" type="DummyTimeout" class="ocf" provider="heartbeat">
|
|
+ <lrm_rsc_op id="dummy_last_0" operation_key="dummy_start_0" operation="start" crm-debug-origin="do_update_resource" crm_feature_set="3.0.8" transition-key="5:0:0:a5e85e43-f35a-4f75-8e15-f0ddc8d81812" transition-magic="0:7;5:0:0:a5e85e43-f35a-4f75-8e15-f0ddc8d81812" call-id="20" rc-code="7" op-status="0" interval="0" last-run="1440063984" last-rc-change="1440063984" exec-time="179014" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8" op-force-restart=" state " op-restart-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
|
|
+ <lrm_rsc_op id="dummy_last_failure_0" operation_key="dummy_start_0" operation="start" crm-debug-origin="do_update_resource" crm_feature_set="3.0.8" transition-key="5:0:0:a5e85e43-f35a-4f75-8e15-f0ddc8d81812" transition-magic="0:7;5:0:0:a5e85e43-f35a-4f75-8e15-f0ddc8d81812" call-id="20" rc-code="7" op-status="0" interval="0" last-run="1440063984" last-rc-change="1440063984" exec-time="179014" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
|
|
+ </lrm_resource>
|
|
+ <lrm_resource id="dummy2" type="Dummy" class="ocf" provider="heartbeat">
|
|
+ <lrm_rsc_op id="dummy2_last_0" operation_key="dummy2_monitor_0" operation="monitor" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="10:2:7:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:7;10:2:7:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="14" rc-code="7" op-status="0" interval="0" last-run="1440063820" last-rc-change="1440063820" exec-time="11" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8" op-force-restart=" state " op-restart-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
|
|
+ </lrm_resource>
|
|
+ </lrm_resources>
|
|
+ </lrm>
|
|
+ </node_state>
|
|
+ </status>
|
|
+</cib>
|
|
--
|
|
2.27.0
|
|
|