aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorliyuenan <liyuenan@huawei.com>2017-02-16 09:08:52 +0800
committerliyuenan <liyuenan@huawei.com>2017-02-20 13:48:54 +0800
commit744d6f99424491429b0a307c9f85e2ae50a8826a (patch)
tree3e0d1682ba3c4bf5d9675d7b1ef8191c34ac49b0
parent9b3c5d5f10e99a4612bf3e05274c8d183da9f2ca (diff)
FIX access database failed
JIRA: COMPASS-521 Use a dynamic value to set number of workers for Openstack API service when the number of cpu more than 4. Change-Id: Ic6482cfad9b5eba8fad9e56ea1a33f65e8c71001 Signed-off-by: liyuenan <liyuenan@huawei.com>
-rw-r--r--deploy/adapters/ansible/openstack/templates/nova.conf12
-rw-r--r--deploy/adapters/ansible/roles/cinder-controller/templates/cinder.conf9
-rw-r--r--deploy/adapters/ansible/roles/heat/templates/heat.j213
3 files changed, 20 insertions, 14 deletions
diff --git a/deploy/adapters/ansible/openstack/templates/nova.conf b/deploy/adapters/ansible/openstack/templates/nova.conf
index b648b030..3cd2c03b 100644
--- a/deploy/adapters/ansible/openstack/templates/nova.conf
+++ b/deploy/adapters/ansible/openstack/templates/nova.conf
@@ -3,6 +3,11 @@
{% set _ = memcached_servers.append('%s:11211'% host) %}
{% endfor %}
{% set memcached_servers = memcached_servers|join(',') %}
+{% if ansible_processor_vcpus > 10 %}
+{% set api_workers = ansible_processor_vcpus // 10 %}
+{% else %}
+{% set api_workers = 1 %}
+{% endif %}
[DEFAULT]
dhcpbridge_flagfile=/etc/nova/nova.conf
@@ -38,11 +43,8 @@ notify_on_state_change = vm_and_task_state
notification_driver = nova.openstack.common.notifier.rpc_notifier
notification_driver = ceilometer.compute.nova_notifier
memcached_servers = {{ memcached_servers }}
-
-{% if ansible_processor_vcpus > 20 %}
-osapi_compute_workers = 20
-metadata_workers = 20
-{% endif %}
+osapi_compute_workers = {{ api_workers }}
+metadata_workers = {{ api_workers }}
[database]
# The SQLAlchemy connection string used to connect to the database
diff --git a/deploy/adapters/ansible/roles/cinder-controller/templates/cinder.conf b/deploy/adapters/ansible/roles/cinder-controller/templates/cinder.conf
index 05a1c8fd..8b035653 100644
--- a/deploy/adapters/ansible/roles/cinder-controller/templates/cinder.conf
+++ b/deploy/adapters/ansible/roles/cinder-controller/templates/cinder.conf
@@ -3,6 +3,11 @@
{% set _ = memcached_servers.append('%s:11211'% host) %}
{% endfor %}
{% set memcached_servers = memcached_servers|join(',') %}
+{% if ansible_processor_vcpus > 5 %}
+{% set api_workers = ansible_processor_vcpus // 5 %}
+{% else %}
+{% set api_workers = 1 %}
+{% endif %}
[DEFAULT]
rootwrap_config = /etc/cinder/rootwrap.conf
@@ -35,9 +40,7 @@ quota_driver = cinder.quota.DbQuotaDriver
osapi_volume_listen = {{ storage_controller_host }}
osapi_volume_listen_port = 8776
-{% if ansible_processor_vcpus > 30 %}
-osapi_volume_workers = 30
-{% endif %}
+osapi_volume_workers = {{ api_workers }}
db_backend = sqlalchemy
volume_name_template = volume-%s
diff --git a/deploy/adapters/ansible/roles/heat/templates/heat.j2 b/deploy/adapters/ansible/roles/heat/templates/heat.j2
index a7856103..d73bd70b 100644
--- a/deploy/adapters/ansible/roles/heat/templates/heat.j2
+++ b/deploy/adapters/ansible/roles/heat/templates/heat.j2
@@ -3,6 +3,11 @@
{% set _ = memcached_servers.append('%s:11211'% host) %}
{% endfor %}
{% set memcached_servers = memcached_servers|join(',') %}
+{% if ansible_processor_vcpus > 5 %}
+{% set api_workers = ansible_processor_vcpus // 5 %}
+{% else %}
+{% set api_workers = 1 %}
+{% endif %}
[DEFAULT]
heat_metadata_server_url = http://{{ internal_vip.ip }}:8000
@@ -12,14 +17,10 @@ log_dir = /var/log/heat
stack_domain_admin = heat_domain_admin
stack_domain_admin_password = {{ HEAT_PASS }}
stack_user_domain_name = heat
-{% if ansible_processor_vcpus > 30 %}
-num_engine_workers = 30
-{% endif %}
+num_engine_workers = {{ api_workers}}
[heat_api]
-{% if ansible_processor_vcpus > 30 %}
-workers = 30
-{% endif %}
+workers = {{ api_workers }}
[database]
connection = mysql://heat:{{ HEAT_DBPASS }}@{{ db_host }}/heat