Control amount of conductor workers

As of today we didn't manage amount of magnum-conductors that equal to
amount of CPU on host. So things can go off regarding CPU and memory
consumption. For better control on resources we add variable to control
conductor workers.

Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/846151
Change-Id: I3eedd74717b3b621b4e0b6ae4a8df4ee6f1eb739
This commit is contained in:
Dmitriy Rabotyagov 2022-06-16 13:52:27 +02:00 committed by Dmitriy Rabotyagov
parent 1a3615afdf
commit 5e1780b809
3 changed files with 13 additions and 0 deletions

View File

@ -225,3 +225,7 @@ magnum_wsgi_processes_max: 16
magnum_wsgi_processes: "{{ [[(ansible_facts['processor_vcpus']//ansible_facts['processor_threads_per_core'])|default(1), 1] | max * 2, magnum_wsgi_processes_max] | min }}"
magnum_wsgi_threads: 1
magnum_api_uwsgi_bind_address: "{{ openstack_service_bind_address | default('0.0.0.0') }}"
# conductor settings
magnum_conductor_workers_max: 16
magnum_conductor_workers: "{{ [[(ansible_facts['processor_vcpus']//ansible_facts['processor_threads_per_core'])|default(1), 1] | max * 2, magnum_conductor_workers_max] | min }}"

View File

@ -0,0 +1,6 @@
---
features:
- |
Implemented variable ``magnum_conductor_workers`` that is designed to
controll amount of magnum-conductor workers spawned. By default it is
equal to number of CPU cores, but no more then 16 workers.

View File

@ -22,6 +22,9 @@ endpoint_type = internalURL
region_name = {{ magnum_cinder_service_region }}
endpoint_type = internalURL
[conductor]
workers = {{ magnum_conductor_workers }}
[database]
connection = mysql+pymysql://{{ magnum_galera_user }}:{{ magnum_galera_password }}@{{ magnum_galera_address }}/{{ magnum_galera_database_name }}?charset=utf8{% if magnum_galera_use_ssl | bool %}&ssl_verify_cert=true{% if magnum_galera_ssl_ca_cert | length > 0 %}&ssl_ca={{ magnum_galera_ssl_ca_cert }}{% endif %}{% endif +%}
max_overflow = {{ magnum_db_max_overflow }}