
Current cluster status:
Online: [ c001n01 c001n02 c001n03 c001n08 ]

 DcIPaddr	(ocf::heartbeat:IPaddr):	Started c001n08
 Resource Group: group-1
     ocf_192.168.100.181	(ocf::heartbeat:IPaddr):	Started c001n02
     heartbeat_192.168.100.182	(heartbeat:IPaddr):	Started c001n02
     ocf_192.168.100.183	(ocf::heartbeat:IPaddr):	Started c001n02
 lsb_dummy	(lsb:/usr/lib/heartbeat/cts/LSBDummy):	Started c001n03
 rsc_c001n08	(ocf::heartbeat:IPaddr):	Started c001n08
 rsc_c001n02	(ocf::heartbeat:IPaddr):	Started c001n02
 rsc_c001n03	(ocf::heartbeat:IPaddr):	Started c001n03
 rsc_c001n01	(ocf::heartbeat:IPaddr):	Started c001n01
 Clone Set: DoFencing [child_DoFencing] (unique)
     child_DoFencing:0	(stonith:ssh):	Started c001n08
     child_DoFencing:1	(stonith:ssh):	Started c001n02
     child_DoFencing:2	(stonith:ssh):	Started c001n03
     child_DoFencing:3	(stonith:ssh):	Started c001n01
 Master/Slave Set: master_rsc_1 [ocf_msdummy] (unique)
     ocf_msdummy:0	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Master c001n08
     ocf_msdummy:1	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Slave c001n02 
     ocf_msdummy:2	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Slave c001n03 
     ocf_msdummy:3	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Slave c001n08 
     ocf_msdummy:4	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Slave c001n02 
     ocf_msdummy:5	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Slave c001n03 
     ocf_msdummy:6	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Slave c001n01 
     ocf_msdummy:7	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Slave c001n01 

Transition Summary:

Executing cluster transition:
 * Resource action: child_DoFencing:1 monitor on c001n08
 * Resource action: child_DoFencing:1 monitor on c001n03
 * Resource action: child_DoFencing:1 monitor on c001n01
 * Resource action: child_DoFencing:2 monitor on c001n08
 * Resource action: child_DoFencing:2 monitor on c001n01
 * Resource action: child_DoFencing:3 monitor on c001n08
 * Resource action: child_DoFencing:3 monitor on c001n03
 * Resource action: child_DoFencing:3 monitor on c001n02
 * Resource action: ocf_msdummy:2   monitor on c001n08
 * Resource action: ocf_msdummy:2   monitor on c001n01
 * Resource action: ocf_msdummy:3   monitor on c001n03
 * Resource action: ocf_msdummy:3   monitor on c001n01
 * Resource action: ocf_msdummy:4   monitor on c001n08
 * Resource action: ocf_msdummy:4   monitor on c001n03
 * Resource action: ocf_msdummy:4   monitor on c001n01
 * Resource action: ocf_msdummy:5   monitor on c001n08
 * Resource action: ocf_msdummy:5   monitor on c001n02
 * Resource action: ocf_msdummy:5   monitor on c001n01
 * Resource action: ocf_msdummy:6   monitor on c001n08
 * Resource action: ocf_msdummy:6   monitor on c001n03
 * Resource action: ocf_msdummy:6   monitor on c001n02
 * Resource action: ocf_msdummy:7   monitor on c001n08
 * Resource action: ocf_msdummy:7   monitor on c001n03
 * Resource action: ocf_msdummy:7   monitor on c001n02

Revised cluster status:
Online: [ c001n01 c001n02 c001n03 c001n08 ]

 DcIPaddr	(ocf::heartbeat:IPaddr):	Started c001n08
 Resource Group: group-1
     ocf_192.168.100.181	(ocf::heartbeat:IPaddr):	Started c001n02
     heartbeat_192.168.100.182	(heartbeat:IPaddr):	Started c001n02
     ocf_192.168.100.183	(ocf::heartbeat:IPaddr):	Started c001n02
 lsb_dummy	(lsb:/usr/lib/heartbeat/cts/LSBDummy):	Started c001n03
 rsc_c001n08	(ocf::heartbeat:IPaddr):	Started c001n08
 rsc_c001n02	(ocf::heartbeat:IPaddr):	Started c001n02
 rsc_c001n03	(ocf::heartbeat:IPaddr):	Started c001n03
 rsc_c001n01	(ocf::heartbeat:IPaddr):	Started c001n01
 Clone Set: DoFencing [child_DoFencing] (unique)
     child_DoFencing:0	(stonith:ssh):	Started c001n08
     child_DoFencing:1	(stonith:ssh):	Started c001n02
     child_DoFencing:2	(stonith:ssh):	Started c001n03
     child_DoFencing:3	(stonith:ssh):	Started c001n01
 Master/Slave Set: master_rsc_1 [ocf_msdummy] (unique)
     ocf_msdummy:0	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Master c001n08
     ocf_msdummy:1	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Slave c001n02 
     ocf_msdummy:2	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Slave c001n03 
     ocf_msdummy:3	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Slave c001n08 
     ocf_msdummy:4	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Slave c001n02 
     ocf_msdummy:5	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Slave c001n03 
     ocf_msdummy:6	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Slave c001n01 
     ocf_msdummy:7	(ocf::heartbeat:/usr/lib/heartbeat/cts/OCFMSDummy):	Slave c001n01 

