Lower number of workers by default
Bug #1665270 reported by
Peter Sabaini
This bug affects 3 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Charm Helpers |
Fix Released
|
High
|
James Page | ||
OpenStack Cinder Charm |
Fix Released
|
High
|
Unassigned | ||
OpenStack Glance Charm |
Fix Released
|
High
|
James Page | ||
OpenStack Heat Charm |
Fix Released
|
High
|
Unassigned | ||
OpenStack Keystone Charm |
Fix Released
|
High
|
James Page | ||
OpenStack Neutron API Charm |
Fix Released
|
High
|
Unassigned | ||
OpenStack Neutron Gateway Charm |
Fix Released
|
High
|
Unassigned | ||
OpenStack Nova Cloud Controller Charm |
Fix Released
|
High
|
Unassigned | ||
cinder (Juju Charms Collection) |
Invalid
|
Undecided
|
Unassigned | ||
glance (Juju Charms Collection) |
Invalid
|
Undecided
|
Unassigned | ||
heat (Juju Charms Collection) |
Invalid
|
Undecided
|
Unassigned | ||
keystone (Juju Charms Collection) |
Invalid
|
Undecided
|
Unassigned | ||
neutron-api (Juju Charms Collection) |
Invalid
|
Undecided
|
Unassigned | ||
neutron-gateway (Juju Charms Collection) |
Invalid
|
Undecided
|
Unassigned | ||
nova-cloud-controller (Juju Charms Collection) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
On containerized setups with multiple cpus and hyperthreading on the metals the containers can see a large number of cores. With the default worker multiplier settings this eg. results in 112 workers plus a leader processes on one of our installs. With HA we have then 3x113 processes serving in total, which is a bit of a waste (3x16G of RSS for one service, as an example)
While this can be tuned down I'd suggest to cap the number of workers when the worker-multiplier setting is on default to make this more sensible out of the box
Related branches
lp:~james-page/charm-helpers/bug1665270
- Chris MacNaughton (community): Approve
- charmers: Pending requested
-
Diff: 96 lines (+40/-4)2 files modifiedcharmhelpers/contrib/openstack/context.py (+15/-1)
tests/contrib/openstack/test_os_contexts.py (+25/-3)
description: | updated |
Changed in cinder (Juju Charms Collection): | |
status: | New → Invalid |
Changed in glance (Juju Charms Collection): | |
status: | New → Invalid |
Changed in heat (Juju Charms Collection): | |
status: | New → Invalid |
Changed in keystone (Juju Charms Collection): | |
status: | New → Invalid |
Changed in neutron-api (Juju Charms Collection): | |
status: | New → Invalid |
Changed in neutron-gateway (Juju Charms Collection): | |
status: | New → Invalid |
Changed in nova-cloud-controller (Juju Charms Collection): | |
status: | New → Invalid |
Changed in charm-helpers: | |
assignee: | nobody → James Page (james-page) |
importance: | Undecided → High |
status: | New → In Progress |
Changed in charm-helpers: | |
status: | In Progress → Fix Committed |
Changed in charm-keystone: | |
assignee: | nobody → James Page (james-page) |
status: | Triaged → In Progress |
Changed in charm-glance: | |
milestone: | none → 17.05 |
Changed in charm-keystone: | |
milestone: | none → 17.05 |
Changed in charm-helpers: | |
status: | Fix Committed → Fix Released |
Changed in charm-cinder: | |
milestone: | none → 17.05 |
Changed in charm-heat: | |
milestone: | none → 17.05 |
Changed in charm-neutron-api: | |
milestone: | none → 17.05 |
Changed in charm-neutron-gateway: | |
milestone: | none → 17.05 |
Changed in charm-nova-cloud-controller: | |
milestone: | none → 17.05 |
Changed in charm-cinder: | |
milestone: | 17.05 → 17.08 |
Changed in charm-glance: | |
milestone: | 17.05 → 17.08 |
Changed in charm-heat: | |
milestone: | 17.05 → 17.08 |
Changed in charm-keystone: | |
milestone: | 17.05 → 17.08 |
Changed in charm-neutron-api: | |
milestone: | 17.05 → 17.08 |
Changed in charm-neutron-gateway: | |
milestone: | 17.05 → 17.08 |
Changed in charm-nova-cloud-controller: | |
milestone: | 17.05 → 17.08 |
Changed in charm-cinder: | |
status: | Fix Committed → Fix Released |
Changed in charm-glance: | |
status: | Fix Committed → Fix Released |
Changed in charm-heat: | |
status: | Fix Committed → Fix Released |
Changed in charm-keystone: | |
status: | Fix Committed → Fix Released |
Changed in charm-neutron-api: | |
status: | Fix Committed → Fix Released |
Changed in charm-neutron-gateway: | |
status: | Fix Committed → Fix Released |
Changed in charm-nova-cloud-controller: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
+1 to the need for this. I think we should consider adding a cap as a config option.
This is an issue in testing and publishing bundles that are one-size-fits-all. For example, the openstack-base or openstack-on-lxd bundles may work great on 8c or 16c boxes, but require tuning down max workers for ~7 charm applications on machines with 48c so as not to OOM the hosts.
One alternative/ additive view is that Juju should implement container resource limits. I agree that is needed for this and other reasons. However, that wouldn't give the max workers cap tunable that is desired here.