Bug 1434069
Summary: | [RFE] max_memory_per_executor support | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | Red Hat Satellite | Reporter: | Mike McCune <mmccune> | ||||||
Component: | Tasks Plugin | Assignee: | Ivan Necas <inecas> | ||||||
Status: | CLOSED ERRATA | QA Contact: | Nikhil Kathole <nkathole> | ||||||
Severity: | medium | Docs Contact: | |||||||
Priority: | medium | ||||||||
Version: | 6.2.0 | CC: | aruzicka, bbuckingham, bkearney, ehelms, gpatil, inecas, jcallaha, jsherril, sbadhwar, sghai, tkarlsso | ||||||
Target Milestone: | Unspecified | Keywords: | FutureFeature, PrioBumpField, Triaged | ||||||
Target Release: | Unused | ||||||||
Hardware: | Unspecified | ||||||||
OS: | Unspecified | ||||||||
Whiteboard: | |||||||||
Fixed In Version: | dynflow-0.8.30 | Doc Type: | If docs needed, set a value | ||||||
Doc Text: | Story Points: | --- | |||||||
Clone Of: | Environment: | ||||||||
Last Closed: | 2018-02-21 12:38:27 UTC | Type: | --- | ||||||
Regression: | --- | Mount Type: | --- | ||||||
Documentation: | --- | CRM: | |||||||
Verified Versions: | Category: | --- | |||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||
Embargoed: | |||||||||
Bug Depends On: | |||||||||
Bug Blocks: | 1353215 | ||||||||
Attachments: |
|
Description
Mike McCune
2017-03-20 16:41:17 UTC
Created from redmine issue http://projects.theforeman.org/issues/17175 Upstream bug assigned to sshtein Moving this bug to POST for triage into Satellite 6 since the upstream issue http://projects.theforeman.org/issues/17175 has been resolved. Version Tested: Satellite-6.3 Snap 11 I've set this in /etc/sysconfig/foreman-tasks: EXECUTOR_MEMORY_LIMIT=400MB EXECUTOR_MEMORY_MONITOR_DELAY=60 Than I've followed https://bugzilla.redhat.com/show_bug.cgi?id=1406489#c19, while watching watch 'ps aux | grep "\bdynflow_executor\b"' The executor get though the 400MB threshold, it paused the task, but it didn't finished termination of dynflow process, this is due to the fact that the termination wait for some actions to finish without defining any timeouts, so it can hang forever. Upstream bug assigned to inecas Upstream bug assigned to inecas *** Bug 1492768 has been marked as a duplicate of this bug. *** *** Bug 1416241 has been marked as a duplicate of this bug. *** VERIFIED
Version tested:
Satellite 6.3 snap 35
# rpm -qa | grep get_process_mem
tfm-rubygem-get_process_mem-0.2.1-1.el7sat.noarch
#rpm -q tfm-rubygem-foreman-tasks
tfm-rubygem-foreman-tasks-0.9.6.4-1.fm1_15.el7sat.noarch
# rpm -q tfm-rubygem-dynflow
tfm-rubygem-dynflow-0.8.34-1.fm1_15.el7sat.noarch
Steps:
1. Configured /etc/sysconfig/foreman-tasks:
EXECUTOR_MEMORY_LIMIT=400MB
EXECUTOR_MEMORY_MONITOR_DELAY=10
2. Run Remote Execution job on 350 hosts
3. watch 'ps aux | grep "\bdynflow_executor\b"'
Found termination of dynflow process occured once memory usage reached to 400 MB (see attachment).
Also tried configuring :
EXECUTOR_MEMORY_MONITOR_INTERVAL=15
EXECUTORS_COUNT=3
Once memory usage exceeds limit for a executor, another executor started running. (see attachment 2 [details]).
Created attachment 1392687 [details]
screenrecord of real memory size(RSS) for dynflow_executor
Created attachment 1392688 [details]
screenrecord for EXECUTORS_COUNT=3
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2018:0336 |