diff --git a/pengine/test10/remote-startup.dot b/pengine/test10/remote-startup.dot index c3deeba664..50e53319f8 100644 --- a/pengine/test10/remote-startup.dot +++ b/pengine/test10/remote-startup.dot @@ -1,30 +1,41 @@ digraph "g" { "all_stopped" [ style=bold color="green" fontcolor="orange"] "fake_monitor_0 18builder" -> "probe_complete 18builder" [ style = bold] "fake_monitor_0 18builder" [ style=bold color="green" fontcolor="black"] "fake_monitor_0 18node1" -> "probe_complete 18node1" [ style = bold] "fake_monitor_0 18node1" [ style=bold color="green" fontcolor="black"] "fake_monitor_0 18node2" -> "probe_complete 18node2" [ style = bold] "fake_monitor_0 18node2" [ style=bold color="green" fontcolor="black"] "fake_monitor_0 remote1" -> "probe_complete remote1" [ style = bold] "fake_monitor_0 remote1" [ style=bold color="green" fontcolor="black"] "fake_start_0 18node2" [ style=bold color="green" fontcolor="black"] +"probe_complete 18builder" -> "probe_nodes_complete" [ style = bold] "probe_complete 18builder" [ style=bold color="green" fontcolor="black"] +"probe_complete 18node1" -> "probe_nodes_complete" [ style = bold] "probe_complete 18node1" [ style=bold color="green" fontcolor="black"] +"probe_complete 18node2" -> "probe_nodes_complete" [ style = bold] "probe_complete 18node2" [ style=bold color="green" fontcolor="black"] "probe_complete remote1" -> "probe_complete" [ style = bold] "probe_complete remote1" [ style=bold color="green" fontcolor="black"] "probe_complete" -> "fake_start_0 18node2" [ style = bold] "probe_complete" -> "shooter_stop_0 18builder" [ style = bold] "probe_complete" [ style=bold color="green" fontcolor="orange"] +"probe_nodes_complete" -> "remote1_start_0 18builder" [ style = bold] +"probe_nodes_complete" [ style=bold color="green" fontcolor="orange"] +"remote1_monitor_0 18builder" -> "probe_complete 18builder" [ style = bold] +"remote1_monitor_0 18builder" [ style=bold color="green" fontcolor="black"] +"remote1_monitor_0 18node1" -> "probe_complete 18node1" [ style = bold] +"remote1_monitor_0 18node1" [ style=bold color="green" fontcolor="black"] +"remote1_monitor_0 18node2" -> "probe_complete 18node2" [ style = bold] +"remote1_monitor_0 18node2" [ style=bold color="green" fontcolor="black"] "remote1_monitor_60000 18builder" [ style=bold color="green" fontcolor="black"] "remote1_start_0 18builder" -> "fake_monitor_0 remote1" [ style = bold] "remote1_start_0 18builder" -> "remote1_monitor_60000 18builder" [ style = bold] "remote1_start_0 18builder" [ style=bold color="green" fontcolor="black"] "shooter_monitor_60000 18node1" [ style=bold color="green" fontcolor="black"] "shooter_start_0 18node1" -> "shooter_monitor_60000 18node1" [ style = bold] "shooter_start_0 18node1" [ style=bold color="green" fontcolor="black"] "shooter_stop_0 18builder" -> "all_stopped" [ style = bold] "shooter_stop_0 18builder" -> "shooter_start_0 18node1" [ style = bold] "shooter_stop_0 18builder" [ style=bold color="green" fontcolor="black"] } diff --git a/pengine/test10/remote-startup.exp b/pengine/test10/remote-startup.exp index f8d47e5f85..1eee447d13 100644 --- a/pengine/test10/remote-startup.exp +++ b/pengine/test10/remote-startup.exp @@ -1,188 +1,246 @@ <transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" transition_id="0"> <synapse id="0"> <action_set> - <rsc_op id="15" operation="monitor" operation_key="shooter_monitor_60000" on_node="18node1" on_node_uuid="1"> + <rsc_op id="18" operation="monitor" operation_key="shooter_monitor_60000" on_node="18node1" on_node_uuid="1"> <primitive id="shooter" class="stonith" type="fence_xvm"/> <attributes CRM_meta_interval="60000" CRM_meta_name="monitor" CRM_meta_timeout="20000" /> </rsc_op> </action_set> <inputs> <trigger> - <rsc_op id="14" operation="start" operation_key="shooter_start_0" on_node="18node1" on_node_uuid="1"/> + <rsc_op id="17" operation="start" operation_key="shooter_start_0" on_node="18node1" on_node_uuid="1"/> </trigger> </inputs> </synapse> <synapse id="1"> <action_set> - <rsc_op id="14" operation="start" operation_key="shooter_start_0" on_node="18node1" on_node_uuid="1"> + <rsc_op id="17" operation="start" operation_key="shooter_start_0" on_node="18node1" on_node_uuid="1"> <primitive id="shooter" class="stonith" type="fence_xvm"/> <attributes CRM_meta_timeout="20000" /> </rsc_op> </action_set> <inputs> <trigger> - <rsc_op id="13" operation="stop" operation_key="shooter_stop_0" on_node="18builder" on_node_uuid="5"/> + <rsc_op id="16" operation="stop" operation_key="shooter_stop_0" on_node="18builder" on_node_uuid="5"/> </trigger> </inputs> </synapse> <synapse id="2"> <action_set> - <rsc_op id="13" operation="stop" operation_key="shooter_stop_0" on_node="18builder" on_node_uuid="5"> + <rsc_op id="16" operation="stop" operation_key="shooter_stop_0" on_node="18builder" on_node_uuid="5"> <primitive id="shooter" class="stonith" type="fence_xvm"/> <attributes CRM_meta_timeout="20000" /> </rsc_op> </action_set> <inputs> <trigger> <pseudo_event id="3" operation="probe_complete" operation_key="probe_complete"/> </trigger> </inputs> </synapse> <synapse id="3"> <action_set> - <rsc_op id="16" operation="start" operation_key="fake_start_0" on_node="18node2" on_node_uuid="2"> + <rsc_op id="19" operation="start" operation_key="fake_start_0" on_node="18node2" on_node_uuid="2"> <primitive id="fake" class="ocf" provider="pacemaker" type="Dummy"/> <attributes CRM_meta_timeout="20000" /> </rsc_op> </action_set> <inputs> <trigger> <pseudo_event id="3" operation="probe_complete" operation_key="probe_complete"/> </trigger> </inputs> </synapse> <synapse id="4"> <action_set> - <rsc_op id="12" operation="monitor" operation_key="fake_monitor_0" on_node="remote1" on_node_uuid="remote1" router_node="18builder"> + <rsc_op id="15" operation="monitor" operation_key="fake_monitor_0" on_node="remote1" on_node_uuid="remote1" router_node="18builder"> <primitive id="fake" class="ocf" provider="pacemaker" type="Dummy"/> <attributes CRM_meta_op_target_rc="7" CRM_meta_timeout="20000" /> </rsc_op> </action_set> <inputs> <trigger> - <rsc_op id="17" operation="start" operation_key="remote1_start_0" on_node="18builder" on_node_uuid="5"/> + <rsc_op id="20" operation="start" operation_key="remote1_start_0" on_node="18builder" on_node_uuid="5"/> </trigger> </inputs> </synapse> <synapse id="5"> <action_set> - <rsc_op id="10" operation="monitor" operation_key="fake_monitor_0" on_node="18node2" on_node_uuid="2"> + <rsc_op id="12" operation="monitor" operation_key="fake_monitor_0" on_node="18node2" on_node_uuid="2"> <primitive id="fake" class="ocf" provider="pacemaker" type="Dummy"/> <attributes CRM_meta_op_target_rc="7" CRM_meta_timeout="20000" /> </rsc_op> </action_set> <inputs/> </synapse> <synapse id="6"> <action_set> - <rsc_op id="8" operation="monitor" operation_key="fake_monitor_0" on_node="18node1" on_node_uuid="1"> + <rsc_op id="9" operation="monitor" operation_key="fake_monitor_0" on_node="18node1" on_node_uuid="1"> <primitive id="fake" class="ocf" provider="pacemaker" type="Dummy"/> <attributes CRM_meta_op_target_rc="7" CRM_meta_timeout="20000" /> </rsc_op> </action_set> <inputs/> </synapse> <synapse id="7"> <action_set> <rsc_op id="6" operation="monitor" operation_key="fake_monitor_0" on_node="18builder" on_node_uuid="5"> <primitive id="fake" class="ocf" provider="pacemaker" type="Dummy"/> <attributes CRM_meta_op_target_rc="7" CRM_meta_timeout="20000" /> </rsc_op> </action_set> <inputs/> </synapse> <synapse id="8"> <action_set> - <rsc_op id="18" operation="monitor" operation_key="remote1_monitor_60000" on_node="18builder" on_node_uuid="5"> + <rsc_op id="21" operation="monitor" operation_key="remote1_monitor_60000" on_node="18builder" on_node_uuid="5"> <primitive id="remote1" class="ocf" provider="pacemaker" type="remote"/> <attributes CRM_meta_interval="60000" CRM_meta_name="monitor" CRM_meta_timeout="20000" /> </rsc_op> </action_set> <inputs> <trigger> - <rsc_op id="17" operation="start" operation_key="remote1_start_0" on_node="18builder" on_node_uuid="5"/> + <rsc_op id="20" operation="start" operation_key="remote1_start_0" on_node="18builder" on_node_uuid="5"/> </trigger> </inputs> </synapse> <synapse id="9"> <action_set> - <rsc_op id="17" operation="start" operation_key="remote1_start_0" on_node="18builder" on_node_uuid="5"> + <rsc_op id="20" operation="start" operation_key="remote1_start_0" on_node="18builder" on_node_uuid="5"> <primitive id="remote1" class="ocf" provider="pacemaker" type="remote"/> <attributes CRM_meta_timeout="20000" /> </rsc_op> </action_set> + <inputs> + <trigger> + <pseudo_event id="4" operation="probe_nodes_complete" operation_key="probe_nodes_complete"/> + </trigger> + </inputs> + </synapse> + <synapse id="10"> + <action_set> + <rsc_op id="13" operation="monitor" operation_key="remote1_monitor_0" on_node="18node2" on_node_uuid="2"> + <primitive id="remote1" class="ocf" provider="pacemaker" type="remote"/> + <attributes CRM_meta_op_target_rc="7" CRM_meta_timeout="20000" /> + </rsc_op> + </action_set> <inputs/> </synapse> - <synapse id="10" priority="1000000"> + <synapse id="11"> <action_set> - <rsc_op id="11" operation="probe_complete" operation_key="probe_complete" on_node="remote1" on_node_uuid="remote1" router_node="18builder"> + <rsc_op id="10" operation="monitor" operation_key="remote1_monitor_0" on_node="18node1" on_node_uuid="1"> + <primitive id="remote1" class="ocf" provider="pacemaker" type="remote"/> + <attributes CRM_meta_op_target_rc="7" CRM_meta_timeout="20000" /> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="12"> + <action_set> + <rsc_op id="7" operation="monitor" operation_key="remote1_monitor_0" on_node="18builder" on_node_uuid="5"> + <primitive id="remote1" class="ocf" provider="pacemaker" type="remote"/> + <attributes CRM_meta_op_target_rc="7" CRM_meta_timeout="20000" /> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="13" priority="1000000"> + <action_set> + <rsc_op id="14" operation="probe_complete" operation_key="probe_complete" on_node="remote1" on_node_uuid="remote1" router_node="18builder"> <attributes CRM_meta_op_no_wait="true" /> </rsc_op> </action_set> <inputs> <trigger> - <rsc_op id="12" operation="monitor" operation_key="fake_monitor_0" on_node="remote1" on_node_uuid="remote1" router_node="18builder"/> + <rsc_op id="15" operation="monitor" operation_key="fake_monitor_0" on_node="remote1" on_node_uuid="remote1" router_node="18builder"/> </trigger> </inputs> </synapse> - <synapse id="11" priority="1000000"> + <synapse id="14" priority="1000000"> <action_set> - <rsc_op id="9" operation="probe_complete" operation_key="probe_complete" on_node="18node2" on_node_uuid="2"> + <rsc_op id="11" operation="probe_complete" operation_key="probe_complete" on_node="18node2" on_node_uuid="2"> <attributes CRM_meta_op_no_wait="true" /> </rsc_op> </action_set> <inputs> <trigger> - <rsc_op id="10" operation="monitor" operation_key="fake_monitor_0" on_node="18node2" on_node_uuid="2"/> + <rsc_op id="12" operation="monitor" operation_key="fake_monitor_0" on_node="18node2" on_node_uuid="2"/> + </trigger> + <trigger> + <rsc_op id="13" operation="monitor" operation_key="remote1_monitor_0" on_node="18node2" on_node_uuid="2"/> </trigger> </inputs> </synapse> - <synapse id="12" priority="1000000"> + <synapse id="15" priority="1000000"> <action_set> - <rsc_op id="7" operation="probe_complete" operation_key="probe_complete" on_node="18node1" on_node_uuid="1"> + <rsc_op id="8" operation="probe_complete" operation_key="probe_complete" on_node="18node1" on_node_uuid="1"> <attributes CRM_meta_op_no_wait="true" /> </rsc_op> </action_set> <inputs> <trigger> - <rsc_op id="8" operation="monitor" operation_key="fake_monitor_0" on_node="18node1" on_node_uuid="1"/> + <rsc_op id="9" operation="monitor" operation_key="fake_monitor_0" on_node="18node1" on_node_uuid="1"/> + </trigger> + <trigger> + <rsc_op id="10" operation="monitor" operation_key="remote1_monitor_0" on_node="18node1" on_node_uuid="1"/> </trigger> </inputs> </synapse> - <synapse id="13" priority="1000000"> + <synapse id="16" priority="1000000"> <action_set> <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="18builder" on_node_uuid="5"> <attributes CRM_meta_op_no_wait="true" /> </rsc_op> </action_set> <inputs> <trigger> <rsc_op id="6" operation="monitor" operation_key="fake_monitor_0" on_node="18builder" on_node_uuid="5"/> </trigger> + <trigger> + <rsc_op id="7" operation="monitor" operation_key="remote1_monitor_0" on_node="18builder" on_node_uuid="5"/> + </trigger> + </inputs> + </synapse> + <synapse id="17"> + <action_set> + <pseudo_event id="4" operation="probe_nodes_complete" operation_key="probe_nodes_complete"> + <attributes /> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="18builder" on_node_uuid="5"/> + </trigger> + <trigger> + <rsc_op id="8" operation="probe_complete" operation_key="probe_complete" on_node="18node1" on_node_uuid="1"/> + </trigger> + <trigger> + <rsc_op id="11" operation="probe_complete" operation_key="probe_complete" on_node="18node2" on_node_uuid="2"/> + </trigger> </inputs> </synapse> - <synapse id="14"> + <synapse id="18"> <action_set> <pseudo_event id="3" operation="probe_complete" operation_key="probe_complete"> <attributes /> </pseudo_event> </action_set> <inputs> <trigger> - <rsc_op id="11" operation="probe_complete" operation_key="probe_complete" on_node="remote1" on_node_uuid="remote1" router_node="18builder"/> + <rsc_op id="14" operation="probe_complete" operation_key="probe_complete" on_node="remote1" on_node_uuid="remote1" router_node="18builder"/> </trigger> </inputs> </synapse> - <synapse id="15"> + <synapse id="19"> <action_set> <pseudo_event id="2" operation="all_stopped" operation_key="all_stopped"> <attributes /> </pseudo_event> </action_set> <inputs> <trigger> - <rsc_op id="13" operation="stop" operation_key="shooter_stop_0" on_node="18builder" on_node_uuid="5"/> + <rsc_op id="16" operation="stop" operation_key="shooter_stop_0" on_node="18builder" on_node_uuid="5"/> </trigger> </inputs> </synapse> </transition_graph> diff --git a/pengine/test10/remote-startup.summary b/pengine/test10/remote-startup.summary index 5004dad7cb..19f18edd30 100644 --- a/pengine/test10/remote-startup.summary +++ b/pengine/test10/remote-startup.summary @@ -1,36 +1,40 @@ Current cluster status: RemoteNode remote1: UNCLEAN (offline) Online: [ 18builder 18node1 18node2 ] shooter (stonith:fence_xvm): Started 18builder fake (ocf::pacemaker:Dummy): Stopped remote1 (ocf::pacemaker:remote): Stopped Transition Summary: * Move shooter (Started 18builder -> 18node1) * Start fake (18node2) * Start remote1 (18builder) Executing cluster transition: * Resource action: fake monitor on 18node2 * Resource action: fake monitor on 18node1 * Resource action: fake monitor on 18builder + * Resource action: remote1 monitor on 18node2 + * Resource action: remote1 monitor on 18node1 + * Resource action: remote1 monitor on 18builder + * Pseudo action: probe_nodes_complete * Resource action: remote1 start on 18builder * Resource action: fake monitor on remote1 * Resource action: remote1 monitor=60000 on 18builder * Pseudo action: probe_complete * Resource action: shooter stop on 18builder * Resource action: fake start on 18node2 * Pseudo action: all_stopped * Resource action: shooter start on 18node1 * Resource action: shooter monitor=60000 on 18node1 Revised cluster status: Online: [ 18builder 18node1 18node2 ] RemoteOnline: [ remote1 ] shooter (stonith:fence_xvm): Started 18node1 fake (ocf::pacemaker:Dummy): Started 18node2 remote1 (ocf::pacemaker:remote): Started 18builder