Merge "Start using uWSGI role"
This commit is contained in:
commit
9e5ec1f8d5
|
@ -134,8 +134,11 @@ gnocchi_services:
|
|||
service_name: "gnocchi-api"
|
||||
service_enabled: true
|
||||
init_config_overrides: "{{ gnocchi_api_init_overrides }}"
|
||||
execstarts: "{{ gnocchi_bin }}/uwsgi --autoload --ini /etc/uwsgi/gnocchi-api.ini"
|
||||
execreloads: "{{ gnocchi_bin }}/uwsgi --reload /var/run/gnocchi-api/gnocchi-api.pid"
|
||||
wsgi_app: True
|
||||
wsgi_path: "{{ gnocchi_bin }}/gnocchi-api"
|
||||
uwsgi_bind_address: "{{ gnocchi_service_address }}"
|
||||
uwsgi_port: "{{ gnocchi_service_port }}"
|
||||
uwsgi_overrides: "{{ gnocchi_uwsgi_conf_overrides }}"
|
||||
gnocchi-metricd:
|
||||
group: "gnocchi_metricd"
|
||||
service_name: "gnocchi-metricd"
|
||||
|
@ -153,7 +156,6 @@ gnocchi_pip_packages:
|
|||
- kazoo
|
||||
- redis
|
||||
- systemd-python
|
||||
- uwsgi
|
||||
|
||||
# This variable is used by the repo_build process to determine
|
||||
# which host group to check for members of before building the
|
||||
|
|
|
@ -15,14 +15,14 @@
|
|||
|
||||
- name: Stop services
|
||||
service:
|
||||
name: "{{ item.value.service_name }}"
|
||||
name: "{{ item.service_name }}"
|
||||
enabled: yes
|
||||
state: "stopped"
|
||||
daemon_reload: yes
|
||||
with_dict: "{{ gnocchi_services }}"
|
||||
with_items: "{{ filtered_gnocchi_services }}"
|
||||
when:
|
||||
- "item.value.group in group_names"
|
||||
- item.value.service_enabled | bool
|
||||
- "item.group in group_names"
|
||||
- item.service_enabled | bool
|
||||
register: _stop
|
||||
until: _stop is success
|
||||
retries: 5
|
||||
|
@ -53,14 +53,14 @@
|
|||
|
||||
- name: Start services
|
||||
service:
|
||||
name: "{{ item.value.service_name }}"
|
||||
name: "{{ item.service_name }}"
|
||||
enabled: yes
|
||||
state: "started"
|
||||
daemon_reload: yes
|
||||
with_dict: "{{ gnocchi_services }}"
|
||||
with_items: "{{ filtered_gnocchi_services }}"
|
||||
when:
|
||||
- "item.value.group in group_names"
|
||||
- item.value.service_enabled | bool
|
||||
- "item.group in group_names"
|
||||
- item.service_enabled | bool
|
||||
register: _start
|
||||
until: _start is success
|
||||
retries: 5
|
||||
|
|
|
@ -47,26 +47,9 @@
|
|||
content: "{{ gnocchi_policy_user_content | default(gnocchi_policy_default_content, true) }}"
|
||||
notify:
|
||||
- Restart gnocchi services
|
||||
- Restart uwsgi services
|
||||
- Restart web server
|
||||
|
||||
- name: Configurng uWSGI
|
||||
block:
|
||||
- name: Ensure uWSGI directory exists
|
||||
file:
|
||||
path: "/etc/uwsgi/"
|
||||
state: directory
|
||||
mode: "0711"
|
||||
- name: Apply uWSGI configuration
|
||||
config_template:
|
||||
src: "gnocchi-uwsgi.ini.j2"
|
||||
dest: "/etc/uwsgi/gnocchi-api.ini"
|
||||
mode: "0644"
|
||||
config_overrides: "{{ gnocchi_uwsgi_conf_overrides }}"
|
||||
config_type: ini
|
||||
notify:
|
||||
- Restart gnocchi services
|
||||
when: "'gnocchi_api' in group_names"
|
||||
|
||||
# NOTE(noonedeadpunk): This task is created due to migration from apache to uwsgi
|
||||
# which was introduced during train release. It can be dropped afterwards.
|
||||
- name: Drop Apache related configs
|
||||
|
|
|
@ -83,6 +83,16 @@
|
|||
- gnocchi-config
|
||||
- systemd-service
|
||||
|
||||
- name: Import uwsgi role
|
||||
import_role:
|
||||
name: uwsgi
|
||||
vars:
|
||||
uwsgi_services: "{{ uwsgi_gnocchi_services }}"
|
||||
uwsgi_install_method: "source"
|
||||
tags:
|
||||
- gnocchi-config
|
||||
- uwsgi
|
||||
|
||||
- import_tasks: service_setup.yml
|
||||
vars:
|
||||
_service_adminuri_insecure: "{{ keystone_service_adminuri_insecure }}"
|
||||
|
|
|
@ -1,25 +0,0 @@
|
|||
[uwsgi]
|
||||
uid = {{ gnocchi_system_user_name }}
|
||||
gid = {{ gnocchi_system_group_name }}
|
||||
|
||||
virtualenv = /openstack/venvs/gnocchi-{{ gnocchi_venv_tag }}
|
||||
wsgi-file = {{ gnocchi_bin }}/gnocchi-api
|
||||
http-socket = {{ gnocchi_service_address }}:{{ gnocchi_service_port }}
|
||||
|
||||
master = true
|
||||
enable-threads = true
|
||||
processes = {{ gnocchi_wsgi_processes }}
|
||||
threads = {{ gnocchi_wsgi_threads }}
|
||||
exit-on-reload = true
|
||||
die-on-term = true
|
||||
lazy-apps = true
|
||||
add-header = Connection: close
|
||||
buffer-size = 65535
|
||||
thunder-lock = true
|
||||
disable-logging = true
|
||||
http-auto-chunked = true
|
||||
http-raw-body = true
|
||||
socket-timeout = 10
|
||||
|
||||
# Avoid filling up the logs with health check requests from haproxy.
|
||||
route-user-agent = ^osa-haproxy-healthcheck$ donotlog:
|
|
@ -58,3 +58,7 @@
|
|||
src: https://opendev.org/openstack/ansible-role-python_venv_build
|
||||
scm: git
|
||||
version: master
|
||||
- name: uwsgi
|
||||
src: https://opendev.org/openstack/ansible-role-uwsgi
|
||||
scm: git
|
||||
version: master
|
||||
|
|
|
@ -28,7 +28,8 @@ filtered_gnocchi_services: |-
|
|||
{% for name, service in gnocchi_services.items() %}
|
||||
{% if (service['group'] in group_names) and
|
||||
(('service_enabled' not in service) or
|
||||
('service_enabled' in service and service['service_enabled'])) %}
|
||||
('service_enabled' in service and service['service_enabled']))
|
||||
and not ('wsgi_app' in service and service['wsgi_app']) %}
|
||||
{% set _ = service.update(
|
||||
{
|
||||
'service_key': name,
|
||||
|
@ -48,3 +49,24 @@ filtered_gnocchi_services: |-
|
|||
{% endif %}
|
||||
{% endfor %}
|
||||
{{ services }}
|
||||
|
||||
uwsgi_gnocchi_services: |-
|
||||
{% set services = {} %}
|
||||
{% for name, service in gnocchi_services.items() %}
|
||||
{% if (service['group'] in group_names) and
|
||||
(('service_enabled' not in service) or
|
||||
('service_enabled' in service and service['service_enabled']))
|
||||
and ('wsgi_app' in service and service['wsgi_app']) %}
|
||||
{% set _ = service.update(
|
||||
{
|
||||
'wsgi_venv': gnocchi_bin | dirname,
|
||||
'uwsgi_uid': gnocchi_system_user_name,
|
||||
'uwsgi_guid': gnocchi_system_group_name,
|
||||
'uwsgi_processes': gnocchi_wsgi_processes,
|
||||
'uwsgi_threads': gnocchi_wsgi_threads,
|
||||
}
|
||||
) %}
|
||||
{% set _ = services.update({name: service}) %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{{ services }}
|
||||
|
|
Loading…
Reference in New Issue