canonical / juju-lint

GNU General Public License v3.0
0 stars 3 forks source link

Check that worker-multiplier is set #107

Closed zxhdaze closed 3 months ago

zxhdaze commented 3 months ago

Most of openstack API units have a worker multiplier. If this is unset it will default to 4 workers for each API units. Most of clouds have at 0.25.

Default 4 workers is too less for a production cloud and we saw random http 502 when this was unset.

Juju lint should raise a warning/critical if this is unset especially for keystone, neutron-api, nova-c-c, cinder, octavia, placement, glance

Also nova-compute has it and we usually set to 0.1


Imported from Launchpad using lp2gh.

zxhdaze commented 3 months ago

(by nobuto) Please note that 4 workers are not ideal but a fixed number as multiplier was also problematic.

We need to pay attention to resource consumption of higher number of workers and also mysql connections.

For example with some AMD CPUs, 0.25 can be 64 workers per one service (64 cores per socket 2 threads per core 2 sockets) and one unit can run multiple services.

References: https://bugs.launchpad.net/charm-mysql-router/+bug/1969927 https://bugs.launchpad.net/fce-templates/+bug/18897197

zxhdaze commented 3 months ago

(by peppepetra) I totally agree on that. juju-lint should just check that this is set to something and not default 4 when unset. The correct multiplier should be chosen at design time bearing in mind the architecture of the cloud hyperconverged or not and the CPUs on machines hosting the lxds.