Bug 1385753 - ClusterMon will not kill crm_mon process correctly
Summary: ClusterMon will not kill crm_mon process correctly
Keywords:
Status: CLOSED DUPLICATE of bug 1378817
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: pacemaker
Version: 7.3
Hardware: All
OS: All
medium
low
Target Milestone: rc
: 7.4
Assignee: Ken Gaillot
QA Contact: cluster-qe@redhat.com
URL:
Whiteboard:
Depends On: 1360234
Blocks: 1378817
TreeView+ depends on / blocked
 
Reported: 2016-10-17 15:58 UTC by Ken Gaillot
Modified: 2020-05-14 15:20 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 1360234
Environment:
Last Closed: 2016-10-17 16:01:17 UTC
Target Upstream Version:


Attachments (Terms of Use)

Description Ken Gaillot 2016-10-17 15:58:13 UTC
+++ This bug was initially created as a clone of Bug #1360234 +++

Description of problem:


After putting the cluster in maintanance mode, then reboot the nodes and resetting the maintenance status sometimes the ClusterMon resource keeps running even if "crm_mon" is NOT running. Normally ClusterMon should detect the missing "crm_mon" in reliable way to report the node as "bad"


The mechanism used  by "ClusterMon" script delivered in "/usr/lib/ocf/resource.d/pacemaker/ClusterMon":

The script checks the content of the PID file created by "crm_mon" and tries to send a signal ("kill -s 0 <PID>" ) to this PID.

If any process is running with this PID the resource agent script reports that "crm_mon" is running. But this can be any process running with this PID (e.g. after the reboot of the machine this could be another daemon process)
In this case the reported value of the agent is wrong.


Steps to Reproduce:
1. Set ClusterMon resource 
2. Put node into maintenance mode
3. Reboot node
4. Either find way to force PID, originally assigned to original crm_mon PID, to other process (or try couple times so it happens randomly)
5. Disable maintenance mode 


Actual results:
If PID of crm_mon changes after reboot the ClusterMon_monitor still checks the old PID and can kill other process instead


Expected results:
ClusterMon_monitor checks PID of actual crm_mon (not the old one)

Comment 1 Ken Gaillot 2016-10-17 16:01:17 UTC

*** This bug has been marked as a duplicate of bug 1378817 ***


Note You need to log in before you can comment on or make changes to this bug.