diff --git a/ansible/group_vars/all.yml b/ansible/group_vars/all.yml index 765ed886e3..7ee3f0b8f6 100644 --- a/ansible/group_vars/all.yml +++ b/ansible/group_vars/all.yml @@ -271,6 +271,7 @@ om_rabbitmq_cacert: "{{ rabbitmq_cacert }}" om_enable_rabbitmq_high_availability: false # Only enable quorum queues if you disable om_enable_rabbitmq_high_availability om_enable_rabbitmq_quorum_queues: true +om_enable_queue_manager: false #################### # Networking options diff --git a/ansible/roles/aodh/defaults/main.yml b/ansible/roles/aodh/defaults/main.yml index bbe08bc1d7..c1dab047b9 100644 --- a/ansible/roles/aodh/defaults/main.yml +++ b/ansible/roles/aodh/defaults/main.yml @@ -181,24 +181,28 @@ aodh_api_default_volumes: - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "aodh:/var/lib/aodh/" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/aodh/:/dev-mode/aodh' if aodh_dev_mode | bool else '' }}" aodh_evaluator_default_volumes: - "{{ node_config_directory }}/aodh-evaluator/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/aodh/:/dev-mode/aodh' if aodh_dev_mode | bool else '' }}" aodh_listener_default_volumes: - "{{ node_config_directory }}/aodh-listener/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/aodh/:/dev-mode/aodh' if aodh_dev_mode | bool else '' }}" aodh_notifier_default_volumes: - "{{ node_config_directory }}/aodh-notifier/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/aodh/:/dev-mode/aodh' if aodh_dev_mode | bool else '' }}" aodh_extra_volumes: "{{ default_extra_volumes }}" diff --git a/ansible/roles/aodh/tasks/check.yml b/ansible/roles/aodh/tasks/check.yml index ed97d539c0..c278b658ff 100644 --- a/ansible/roles/aodh/tasks/check.yml +++ b/ansible/roles/aodh/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Aodh containers + import_role: + role: service-check diff --git a/ansible/roles/aodh/templates/aodh.conf.j2 b/ansible/roles/aodh/templates/aodh.conf.j2 index 266b51d8c4..5ed56d9eea 100644 --- a/ansible/roles/aodh/templates/aodh.conf.j2 +++ b/ansible/roles/aodh/templates/aodh.conf.j2 @@ -72,3 +72,8 @@ amqp_durable_queues = true {% if om_enable_rabbitmq_quorum_queues | bool %} rabbit_quorum_queue = true {% endif %} + +{% if om_enable_queue_manager | bool %} +[oslo_concurrency] +lock_path = /var/lib/aodh/tmp +{% endif %} diff --git a/ansible/roles/barbican/defaults/main.yml b/ansible/roles/barbican/defaults/main.yml index 6553375346..212ad950e2 100644 --- a/ansible/roles/barbican/defaults/main.yml +++ b/ansible/roles/barbican/defaults/main.yml @@ -139,18 +139,21 @@ barbican_api_default_volumes: - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "barbican:/var/lib/barbican/" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/barbican:/dev-mode/barbican' if barbican_dev_mode | bool else '' }}" barbican_keystone_listener_default_volumes: - "{{ node_config_directory }}/barbican-keystone-listener/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/barbican:/dev-mode/barbican' if barbican_dev_mode | bool else '' }}" barbican_worker_default_volumes: - "{{ node_config_directory }}/barbican-worker/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/barbican:/dev-mode/barbican' if barbican_dev_mode | bool else '' }}" barbican_extra_volumes: "{{ default_extra_volumes }}" diff --git a/ansible/roles/barbican/tasks/check.yml b/ansible/roles/barbican/tasks/check.yml new file mode 100644 index 0000000000..ebc2101108 --- /dev/null +++ b/ansible/roles/barbican/tasks/check.yml @@ -0,0 +1,4 @@ +--- +- name: Checking Barbican containers + import_role: + role: service-check diff --git a/ansible/roles/barbican/templates/barbican.conf.j2 b/ansible/roles/barbican/templates/barbican.conf.j2 index d8588a6127..63df7a89fc 100644 --- a/ansible/roles/barbican/templates/barbican.conf.j2 +++ b/ansible/roles/barbican/templates/barbican.conf.j2 @@ -103,3 +103,8 @@ enable_proxy_headers_parsing = True [oslo_policy] policy_file = {{ barbican_policy_file }} {% endif %} + +{% if om_enable_queue_manager | bool %} +[oslo_concurrency] +lock_path = /var/lib/barbican/tmp +{% endif %} diff --git a/ansible/roles/blazar/defaults/main.yml b/ansible/roles/blazar/defaults/main.yml index be3785543a..a49f0d8cac 100644 --- a/ansible/roles/blazar/defaults/main.yml +++ b/ansible/roles/blazar/defaults/main.yml @@ -124,12 +124,14 @@ blazar_api_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/blazar:/dev-mode/blazar' if blazar_dev_mode | bool else '' }}" blazar_manager_default_volumes: - "{{ node_config_directory }}/blazar-manager/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/blazar:/dev-mode/blazar' if blazar_dev_mode | bool else '' }}" blazar_extra_volumes: "{{ default_extra_volumes }}" diff --git a/ansible/roles/blazar/tasks/check.yml b/ansible/roles/blazar/tasks/check.yml index ed97d539c0..8eca8c3372 100644 --- a/ansible/roles/blazar/tasks/check.yml +++ b/ansible/roles/blazar/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Blazar containers + import_role: + role: service-check diff --git a/ansible/roles/blazar/templates/blazar.conf.j2 b/ansible/roles/blazar/templates/blazar.conf.j2 index a865187e05..13ab3e8bd4 100644 --- a/ansible/roles/blazar/templates/blazar.conf.j2 +++ b/ansible/roles/blazar/templates/blazar.conf.j2 @@ -71,3 +71,8 @@ rabbit_quorum_queue = true [oslo_policy] policy_file = {{ blazar_policy_file }} {% endif %} + +{% if om_enable_queue_manager | bool %} +[oslo_concurrency] +lock_path = /var/lib/blazar/tmp +{% endif %} diff --git a/ansible/roles/ceilometer/defaults/main.yml b/ansible/roles/ceilometer/defaults/main.yml index 04cf4bbc32..13fed94d4a 100644 --- a/ansible/roles/ceilometer/defaults/main.yml +++ b/ansible/roles/ceilometer/defaults/main.yml @@ -124,6 +124,7 @@ ceilometer_notification_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/ceilometer:/dev-mode/ceilometer' if ceilometer_dev_mode | bool else '' }}" ceilometer_central_default_volumes: - "{{ node_config_directory }}/ceilometer-central/:{{ container_config_directory }}/:ro" @@ -131,6 +132,7 @@ ceilometer_central_default_volumes: - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "ceilometer:/var/lib/ceilometer/" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/ceilometer:/dev-mode/ceilometer' if ceilometer_dev_mode | bool else '' }}" ceilometer_compute_default_volumes: - "{{ node_config_directory }}/ceilometer-compute/:{{ container_config_directory }}/:ro" @@ -139,6 +141,7 @@ ceilometer_compute_default_volumes: - "/run:/run{{ ':shared' if kolla_container_engine == 'docker' else '' }}" - "ceilometer:/var/lib/ceilometer/" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ ceilometer_libvirt_volume }}:/var/lib/libvirt" - "{{ kolla_dev_repos_directory ~ '/ceilometer:/dev-mode/ceilometer' if ceilometer_dev_mode | bool else '' }}" ceilometer_ipmi_default_volumes: @@ -147,6 +150,7 @@ ceilometer_ipmi_default_volumes: - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "ceilometer:/var/lib/ceilometer/" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/ceilometer:/dev-mode/ceilometer' if ceilometer_dev_mode | bool else '' }}" ceilometer_extra_volumes: "{{ default_extra_volumes }}" diff --git a/ansible/roles/ceilometer/tasks/check.yml b/ansible/roles/ceilometer/tasks/check.yml index ed97d539c0..28ea6b2ab9 100644 --- a/ansible/roles/ceilometer/tasks/check.yml +++ b/ansible/roles/ceilometer/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Ceilometer containers + import_role: + role: service-check diff --git a/ansible/roles/ceilometer/templates/ceilometer.conf.j2 b/ansible/roles/ceilometer/templates/ceilometer.conf.j2 index 309c5379b7..f34f703591 100644 --- a/ansible/roles/ceilometer/templates/ceilometer.conf.j2 +++ b/ansible/roles/ceilometer/templates/ceilometer.conf.j2 @@ -57,3 +57,8 @@ policy_file = {{ ceilometer_policy_file }} backend = oslo_cache.memcache_pool enabled = True memcache_servers = {% for host in groups['memcached'] %}{{ 'api' | kolla_address(host) | put_address_in_context('memcache') }}:{{ memcached_port }}{% if not loop.last %},{% endif %}{% endfor %} + +{% if om_enable_queue_manager | bool %} +[oslo_concurrency] +lock_path = /var/lib/ceilometer/tmp +{% endif %} diff --git a/ansible/roles/cinder/defaults/main.yml b/ansible/roles/cinder/defaults/main.yml index 8faaf3426e..90bbd2d8a0 100644 --- a/ansible/roles/cinder/defaults/main.yml +++ b/ansible/roles/cinder/defaults/main.yml @@ -168,6 +168,7 @@ cinder_api_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/cinder:/dev-mode/cinder' if cinder_dev_mode | bool else '' }}" cinder_backup_default_volumes: - "{{ node_config_directory }}/cinder-backup/:{{ container_config_directory }}/:ro" @@ -185,6 +186,7 @@ cinder_scheduler_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/cinder:/dev-mode/cinder' if cinder_dev_mode | bool else '' }}" cinder_volume_default_volumes: - "{{ node_config_directory }}/cinder-volume/:{{ container_config_directory }}/:ro" diff --git a/ansible/roles/cinder/tasks/check.yml b/ansible/roles/cinder/tasks/check.yml new file mode 100644 index 0000000000..3e457f5da5 --- /dev/null +++ b/ansible/roles/cinder/tasks/check.yml @@ -0,0 +1,4 @@ +--- +- name: Checking Cinder containers + import_role: + role: service-check diff --git a/ansible/roles/cloudkitty/defaults/main.yml b/ansible/roles/cloudkitty/defaults/main.yml index b6ba8969d8..fa00614d24 100644 --- a/ansible/roles/cloudkitty/defaults/main.yml +++ b/ansible/roles/cloudkitty/defaults/main.yml @@ -84,12 +84,14 @@ cloudkitty_api_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/cloudkitty:/dev-mode/cloudkitty' if cloudkitty_dev_mode | bool else '' }}" cloudkitty_processor_default_volumes: - "{{ node_config_directory }}/cloudkitty-processor/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/cloudkitty:/dev-mode/cloudkitty' if cloudkitty_dev_mode | bool else '' }}" cloudkitty_api_enable_healthchecks: "{{ enable_container_healthchecks }}" diff --git a/ansible/roles/cloudkitty/tasks/check.yml b/ansible/roles/cloudkitty/tasks/check.yml index ed97d539c0..205b2e096c 100644 --- a/ansible/roles/cloudkitty/tasks/check.yml +++ b/ansible/roles/cloudkitty/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Cloudkitty containers + import_role: + role: service-check diff --git a/ansible/roles/collectd/tasks/check.yml b/ansible/roles/collectd/tasks/check.yml index ed97d539c0..6235423a1e 100644 --- a/ansible/roles/collectd/tasks/check.yml +++ b/ansible/roles/collectd/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Collectd containers + import_role: + role: service-check diff --git a/ansible/roles/common/defaults/main.yml b/ansible/roles/common/defaults/main.yml index 084655fe52..7356c53dce 100644 --- a/ansible/roles/common/defaults/main.yml +++ b/ansible/roles/common/defaults/main.yml @@ -198,6 +198,8 @@ fluentd_input_openstack_services: enabled: "{{ enable_nova | bool }}" - name: octavia enabled: "{{ enable_octavia | bool }}" + - name: placement + enabled: "{{ enable_placement | bool }}" - name: tacker enabled: "{{ enable_tacker | bool }}" - name: trove diff --git a/ansible/roles/common/tasks/check.yml b/ansible/roles/common/tasks/check.yml index ed97d539c0..b435981ef7 100644 --- a/ansible/roles/common/tasks/check.yml +++ b/ansible/roles/common/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Common containers + import_role: + role: service-check diff --git a/ansible/roles/cyborg/defaults/main.yml b/ansible/roles/cyborg/defaults/main.yml index d4ed7bc681..a2d09dbfc4 100644 --- a/ansible/roles/cyborg/defaults/main.yml +++ b/ansible/roles/cyborg/defaults/main.yml @@ -134,18 +134,21 @@ cyborg_api_default_volumes: - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "cyborg:/var/lib/cyborg/" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" cyborg_agent_default_volumes: - "{{ node_config_directory }}/cyborg-agent/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" cyborg_conductor_default_volumes: - "{{ node_config_directory }}/cyborg-conductor/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" cyborg_extra_volumes: "{{ default_extra_volumes }}" cyborg_api_extra_volumes: "{{ cyborg_extra_volumes }}" diff --git a/ansible/roles/cyborg/tasks/check.yml b/ansible/roles/cyborg/tasks/check.yml index ed97d539c0..b311ec09ee 100644 --- a/ansible/roles/cyborg/tasks/check.yml +++ b/ansible/roles/cyborg/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Cyborg containers + import_role: + role: service-check diff --git a/ansible/roles/cyborg/templates/cyborg.conf.j2 b/ansible/roles/cyborg/templates/cyborg.conf.j2 index 89a7853657..8564b3feb5 100644 --- a/ansible/roles/cyborg/templates/cyborg.conf.j2 +++ b/ansible/roles/cyborg/templates/cyborg.conf.j2 @@ -81,3 +81,8 @@ amqp_durable_queues = true {% if om_enable_rabbitmq_quorum_queues | bool %} rabbit_quorum_queue = true {% endif %} + +{% if om_enable_queue_manager | bool %} +[oslo_concurrency] +lock_path = /var/lib/cyborg/tmp +{% endif %} diff --git a/ansible/roles/designate/defaults/main.yml b/ansible/roles/designate/defaults/main.yml index e4dba2ff19..080d1cda23 100644 --- a/ansible/roles/designate/defaults/main.yml +++ b/ansible/roles/designate/defaults/main.yml @@ -240,42 +240,49 @@ designate_api_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/designate:/dev-mode/designate' if designate_dev_mode | bool else '' }}" designate_backend_bind9_default_volumes: - "{{ node_config_directory }}/designate-backend-bind9/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "designate_backend_bind9:/var/lib/named/" designate_central_default_volumes: - "{{ node_config_directory }}/designate-central/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/designate:/dev-mode/designate' if designate_dev_mode | bool else '' }}" designate_mdns_default_volumes: - "{{ node_config_directory }}/designate-mdns/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/designate:/dev-mode/designate' if designate_dev_mode | bool else '' }}" designate_producer_default_volumes: - "{{ node_config_directory }}/designate-producer/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/designate:/dev-mode/designate' if designate_dev_mode | bool else '' }}" designate_worker_default_volumes: - "{{ node_config_directory }}/designate-worker/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/designate:/dev-mode/designate' if designate_dev_mode | bool else '' }}" designate_sink_default_volumes: - "{{ node_config_directory }}/designate-sink/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/designate:/dev-mode/designate' if designate_dev_mode | bool else '' }}" designate_extra_volumes: "{{ default_extra_volumes }}" diff --git a/ansible/roles/designate/tasks/check.yml b/ansible/roles/designate/tasks/check.yml index ed97d539c0..357d69288f 100644 --- a/ansible/roles/designate/tasks/check.yml +++ b/ansible/roles/designate/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Designate containers + import_role: + role: service-check diff --git a/ansible/roles/etcd/tasks/check.yml b/ansible/roles/etcd/tasks/check.yml index ed97d539c0..323e0152ec 100644 --- a/ansible/roles/etcd/tasks/check.yml +++ b/ansible/roles/etcd/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Etcd containers + import_role: + role: service-check diff --git a/ansible/roles/glance/defaults/main.yml b/ansible/roles/glance/defaults/main.yml index 494bf6b054..56d6b49da8 100644 --- a/ansible/roles/glance/defaults/main.yml +++ b/ansible/roles/glance/defaults/main.yml @@ -201,6 +201,7 @@ glance_api_default_volumes: - "{{ glance_file_datadir_volume }}:/var/lib/glance/" - "{{ kolla_dev_repos_directory ~ '/glance:/dev-mode/glance' if glance_dev_mode | bool else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" # NOTE(yoctozepto): below to support Cinder iSCSI backends - "{% if enable_cinder | bool and enable_cinder_backend_iscsi | bool %}iscsi_info:/etc/iscsi{% endif %}" - "{% if enable_cinder | bool and enable_cinder_backend_iscsi | bool %}/dev:/dev{% endif %}" @@ -209,6 +210,7 @@ glance_tls_proxy_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" glance_extra_volumes: "{{ default_extra_volumes }}" glance_api_extra_volumes: "{{ glance_extra_volumes }}" diff --git a/ansible/roles/glance/tasks/check.yml b/ansible/roles/glance/tasks/check.yml new file mode 100644 index 0000000000..f01d997378 --- /dev/null +++ b/ansible/roles/glance/tasks/check.yml @@ -0,0 +1,4 @@ +--- +- name: Checking Glance containers + import_role: + role: service-check diff --git a/ansible/roles/gnocchi/tasks/check.yml b/ansible/roles/gnocchi/tasks/check.yml index ed97d539c0..0c11217b07 100644 --- a/ansible/roles/gnocchi/tasks/check.yml +++ b/ansible/roles/gnocchi/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Gnocchi containers + import_role: + role: service-check diff --git a/ansible/roles/grafana/tasks/check.yml b/ansible/roles/grafana/tasks/check.yml index ed97d539c0..536695ad2c 100644 --- a/ansible/roles/grafana/tasks/check.yml +++ b/ansible/roles/grafana/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Grafana containers + import_role: + role: service-check diff --git a/ansible/roles/hacluster/tasks/check.yml b/ansible/roles/hacluster/tasks/check.yml index ed97d539c0..971a17abcf 100644 --- a/ansible/roles/hacluster/tasks/check.yml +++ b/ansible/roles/hacluster/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Hacluster containers + import_role: + role: service-check diff --git a/ansible/roles/heat/defaults/main.yml b/ansible/roles/heat/defaults/main.yml index c659499da7..5194e8f232 100644 --- a/ansible/roles/heat/defaults/main.yml +++ b/ansible/roles/heat/defaults/main.yml @@ -159,18 +159,21 @@ heat_api_default_volumes: - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "{{ kolla_dev_repos_directory ~ '/heat:/dev-mode/heat' if heat_dev_mode | bool else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" heat_api_cfn_default_volumes: - "{{ node_config_directory }}/heat-api-cfn/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "{{ kolla_dev_repos_directory ~ '/heat:/dev-mode/heat' if heat_dev_mode | bool else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" heat_engine_default_volumes: - "{{ node_config_directory }}/heat-engine/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "{{ kolla_dev_repos_directory ~ '/heat:/dev-mode/heat' if heat_dev_mode | bool else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" heat_extra_volumes: "{{ default_extra_volumes }}" heat_api_extra_volumes: "{{ heat_extra_volumes }}" diff --git a/ansible/roles/heat/tasks/check.yml b/ansible/roles/heat/tasks/check.yml index ed97d539c0..3bf605b705 100644 --- a/ansible/roles/heat/tasks/check.yml +++ b/ansible/roles/heat/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Heat containers + import_role: + role: service-check diff --git a/ansible/roles/heat/templates/heat.conf.j2 b/ansible/roles/heat/templates/heat.conf.j2 index 5c7d3cbe9e..e9fb6fabf0 100644 --- a/ansible/roles/heat/templates/heat.conf.j2 +++ b/ansible/roles/heat/templates/heat.conf.j2 @@ -106,3 +106,8 @@ connection_string = {{ osprofiler_backend_connection_string }} [volumes] backups_enabled = {{ enable_cinder_backup | bool }} + +{% if om_enable_queue_manager | bool %} +[oslo_concurrency] +lock_path = /var/lib/heat/tmp +{% endif %} diff --git a/ansible/roles/horizon/tasks/check.yml b/ansible/roles/horizon/tasks/check.yml index ed97d539c0..fc0f18450a 100644 --- a/ansible/roles/horizon/tasks/check.yml +++ b/ansible/roles/horizon/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Horizon containers + import_role: + role: service-check diff --git a/ansible/roles/influxdb/tasks/check.yml b/ansible/roles/influxdb/tasks/check.yml index ed97d539c0..bac2c14f9e 100644 --- a/ansible/roles/influxdb/tasks/check.yml +++ b/ansible/roles/influxdb/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Influxdb containers + import_role: + role: service-check diff --git a/ansible/roles/ironic/defaults/main.yml b/ansible/roles/ironic/defaults/main.yml index 95d2b218cd..c63f377320 100644 --- a/ansible/roles/ironic/defaults/main.yml +++ b/ansible/roles/ironic/defaults/main.yml @@ -232,6 +232,7 @@ ironic_api_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/ironic:/dev-mode/ironic' if ironic_dev_mode | bool else '' }}" ironic_conductor_default_volumes: - "{{ node_config_directory }}/ironic-conductor/:{{ container_config_directory }}/:ro" diff --git a/ansible/roles/ironic/tasks/check.yml b/ansible/roles/ironic/tasks/check.yml index ed97d539c0..876452eeb2 100644 --- a/ansible/roles/ironic/tasks/check.yml +++ b/ansible/roles/ironic/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Ironic containers + import_role: + role: service-check diff --git a/ansible/roles/ironic/templates/ironic.conf.j2 b/ansible/roles/ironic/templates/ironic.conf.j2 index dfc65442b9..e9399649d5 100644 --- a/ansible/roles/ironic/templates/ironic.conf.j2 +++ b/ansible/roles/ironic/templates/ironic.conf.j2 @@ -218,3 +218,8 @@ enable_proxy_headers_parsing = True [dhcp] dhcp_provider = none {% endif %} + +{% if om_enable_queue_manager | bool %} +[oslo_concurrency] +lock_path = /var/lib/ironic/tmp +{% endif %} diff --git a/ansible/roles/iscsi/tasks/check.yml b/ansible/roles/iscsi/tasks/check.yml index ed97d539c0..8b29740ebf 100644 --- a/ansible/roles/iscsi/tasks/check.yml +++ b/ansible/roles/iscsi/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking iSCSI containers + import_role: + role: service-check diff --git a/ansible/roles/keystone/defaults/main.yml b/ansible/roles/keystone/defaults/main.yml index 8282118fa4..282f396ce6 100644 --- a/ansible/roles/keystone/defaults/main.yml +++ b/ansible/roles/keystone/defaults/main.yml @@ -158,6 +158,7 @@ keystone_default_volumes: - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "{{ kolla_dev_repos_directory ~ '/keystone:/dev-mode/keystone' if keystone_dev_mode | bool else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "keystone_fernet_tokens:/etc/keystone/fernet-keys" keystone_extra_volumes: "{{ default_extra_volumes }}" diff --git a/ansible/roles/keystone/tasks/check.yml b/ansible/roles/keystone/tasks/check.yml new file mode 100644 index 0000000000..2aa3f49b1d --- /dev/null +++ b/ansible/roles/keystone/tasks/check.yml @@ -0,0 +1,4 @@ +--- +- name: Checking Keystone containers + import_role: + role: service-check diff --git a/ansible/roles/keystone/templates/keystone.conf.j2 b/ansible/roles/keystone/templates/keystone.conf.j2 index 614a9eab08..db8d460d3a 100644 --- a/ansible/roles/keystone/templates/keystone.conf.j2 +++ b/ansible/roles/keystone/templates/keystone.conf.j2 @@ -99,3 +99,8 @@ remote_id_attribute = {{ keystone_remote_id_attribute_oidc }} [auth] methods = password,token,openid,application_credential {% endif %} + +{% if om_enable_queue_manager | bool %} +[oslo_concurrency] +lock_path = /var/lib/keystone/tmp +{% endif %} diff --git a/ansible/roles/kuryr/tasks/check.yml b/ansible/roles/kuryr/tasks/check.yml index ed97d539c0..7067817b95 100644 --- a/ansible/roles/kuryr/tasks/check.yml +++ b/ansible/roles/kuryr/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Kuryr containers + import_role: + role: service-check diff --git a/ansible/roles/letsencrypt/tasks/check.yml b/ansible/roles/letsencrypt/tasks/check.yml new file mode 100644 index 0000000000..dd3b331e28 --- /dev/null +++ b/ansible/roles/letsencrypt/tasks/check.yml @@ -0,0 +1,4 @@ +--- +- name: Checking LetsEncrypt containers + import_role: + role: service-check diff --git a/ansible/roles/loadbalancer/tasks/check.yml b/ansible/roles/loadbalancer/tasks/check.yml index ed97d539c0..4ed4b9409f 100644 --- a/ansible/roles/loadbalancer/tasks/check.yml +++ b/ansible/roles/loadbalancer/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Loadbalancer containers + import_role: + role: service-check diff --git a/ansible/roles/magnum/defaults/main.yml b/ansible/roles/magnum/defaults/main.yml index 9efa81d333..028aff443f 100644 --- a/ansible/roles/magnum/defaults/main.yml +++ b/ansible/roles/magnum/defaults/main.yml @@ -123,6 +123,7 @@ magnum_api_default_volumes: - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "{{ kolla_dev_repos_directory ~ '/magnum:/dev-mode/magnum' if magnum_dev_mode | bool else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" magnum_conductor_default_volumes: - "{{ node_config_directory }}/magnum-conductor/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" @@ -130,6 +131,7 @@ magnum_conductor_default_volumes: - "magnum:/var/lib/magnum/" - "{{ kolla_dev_repos_directory ~ '/magnum:/dev-mode/magnum' if magnum_dev_mode | bool else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" magnum_extra_volumes: "{{ default_extra_volumes }}" magnum_api_extra_volumes: "{{ magnum_extra_volumes }}" diff --git a/ansible/roles/magnum/tasks/check.yml b/ansible/roles/magnum/tasks/check.yml index ed97d539c0..cd4e4da1e7 100644 --- a/ansible/roles/magnum/tasks/check.yml +++ b/ansible/roles/magnum/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Magnum containers + import_role: + role: service-check diff --git a/ansible/roles/manila/defaults/main.yml b/ansible/roles/manila/defaults/main.yml index 76c6a530e2..1d3fb3b43e 100644 --- a/ansible/roles/manila/defaults/main.yml +++ b/ansible/roles/manila/defaults/main.yml @@ -165,6 +165,7 @@ manila_share_default_volumes: - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "/run:/run{{ ':shared' if kolla_container_engine == 'docker' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "/lib/modules:/lib/modules:ro" - "{{ kolla_dev_repos_directory ~ '/manila:/dev-mode/manila' if manila_dev_mode | bool else '' }}" manila_scheduler_default_volumes: @@ -172,12 +173,14 @@ manila_scheduler_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/manila:/dev-mode/manila' if manila_dev_mode | bool else '' }}" manila_api_default_volumes: - "{{ node_config_directory }}/manila-api/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/manila:/dev-mode/manila' if manila_dev_mode | bool else '' }}" manila_data_default_volumes: - "{{ node_config_directory }}/manila-data/:{{ container_config_directory }}/:ro" diff --git a/ansible/roles/manila/tasks/check.yml b/ansible/roles/manila/tasks/check.yml index ed97d539c0..1b93701e01 100644 --- a/ansible/roles/manila/tasks/check.yml +++ b/ansible/roles/manila/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Manila containers + import_role: + role: service-check diff --git a/ansible/roles/mariadb/tasks/check.yml b/ansible/roles/mariadb/tasks/check.yml index 1697a9012b..4d246c8f86 100644 --- a/ansible/roles/mariadb/tasks/check.yml +++ b/ansible/roles/mariadb/tasks/check.yml @@ -1,7 +1,8 @@ --- -# Explicitly wait for the database to be accessible via the load balancer. -# Sometimes it can reject connections even when all database services are up, -# due to the health check polling in HAProxy. +- name: Checking Mariadb containers + import_role: + role: service-check + - name: Wait for MariaDB service to be ready through VIP become: true command: > diff --git a/ansible/roles/masakari/defaults/main.yml b/ansible/roles/masakari/defaults/main.yml index 440eed47b1..272d3afb2b 100644 --- a/ansible/roles/masakari/defaults/main.yml +++ b/ansible/roles/masakari/defaults/main.yml @@ -112,12 +112,14 @@ masakari_api_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/masakari:/dev-mode/masakari' if masakari_dev_mode | bool else '' }}" masakari_engine_default_volumes: - "{{ node_config_directory }}/masakari-engine/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/masakari:/dev-mode/masakari' if masakari_dev_mode | bool else '' }}" - "masakari:/var/lib/masakari/" masakari_instancemonitor_default_volumes: @@ -125,12 +127,14 @@ masakari_instancemonitor_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/masakari-monitors:/dev-mode/masakari-monitors' if masakari_dev_mode | bool else '' }}" masakari_hostmonitor_default_volumes: - "{{ node_config_directory }}/masakari-hostmonitor/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/masakari-monitors:/dev-mode/masakari-monitors' if masakari_dev_mode | bool else '' }}" diff --git a/ansible/roles/masakari/tasks/check.yml b/ansible/roles/masakari/tasks/check.yml index ed97d539c0..c9425eba07 100644 --- a/ansible/roles/masakari/tasks/check.yml +++ b/ansible/roles/masakari/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Masakari containers + import_role: + role: service-check diff --git a/ansible/roles/masakari/templates/masakari.conf.j2 b/ansible/roles/masakari/templates/masakari.conf.j2 index f0d760518f..0b38cf9282 100644 --- a/ansible/roles/masakari/templates/masakari.conf.j2 +++ b/ansible/roles/masakari/templates/masakari.conf.j2 @@ -84,3 +84,8 @@ backend_url = {{ redis_connection_string }} backend_url = etcd3+{{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ etcd_client_port }}?api_version=v3{% if openstack_cacert %}?ca_cert={{ openstack_cacert }}{% endif %} {% endif %} {% endif %} + +{% if om_enable_queue_manager | bool %} +[oslo_concurrency] +lock_path = /var/lib/masakari/tmp +{% endif %} diff --git a/ansible/roles/memcached/tasks/check.yml b/ansible/roles/memcached/tasks/check.yml index ed97d539c0..ac42c557f9 100644 --- a/ansible/roles/memcached/tasks/check.yml +++ b/ansible/roles/memcached/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Memcached containers + import_role: + role: service-check diff --git a/ansible/roles/mistral/defaults/main.yml b/ansible/roles/mistral/defaults/main.yml index 0229bd74b3..563efb8ef0 100644 --- a/ansible/roles/mistral/defaults/main.yml +++ b/ansible/roles/mistral/defaults/main.yml @@ -162,24 +162,28 @@ mistral_engine_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/mistral:/dev-mode/mistral' if mistral_dev_mode | bool else '' }}" mistral_event_engine_default_volumes: - "{{ node_config_directory }}/mistral-event-engine/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/mistral:/dev-mode/mistral' if mistral_dev_mode | bool else '' }}" mistral_executor_default_volumes: - "{{ node_config_directory }}/mistral-executor/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/mistral:/dev-mode/mistral' if mistral_dev_mode | bool else '' }}" mistral_api_default_volumes: - "{{ node_config_directory }}/mistral-api/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/mistral:/dev-mode/mistral' if mistral_dev_mode | bool else '' }}" mistral_extra_volumes: "{{ default_extra_volumes }}" diff --git a/ansible/roles/mistral/tasks/check.yml b/ansible/roles/mistral/tasks/check.yml index ed97d539c0..89d318024a 100644 --- a/ansible/roles/mistral/tasks/check.yml +++ b/ansible/roles/mistral/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Mistral containers + import_role: + role: service-check diff --git a/ansible/roles/mistral/templates/mistral.conf.j2 b/ansible/roles/mistral/templates/mistral.conf.j2 index 934dc06b31..4ef6e5514e 100644 --- a/ansible/roles/mistral/templates/mistral.conf.j2 +++ b/ansible/roles/mistral/templates/mistral.conf.j2 @@ -100,3 +100,8 @@ connection_string = {{ osprofiler_backend_connection_string }} [coordination] backend_url = {{ redis_connection_string }} + +{% if om_enable_queue_manager | bool %} +[oslo_concurrency] +lock_path = /var/lib/mistral/tmp +{% endif %} diff --git a/ansible/roles/multipathd/tasks/check.yml b/ansible/roles/multipathd/tasks/check.yml index ed97d539c0..978cfc8da5 100644 --- a/ansible/roles/multipathd/tasks/check.yml +++ b/ansible/roles/multipathd/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking multipathd containers + import_role: + role: service-check diff --git a/ansible/roles/neutron/defaults/main.yml b/ansible/roles/neutron/defaults/main.yml index bb50c84772..868ca32627 100644 --- a/ansible/roles/neutron/defaults/main.yml +++ b/ansible/roles/neutron/defaults/main.yml @@ -513,6 +513,7 @@ neutron_dhcp_agent_default_volumes: - "neutron_metadata_socket:/var/lib/neutron/kolla/" - "/run/netns:/run/netns:shared" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/neutron:/dev-mode/neutron' if neutron_dev_mode | bool else '' }}" neutron_l3_agent_default_volumes: - "{{ node_config_directory }}/neutron-l3-agent/:{{ container_config_directory }}/:ro" @@ -522,18 +523,21 @@ neutron_l3_agent_default_volumes: - "neutron_metadata_socket:/var/lib/neutron/kolla/" - "/run/netns:/run/netns:shared" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/neutron:/dev-mode/neutron' if neutron_dev_mode | bool else '' }}" neutron_sriov_agent_default_volumes: - "{{ node_config_directory }}/neutron-sriov-agent/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/neutron:/dev-mode/neutron' if neutron_dev_mode | bool else '' }}" neutron_mlnx_agent_default_volumes: - "{{ node_config_directory }}/neutron-mlnx-agent/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/neutron:/dev-mode/neutron' if neutron_dev_mode | bool else '' }}" neutron_eswitchd_default_volumes: - "{{ node_config_directory }}/neutron-eswitchd/:{{ container_config_directory }}/:ro" @@ -541,6 +545,7 @@ neutron_eswitchd_default_volumes: - "/run/libvirt:/run/libvirt:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/neutron:/dev-mode/neutron' if neutron_dev_mode | bool else '' }}" neutron_linuxbridge_agent_default_volumes: - "{{ node_config_directory }}/neutron-linuxbridge-agent/:{{ container_config_directory }}/:ro" @@ -548,6 +553,7 @@ neutron_linuxbridge_agent_default_volumes: - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "/lib/modules:/lib/modules:ro" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/neutron:/dev-mode/neutron' if neutron_dev_mode | bool else '' }}" neutron_metadata_agent_default_volumes: - "{{ node_config_directory }}/neutron-metadata-agent/:{{ container_config_directory }}/:ro" @@ -555,6 +561,7 @@ neutron_metadata_agent_default_volumes: - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "neutron_metadata_socket:/var/lib/neutron/kolla/" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/neutron:/dev-mode/neutron' if neutron_dev_mode | bool else '' }}" neutron_ovn_metadata_agent_default_volumes: - "{{ node_config_directory }}/neutron-ovn-metadata-agent/:{{ container_config_directory }}/:ro" @@ -563,6 +570,7 @@ neutron_ovn_metadata_agent_default_volumes: - "/run/openvswitch:/run/openvswitch:shared" - "/run/netns:/run/netns:shared" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/neutron:/dev-mode/neutron' if neutron_dev_mode | bool else '' }}" neutron_openvswitch_agent_default_volumes: - "{{ node_config_directory }}/neutron-openvswitch-agent/:{{ container_config_directory }}/:ro" @@ -571,44 +579,52 @@ neutron_openvswitch_agent_default_volumes: - "/lib/modules:/lib/modules:ro" - "/run/openvswitch:/run/openvswitch:shared" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/neutron:/dev-mode/neutron' if neutron_dev_mode | bool else '' }}" neutron_server_default_volumes: - "{{ node_config_directory }}/neutron-server/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/neutron:/dev-mode/neutron' if neutron_dev_mode | bool else '' }}" neutron_bgp_dragent_default_volumes: - "{{ node_config_directory }}/neutron-bgp-dragent/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" neutron_infoblox_ipam_agent_default_volumes: - "{{ node_config_directory }}/neutron-infoblox-ipam-agent/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" neutron_metering_agent_default_volumes: - "{{ node_config_directory }}/neutron-metering-agent/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/neutron:/dev-mode/neutron' if neutron_dev_mode | bool else '' }}" ironic_neutron_agent_default_volumes: - "{{ node_config_directory }}/ironic-neutron-agent/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" neutron_tls_proxy_default_volumes: - "{{ node_config_directory }}/neutron-tls-proxy/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" neutron_ovn_agent_default_volumes: - "{{ node_config_directory }}/neutron-ovn-agent/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" neutron_extra_volumes: "{{ default_extra_volumes }}" neutron_dhcp_agent_extra_volumes: "{{ neutron_extra_volumes }}" diff --git a/ansible/roles/neutron/tasks/check.yml b/ansible/roles/neutron/tasks/check.yml index ed97d539c0..34cb238822 100644 --- a/ansible/roles/neutron/tasks/check.yml +++ b/ansible/roles/neutron/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Neutron containers + import_role: + role: service-check diff --git a/ansible/roles/nova-cell/defaults/main.yml b/ansible/roles/nova-cell/defaults/main.yml index b3f445d0d8..d42d432b38 100644 --- a/ansible/roles/nova-cell/defaults/main.yml +++ b/ansible/roles/nova-cell/defaults/main.yml @@ -405,24 +405,28 @@ nova_novncproxy_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/nova:/dev-mode/nova' if nova_dev_mode | bool else '' }}" nova_spicehtml5proxy_default_volumes: - "{{ node_config_directory }}/nova-spicehtml5proxy/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/nova:/dev-mode/nova' if nova_dev_mode | bool else '' }}" nova_serialproxy_default_volumes: - "{{ node_config_directory }}/nova-serialproxy/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/nova:/dev-mode/nova' if nova_dev_mode | bool else '' }}" nova_conductor_default_volumes: - "{{ node_config_directory }}/nova-conductor/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/nova:/dev-mode/nova' if nova_dev_mode | bool else '' }}" nova_compute_default_volumes: - "{{ node_config_directory }}/nova-compute/:{{ container_config_directory }}/:ro" @@ -442,6 +446,7 @@ nova_compute_ironic_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/nova:/dev-mode/nova' if nova_dev_mode | bool else '' }}" # Used by bootstrapping containers. nova_cell_bootstrap_default_volumes: diff --git a/ansible/roles/nova-cell/tasks/check.yml b/ansible/roles/nova-cell/tasks/check.yml index ed97d539c0..6dd1ec9e76 100644 --- a/ansible/roles/nova-cell/tasks/check.yml +++ b/ansible/roles/nova-cell/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Nova-cell containers + import_role: + role: service-check diff --git a/ansible/roles/nova/defaults/main.yml b/ansible/roles/nova/defaults/main.yml index 8a24f43f06..498c2bae5e 100644 --- a/ansible/roles/nova/defaults/main.yml +++ b/ansible/roles/nova/defaults/main.yml @@ -199,6 +199,7 @@ nova_api_default_volumes: - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "/lib/modules:/lib/modules:ro" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/nova:/dev-mode/nova' if nova_dev_mode | bool else '' }}" nova_metadata_default_volumes: - "{{ node_config_directory }}/nova-metadata/:{{ container_config_directory }}/:ro" @@ -211,12 +212,14 @@ nova_scheduler_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/nova:/dev-mode/nova' if nova_dev_mode | bool else '' }}" nova_super_conductor_default_volumes: - "{{ node_config_directory }}/nova-super-conductor/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/nova:/dev-mode/nova' if nova_dev_mode | bool else '' }}" # Used by bootstrapping containers. nova_api_bootstrap_default_volumes: diff --git a/ansible/roles/nova/tasks/check.yml b/ansible/roles/nova/tasks/check.yml index ed97d539c0..9a05a49da6 100644 --- a/ansible/roles/nova/tasks/check.yml +++ b/ansible/roles/nova/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Nova containers + import_role: + role: service-check diff --git a/ansible/roles/nova/templates/nova.conf.j2 b/ansible/roles/nova/templates/nova.conf.j2 index 96c11f4ad3..8ebfc8664b 100644 --- a/ansible/roles/nova/templates/nova.conf.j2 +++ b/ansible/roles/nova/templates/nova.conf.j2 @@ -40,10 +40,8 @@ enabled_filters = ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter track_instance_changes = False {% endif %} -[api] -use_forwarded_for = true - {% if vendordata_file_path is defined %} +[api] vendordata_jsonfile_path = /etc/nova/vendordata.json {% endif %} diff --git a/ansible/roles/octavia/defaults/main.yml b/ansible/roles/octavia/defaults/main.yml index 38f0e1c3e5..3a0c8bf827 100644 --- a/ansible/roles/octavia/defaults/main.yml +++ b/ansible/roles/octavia/defaults/main.yml @@ -189,6 +189,7 @@ octavia_api_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/octavia:/dev-mode/octavia' if octavia_dev_mode | bool else '' }}" - "octavia_driver_agent:/var/run/octavia/" octavia_health_manager_default_volumes: @@ -196,12 +197,14 @@ octavia_health_manager_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/octavia:/dev-mode/octavia' if octavia_dev_mode | bool else '' }}" octavia_driver_agent_default_volumes: - "{{ node_config_directory }}/octavia-driver-agent/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/octavia:/dev-mode/octavia' if octavia_dev_mode | bool else '' }}" - "octavia_driver_agent:/var/run/octavia/" octavia_housekeeping_default_volumes: @@ -209,12 +212,14 @@ octavia_housekeeping_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/octavia:/dev-mode/octavia' if octavia_dev_mode | bool else '' }}" octavia_worker_default_volumes: - "{{ node_config_directory }}/octavia-worker/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/octavia:/dev-mode/octavia' if octavia_dev_mode | bool else '' }}" octavia_extra_volumes: "{{ default_extra_volumes }}" diff --git a/ansible/roles/octavia/tasks/check.yml b/ansible/roles/octavia/tasks/check.yml index ed97d539c0..991e11c715 100644 --- a/ansible/roles/octavia/tasks/check.yml +++ b/ansible/roles/octavia/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Octavia containers + import_role: + role: service-check diff --git a/ansible/roles/octavia/templates/octavia.conf.j2 b/ansible/roles/octavia/templates/octavia.conf.j2 index 5b6609a57e..be662a863e 100644 --- a/ansible/roles/octavia/templates/octavia.conf.j2 +++ b/ansible/roles/octavia/templates/octavia.conf.j2 @@ -163,3 +163,8 @@ jobboard_backend_password = "{{ redis_master_password }}" jobboard_backend_port = "{{ redis_port }}" jobboard_backend_hosts = {% for host in groups['redis'] %}{{ 'api' | kolla_address(host) | put_address_in_context('url') }}{% if not loop.last %},{% endif %}{% endfor %} {% endif %} + +{% if om_enable_queue_manager | bool %} +[oslo_concurrency] +lock_path = /var/lib/octavia/tmp +{% endif %} diff --git a/ansible/roles/opensearch/tasks/check.yml b/ansible/roles/opensearch/tasks/check.yml index ed97d539c0..31be0031b1 100644 --- a/ansible/roles/opensearch/tasks/check.yml +++ b/ansible/roles/opensearch/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking OpenSearch containers + import_role: + role: service-check diff --git a/ansible/roles/openvswitch/tasks/check.yml b/ansible/roles/openvswitch/tasks/check.yml index ed97d539c0..2e6c2237d2 100644 --- a/ansible/roles/openvswitch/tasks/check.yml +++ b/ansible/roles/openvswitch/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Openvswitch containers + import_role: + role: service-check diff --git a/ansible/roles/ovn-controller/tasks/check.yml b/ansible/roles/ovn-controller/tasks/check.yml new file mode 100644 index 0000000000..f3e7af2f5f --- /dev/null +++ b/ansible/roles/ovn-controller/tasks/check.yml @@ -0,0 +1,4 @@ +--- +- name: Checking OVN-controller containers + import_role: + role: service-check diff --git a/ansible/roles/ovn-db/tasks/check.yml b/ansible/roles/ovn-db/tasks/check.yml new file mode 100644 index 0000000000..28e6a6c378 --- /dev/null +++ b/ansible/roles/ovn-db/tasks/check.yml @@ -0,0 +1,4 @@ +--- +- name: Checking OVN-DB containers + import_role: + role: service-check diff --git a/ansible/roles/ovs-dpdk/tasks/check.yml b/ansible/roles/ovs-dpdk/tasks/check.yml index ed97d539c0..2e59502e6a 100644 --- a/ansible/roles/ovs-dpdk/tasks/check.yml +++ b/ansible/roles/ovs-dpdk/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking OVN-DPDK containers + import_role: + role: service-check diff --git a/ansible/roles/placement/defaults/main.yml b/ansible/roles/placement/defaults/main.yml index 788c10dec9..6c58c33398 100644 --- a/ansible/roles/placement/defaults/main.yml +++ b/ansible/roles/placement/defaults/main.yml @@ -8,6 +8,7 @@ placement_services: volumes: "{{ placement_api_default_volumes + placement_api_extra_volumes }}" dimensions: "{{ placement_api_dimensions }}" healthcheck: "{{ placement_api_healthcheck }}" + wsgi: "placement.wsgi.api:application" haproxy: placement_api: enabled: "{{ enable_placement }}" @@ -148,3 +149,8 @@ placement_ks_users: placement_enable_tls_backend: "{{ kolla_enable_tls_backend }}" placement_copy_certs: "{{ kolla_copy_ca_into_containers | bool or placement_enable_tls_backend | bool }}" + +#################### +# WSGI +#################### +placement_wsgi_provider: "uwsgi" diff --git a/ansible/roles/placement/tasks/check.yml b/ansible/roles/placement/tasks/check.yml index ed97d539c0..7b644e3e69 100644 --- a/ansible/roles/placement/tasks/check.yml +++ b/ansible/roles/placement/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Placement containers + import_role: + role: service-check diff --git a/ansible/roles/placement/tasks/config.yml b/ansible/roles/placement/tasks/config.yml index 00bf54ea00..902310548c 100644 --- a/ansible/roles/placement/tasks/config.yml +++ b/ansible/roles/placement/tasks/config.yml @@ -63,11 +63,32 @@ src: "{{ item }}" dest: "{{ node_config_directory }}/placement-api/placement-api-wsgi.conf" mode: "0660" - when: service | service_enabled_and_mapped_to_host + when: + - service | service_enabled_and_mapped_to_host + - placement_wsgi_provider == "apache" with_first_found: - "{{ node_custom_config }}/placement/{{ inventory_hostname }}/placement-api-wsgi.conf" - "{{ node_custom_config }}/placement/placement-api-wsgi.conf" - "placement-api-wsgi.conf.j2" + notify: + - "Restart placement-api container" + +- name: "Configure uWSGI for Placement" + include_role: + name: service-uwsgi-config + vars: + project_services: "{{ placement_services }}" + service: "{{ placement_services['placement-api'] }}" + service_name: "placement-api" + service_uwsgi_config_http_port: "{{ placement_api_listen_port }}" + service_uwsgi_config_module: "{{ service.wsgi }}" + service_uwsgi_config_tls_backend: "{{ placement_enable_tls_backend | bool }}" + service_uwsgi_config_tls_cert: "/etc/placement/certs/placement-cert.pem" + service_uwsgi_config_tls_key: "/etc/placement/certs/placement-key.pem" + service_uwsgi_config_uid: "placement" + when: + - service | service_enabled_and_mapped_to_host + - placement_wsgi_provider == "uwsgi" - name: Copying over migrate-db.rc.j2 configuration become: true diff --git a/ansible/roles/placement/templates/placement-api-wsgi.conf.j2 b/ansible/roles/placement/templates/placement-api-wsgi.conf.j2 index 2f2a9dc913..aa313b6809 100644 --- a/ansible/roles/placement/templates/placement-api-wsgi.conf.j2 +++ b/ansible/roles/placement/templates/placement-api-wsgi.conf.j2 @@ -28,7 +28,7 @@ LogLevel info = 2.4> ErrorLogFormat "%{cu}t %M" - ErrorLog "{{ log_dir }}/placement-api.log" + ErrorLog "{{ log_dir }}/placement-api-error.log" LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b %D \"%{Referer}i\" \"%{User-Agent}i\"" logformat CustomLog "{{ log_dir }}/placement-api-access.log" logformat diff --git a/ansible/roles/placement/templates/placement-api.json.j2 b/ansible/roles/placement/templates/placement-api.json.j2 index d2f91f731a..d2e6ecc5ff 100644 --- a/ansible/roles/placement/templates/placement-api.json.j2 +++ b/ansible/roles/placement/templates/placement-api.json.j2 @@ -1,7 +1,8 @@ {% set apache_binary = 'apache2' if kolla_base_distro in ['ubuntu', 'debian'] else 'httpd' %} {% set apache_conf_dir = 'apache2/conf-enabled' if kolla_base_distro in ['ubuntu', 'debian'] else 'httpd/conf.d' %} +{% set command = '/usr/sbin/{{ apache_binary }} -DFOREGROUND' if placement_wsgi_provider == 'apache' else 'uwsgi /etc/placement/placement-api-uwsgi.ini' %} { - "command": "/usr/sbin/{{ apache_binary }} -DFOREGROUND", + "command": "{{ command }}", "config_files": [ { "source": "{{ container_config_directory }}/placement.conf", @@ -14,13 +15,19 @@ "dest": "/etc/placement/{{ placement_policy_file }}", "owner": "placement", "perm": "0600" - }{% endif %}, + }{% endif %}{% if placement_wsgi_provider == 'apache' %}, { "source": "{{ container_config_directory }}/placement-api-wsgi.conf", "dest": "/etc/{{ apache_conf_dir }}/00-placement-api.conf", "owner": "placement", "perm": "0600" - }, + }{% elif placement_wsgi_provider == 'uwsgi' %}, + { + "source": "{{ container_config_directory }}/placement-api-uwsgi.ini", + "dest": "/etc/placement/placement-api-uwsgi.ini", + "owner": "placement", + "perm": "0600" + }{% endif %}, { "source": "{{ container_config_directory }}/migrate-db.rc", "dest": "/etc/placement/migrate-db.rc", diff --git a/ansible/roles/placement/templates/placement.conf.j2 b/ansible/roles/placement/templates/placement.conf.j2 index a5a742b432..10914fde13 100644 --- a/ansible/roles/placement/templates/placement.conf.j2 +++ b/ansible/roles/placement/templates/placement.conf.j2 @@ -1,7 +1,7 @@ [DEFAULT] debug = {{ placement_logging_debug }} -log_dir = /var/log/kolla/placement +log_file = /var/log/kolla/placement/{{ service_name }}.log state_path = /var/lib/placement diff --git a/ansible/roles/prometheus/defaults/main.yml b/ansible/roles/prometheus/defaults/main.yml index e5588d3a26..e25a073cd1 100644 --- a/ansible/roles/prometheus/defaults/main.yml +++ b/ansible/roles/prometheus/defaults/main.yml @@ -339,7 +339,7 @@ prometheus_blackbox_exporter_endpoints_default: - endpoints: - "prometheus_alertmanager:http_2xx_alertmanager:{{ prometheus_alertmanager_public_endpoint if enable_prometheus_alertmanager_external else prometheus_alertmanager_internal_endpoint }}" enabled: "{{ enable_prometheus_alertmanager | bool }}" - - endpoints: "{% set rabbitmq_endpoints = [] %}{% for host in groups.get('rabbitmq', []) %}{{ rabbitmq_endpoints.append('rabbitmq_' + host + (':tls_connect:' if rabbitmq_enable_tls else ':tcp_connect:') + ('api' | kolla_address(host) | put_address_in_context('url')) + ':' + hostvars[host]['rabbitmq_port'] ) }}{% endfor %}{{ rabbitmq_endpoints }}" + - endpoints: "{% set rabbitmq_endpoints = [] %}{% for host in groups.get('rabbitmq', []) %}{{ rabbitmq_endpoints.append('rabbitmq_' + host + (':tls_connect:' if rabbitmq_enable_tls | bool else ':tcp_connect:') + ('api' | kolla_address(host) | put_address_in_context('url')) + ':' + hostvars[host]['rabbitmq_port'] ) }}{% endfor %}{{ rabbitmq_endpoints }}" enabled: "{{ enable_rabbitmq | bool }}" - endpoints: "{% set redis_endpoints = [] %}{% for host in groups.get('redis', []) %}{{ redis_endpoints.append('redis_' + host + ':tcp_connect:' + ('api' | kolla_address(host) | put_address_in_context('url')) + ':' + hostvars[host]['redis_port']) }}{% endfor %}{{ redis_endpoints }}" enabled: "{{ enable_redis | bool }}" diff --git a/ansible/roles/prometheus/tasks/check.yml b/ansible/roles/prometheus/tasks/check.yml index ed97d539c0..fd01e03dbe 100644 --- a/ansible/roles/prometheus/tasks/check.yml +++ b/ansible/roles/prometheus/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Prometheus containers + import_role: + role: service-check diff --git a/ansible/roles/rabbitmq/tasks/check.yml b/ansible/roles/rabbitmq/tasks/check.yml index ed97d539c0..c55e6ca315 100644 --- a/ansible/roles/rabbitmq/tasks/check.yml +++ b/ansible/roles/rabbitmq/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Rabbitmq containers + import_role: + role: service-check diff --git a/ansible/roles/redis/tasks/check.yml b/ansible/roles/redis/tasks/check.yml index bd4a16dcf3..0e3c550397 100644 --- a/ansible/roles/redis/tasks/check.yml +++ b/ansible/roles/redis/tasks/check.yml @@ -1,4 +1,8 @@ --- +- name: Checking Redis containers + import_role: + role: service-check + - name: Redis ping pong check become: true command: "{{ kolla_container_engine }} exec redis redis-cli -h {{ api_interface_address }} -a {{ redis_master_password }} ping" diff --git a/ansible/roles/service-check/defaults/main.yml b/ansible/roles/service-check/defaults/main.yml new file mode 100644 index 0000000000..100e4606c7 --- /dev/null +++ b/ansible/roles/service-check/defaults/main.yml @@ -0,0 +1,3 @@ +--- +# Dict mapping service names to container configuration. +service_check_services: {} diff --git a/ansible/roles/service-check/tasks/main.yml b/ansible/roles/service-check/tasks/main.yml new file mode 100644 index 0000000000..0c0ddf72e4 --- /dev/null +++ b/ansible/roles/service-check/tasks/main.yml @@ -0,0 +1,38 @@ +--- +# Check whether all necessary containers are running. +- name: "{{ kolla_role_name | default(project_name) }} | Get container facts" + become: true + kolla_container_facts: + action: get_containers + container_engine: "{{ kolla_container_engine }}" + name: "{{ service_check_enabled_container_names }}" + register: container_facts + when: service_check_enabled_container_names | length > 0 + +- name: "{{ kolla_role_name | default(project_name) }} | Fail if containers are missing or not running" + vars: + missing_containers: >- + {{ service_check_enabled_container_names | difference(container_facts) | list }} + fail: + msg: > + The following {{ kolla_role_name | default(project_name) }} containers are missing or not running: + {{ missing_containers | join(', ') }} + when: + - container_facts is defined + - missing_containers | length > 0 + +- name: "{{ kolla_role_name | default(project_name) }} | Fail if containers are unhealthy" + vars: + unhealthy_containers: >- + {{ container_facts | + dict2items | + selectattr("value.Status", "defined") | + selectattr("value.Status", "search", "unhealthy") | + map(attribute='key') | list }} + fail: + msg: > + The following {{ kolla_role_name | default(project_name) }} containers are unhealthy: + {{ unhealthy_containers | join(', ') }} + when: + - container_facts is defined + - unhealthy_containers | length > 0 diff --git a/ansible/roles/service-check/vars/main.yml b/ansible/roles/service-check/vars/main.yml new file mode 100644 index 0000000000..460ee5cf03 --- /dev/null +++ b/ansible/roles/service-check/vars/main.yml @@ -0,0 +1,9 @@ +--- +# List of names of containers to check that are enabled and mapped to this +# host. +service_check_enabled_container_names: >- + {{ lookup('vars', (kolla_role_name | default(project_name)) + '_services') | + select_services_enabled_and_mapped_to_host | + dict2items | + map(attribute='value.container_name') | + list }} diff --git a/ansible/roles/skyline/tasks/check.yml b/ansible/roles/skyline/tasks/check.yml index ed97d539c0..e5fa131778 100644 --- a/ansible/roles/skyline/tasks/check.yml +++ b/ansible/roles/skyline/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Skyline containers + import_role: + role: service-check diff --git a/ansible/roles/tacker/defaults/main.yml b/ansible/roles/tacker/defaults/main.yml index cd3c767cb7..de01fdd310 100644 --- a/ansible/roles/tacker/defaults/main.yml +++ b/ansible/roles/tacker/defaults/main.yml @@ -111,6 +111,7 @@ tacker_server_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" # NOTE(yoctozepto): Starting in Train, this volume must be shared # between all instances of both Tacker services (Server, Conductor) - "kolla_tacker_csar_files:/var/lib/tacker/csar_files/" @@ -120,6 +121,7 @@ tacker_conductor_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "kolla_tacker_vnfpackages:/var/lib/tacker/vnfpackages/" # NOTE(yoctozepto): Starting in Train, this volume must be shared # between all instances of both Tacker services (Server, Conductor) diff --git a/ansible/roles/tacker/tasks/check.yml b/ansible/roles/tacker/tasks/check.yml index ed97d539c0..694ef01e69 100644 --- a/ansible/roles/tacker/tasks/check.yml +++ b/ansible/roles/tacker/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Tacker containers + import_role: + role: service-check diff --git a/ansible/roles/tacker/templates/tacker.conf.j2 b/ansible/roles/tacker/templates/tacker.conf.j2 index 46876a3ca5..33719e1106 100644 --- a/ansible/roles/tacker/templates/tacker.conf.j2 +++ b/ansible/roles/tacker/templates/tacker.conf.j2 @@ -88,3 +88,8 @@ policy_file = {{ tacker_policy_file }} [glance_store] filesystem_store_datadir = /var/lib/tacker/csar_files + +{% if om_enable_queue_manager | bool %} +[oslo_concurrency] +lock_path = /var/lib/tacker/tmp +{% endif %} diff --git a/ansible/roles/telegraf/tasks/check.yml b/ansible/roles/telegraf/tasks/check.yml index ed97d539c0..85fa450a5f 100644 --- a/ansible/roles/telegraf/tasks/check.yml +++ b/ansible/roles/telegraf/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Telegraf containers + import_role: + role: service-check diff --git a/ansible/roles/trove/defaults/main.yml b/ansible/roles/trove/defaults/main.yml index a0edcf32ee..2fda7d158f 100644 --- a/ansible/roles/trove/defaults/main.yml +++ b/ansible/roles/trove/defaults/main.yml @@ -138,6 +138,7 @@ trove_api_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/trove:/dev-mode/trove' if trove_dev_mode | bool else '' }}" - "trove:/var/lib/trove/" trove_conductor_default_volumes: @@ -145,6 +146,7 @@ trove_conductor_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/trove:/dev-mode/trove' if trove_dev_mode | bool else '' }}" - "trove:/var/lib/trove/" trove_taskmanager_default_volumes: @@ -152,6 +154,7 @@ trove_taskmanager_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/trove:/dev-mode/trove' if trove_dev_mode | bool else '' }}" - "trove:/var/lib/trove/" diff --git a/ansible/roles/trove/tasks/check.yml b/ansible/roles/trove/tasks/check.yml index ed97d539c0..fdbca1667a 100644 --- a/ansible/roles/trove/tasks/check.yml +++ b/ansible/roles/trove/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Trove containers + import_role: + role: service-check diff --git a/ansible/roles/trove/templates/trove.conf.j2 b/ansible/roles/trove/templates/trove.conf.j2 index 6a435986a7..3a5f74d6bd 100644 --- a/ansible/roles/trove/templates/trove.conf.j2 +++ b/ansible/roles/trove/templates/trove.conf.j2 @@ -99,3 +99,8 @@ connection_string = {{ osprofiler_backend_connection_string }} [oslo_policy] policy_file = {{ trove_policy_file }} {% endif %} + +{% if om_enable_queue_manager | bool %} +[oslo_concurrency] +lock_path = /var/lib/trove/tmp +{% endif %} diff --git a/ansible/roles/venus/defaults/main.yml b/ansible/roles/venus/defaults/main.yml index 4afe95f1eb..faa86c4195 100644 --- a/ansible/roles/venus/defaults/main.yml +++ b/ansible/roles/venus/defaults/main.yml @@ -94,6 +94,7 @@ venus_api_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/venus:/dev-mode/venus' if venus_dev_mode | bool else '' }}" - "venus:/var/lib/venus/" venus_manager_default_volumes: @@ -101,6 +102,7 @@ venus_manager_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/venus:/dev-mode/venus' if venus_dev_mode | bool else '' }}" - "venus:/var/lib/venus/" diff --git a/ansible/roles/venus/tasks/check.yml b/ansible/roles/venus/tasks/check.yml index ed97d539c0..63d29a6f31 100644 --- a/ansible/roles/venus/tasks/check.yml +++ b/ansible/roles/venus/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Venus containers + import_role: + role: service-check diff --git a/ansible/roles/venus/templates/venus.conf.j2 b/ansible/roles/venus/templates/venus.conf.j2 index dbb80c415b..6ba6381690 100644 --- a/ansible/roles/venus/templates/venus.conf.j2 +++ b/ansible/roles/venus/templates/venus.conf.j2 @@ -33,3 +33,8 @@ memcached_servers = {% for host in groups['memcached'] %}{{ 'api' | kolla_addres [elasticsearch] url = {{ opensearch_internal_endpoint }} {% endif %} + +{% if om_enable_queue_manager | bool %} +[oslo_concurrency] +lock_path = /var/lib/venus/tmp +{% endif %} diff --git a/ansible/roles/watcher/defaults/main.yml b/ansible/roles/watcher/defaults/main.yml index 75f4d1285e..22a094d265 100644 --- a/ansible/roles/watcher/defaults/main.yml +++ b/ansible/roles/watcher/defaults/main.yml @@ -137,18 +137,21 @@ watcher_api_default_volumes: - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "{{ kolla_dev_repos_directory ~ '/watcher:/dev-mode/watcher' if watcher_dev_mode | bool else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" watcher_applier_default_volumes: - "{{ node_config_directory }}/watcher-applier/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "{{ kolla_dev_repos_directory ~ '/watcher:/dev-mode/watcher' if watcher_dev_mode | bool else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" watcher_engine_default_volumes: - "{{ node_config_directory }}/watcher-engine/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "{{ kolla_dev_repos_directory ~ '/watcher:/dev-mode/watcher' if watcher_dev_mode | bool else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" watcher_extra_volumes: "{{ default_extra_volumes }}" watcher_api_extra_volumes: "{{ watcher_extra_volumes }}" diff --git a/ansible/roles/watcher/tasks/check.yml b/ansible/roles/watcher/tasks/check.yml index ed97d539c0..c836a85120 100644 --- a/ansible/roles/watcher/tasks/check.yml +++ b/ansible/roles/watcher/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Watcher containers + import_role: + role: service-check diff --git a/ansible/roles/zun/defaults/main.yml b/ansible/roles/zun/defaults/main.yml index bcf7ec80c2..75f7285668 100644 --- a/ansible/roles/zun/defaults/main.yml +++ b/ansible/roles/zun/defaults/main.yml @@ -177,12 +177,14 @@ zun_api_default_volumes: - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "{{ kolla_dev_repos_directory ~ '/zun:/dev-mode/zun' if zun_dev_mode | bool else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" zun_wsproxy_default_volumes: - "{{ node_config_directory }}/zun-wsproxy/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "{{ kolla_dev_repos_directory ~ '/zun:/dev-mode/zun' if zun_dev_mode | bool else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" zun_compute_default_volumes: - "{{ node_config_directory }}/zun-compute/:{{ container_config_directory }}/:ro" - "/etc/localtime:/etc/localtime:ro" @@ -201,6 +203,7 @@ zun_cni_daemon_default_volumes: - "/etc/localtime:/etc/localtime:ro" - "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}" - "kolla_logs:/var/log/kolla/" + - "{{ '/dev/shm:/dev/shm' if om_enable_queue_manager | bool else '' }}" - "{{ kolla_dev_repos_directory ~ '/zun:/dev-mode/zun' if zun_dev_mode | bool else '' }}" - "/run:/run{{ ':shared' if kolla_container_engine == 'docker' else '' }}" diff --git a/ansible/roles/zun/tasks/check.yml b/ansible/roles/zun/tasks/check.yml index ed97d539c0..02ed4f654b 100644 --- a/ansible/roles/zun/tasks/check.yml +++ b/ansible/roles/zun/tasks/check.yml @@ -1 +1,4 @@ --- +- name: Checking Zun containers + import_role: + role: service-check diff --git a/doc/source/conf.py b/doc/source/conf.py index 35138b7539..f101e55144 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -122,22 +122,23 @@ # used only to denote unmaintained branches, and it is not intended to be used for # replacing anything in documentation. -KOLLA_OPENSTACK_RELEASE = openstackdocstheme.ext._get_series_name() +OPENSTACK_RELEASE = openstackdocstheme.ext._get_series_name() KOLLA_OPENSTACK_RELEASE_UNMAINTAINED = [ - 'yoga', - 'zed', + '2023.1', ] -if KOLLA_OPENSTACK_RELEASE == 'latest': +if OPENSTACK_RELEASE == 'latest': KOLLA_OPENSTACK_RELEASE = 'master' KOLLA_BRANCH_NAME = 'master' TESTED_RUNTIMES_GOVERNANCE_URL = 'https://governance.openstack.org/tc/reference/runtimes/' -elif KOLLA_OPENSTACK_RELEASE in KOLLA_OPENSTACK_RELEASE_UNMAINTAINED: +elif OPENSTACK_RELEASE in KOLLA_OPENSTACK_RELEASE_UNMAINTAINED: + KOLLA_OPENSTACK_RELEASE = OPENSTACK_RELEASE KOLLA_BRANCH_NAME = 'unmaintained/{}'.format(KOLLA_OPENSTACK_RELEASE) TESTED_RUNTIMES_GOVERNANCE_URL =\ 'https://governance.openstack.org/tc/reference/runtimes/{}.html'.format(KOLLA_OPENSTACK_RELEASE) else: + KOLLA_OPENSTACK_RELEASE = OPENSTACK_RELEASE KOLLA_BRANCH_NAME = 'stable/{}'.format(KOLLA_OPENSTACK_RELEASE) TESTED_RUNTIMES_GOVERNANCE_URL =\ 'https://governance.openstack.org/tc/reference/runtimes/{}.html'.format(KOLLA_OPENSTACK_RELEASE) @@ -155,6 +156,7 @@ '|KOLLA_OPENSTACK_RELEASE|': KOLLA_OPENSTACK_RELEASE, '|KOLLA_BRANCH_NAME|': KOLLA_BRANCH_NAME, '|KOLLA_BRANCH_NAME_DASHED|': KOLLA_BRANCH_NAME.replace('/', '-'), + '|OPENSTACK_RELEASE|': OPENSTACK_RELEASE, '|TESTED_RUNTIMES_GOVERNANCE_URL|': TESTED_RUNTIMES_GOVERNANCE_URL, } diff --git a/doc/source/reference/storage/cinder-guide.rst b/doc/source/reference/storage/cinder-guide.rst index 41f956da8d..7c45a8d28e 100644 --- a/doc/source/reference/storage/cinder-guide.rst +++ b/doc/source/reference/storage/cinder-guide.rst @@ -21,7 +21,9 @@ HA When using cinder-volume in an HA configuration (more than one host in cinder-volume/storage group): -- Make sure that the driver you are using supports `Active/Active High Availability ` +- Make sure that the driver you are using supports `Active/Active High + Availability + `__ configuration - Add ``cinder_cluster_name: example_cluster_name`` to your ``globals.yml`` (or host_vars for advanced multi-cluster configuration) diff --git a/kolla_ansible/cli/commands.py b/kolla_ansible/cli/commands.py index fa3b1908cc..bbeeece893 100644 --- a/kolla_ansible/cli/commands.py +++ b/kolla_ansible/cli/commands.py @@ -469,3 +469,17 @@ def take_action(self, parsed_args): playbooks = _choose_playbooks(parsed_args, "nova-libvirt-cleanup") self.run_playbooks(parsed_args, playbooks) + + +class Check(KollaAnsibleMixin, Command): + """Check container status""" + + def take_action(self, parsed_args): + self.app.LOG.info("Checking container status") + + extra_vars = {} + extra_vars["kolla_action"] = "check" + + playbooks = _choose_playbooks(parsed_args) + + self.run_playbooks(parsed_args, playbooks, extra_vars=extra_vars) diff --git a/releasenotes/notes/bug-2093335-88ecb9b12a003b20.yaml b/releasenotes/notes/bug-2093335-88ecb9b12a003b20.yaml new file mode 100644 index 0000000000..b99e9ae56c --- /dev/null +++ b/releasenotes/notes/bug-2093335-88ecb9b12a003b20.yaml @@ -0,0 +1,6 @@ +--- +fixes: + - | + Fixes ``rabbitmq_enable_tls`` in main.yaml file + variable was not a boolean type. + `LP#2093335 `__ diff --git a/releasenotes/notes/bug-2095607-f4d9d5aebebddfc8.yaml b/releasenotes/notes/bug-2095607-f4d9d5aebebddfc8.yaml new file mode 100644 index 0000000000..dfa17a9e9a --- /dev/null +++ b/releasenotes/notes/bug-2095607-f4d9d5aebebddfc8.yaml @@ -0,0 +1,7 @@ +--- +fixes: + - | + Fixes Apache and placement writing to the same log file. + Apache placement VirtualHost ErrorLog has been renamed to + ``placement-api-error.log`` (similar to other services). + `LP#[2095607] `__ diff --git a/releasenotes/notes/deprecate-swift-7a30a80aa16c3e48.yaml b/releasenotes/notes/deprecate-swift-7a30a80aa16c3e48.yaml new file mode 100644 index 0000000000..d87504798e --- /dev/null +++ b/releasenotes/notes/deprecate-swift-7a30a80aa16c3e48.yaml @@ -0,0 +1,5 @@ +--- +deprecations: + - | + ``swift`` deployment support has been deprecated for removal in ``2025.2`` + due to failing CI and no volunteers to maintain this role. diff --git a/releasenotes/notes/nova-remove-use-forwarded-for-69f98132b0f164c1.yaml b/releasenotes/notes/nova-remove-use-forwarded-for-69f98132b0f164c1.yaml new file mode 100644 index 0000000000..3e6508feba --- /dev/null +++ b/releasenotes/notes/nova-remove-use-forwarded-for-69f98132b0f164c1.yaml @@ -0,0 +1,5 @@ +--- +fixes: + - | + Removes the Nova configuration option ``[api] use_forwarded_for``. This + option was deleted from Nova in the 2024.1 release. diff --git a/releasenotes/notes/reintroduce-check-2a385b77e044c507.yaml b/releasenotes/notes/reintroduce-check-2a385b77e044c507.yaml new file mode 100644 index 0000000000..ac2e449ac7 --- /dev/null +++ b/releasenotes/notes/reintroduce-check-2a385b77e044c507.yaml @@ -0,0 +1,9 @@ +--- +features: + - | + Reintroduce kolla-ansible check. + This allows operators to quickly diagnose all containers across + all hosts by running kolla-ansible check. It returns a list + of containers that are missing, not running or in unhealthy state + for each OpenStack service. + `Blueprint check-containers `__ diff --git a/releasenotes/notes/uwsgi-aef85ccbc76dab3e.yaml b/releasenotes/notes/uwsgi-aef85ccbc76dab3e.yaml index d3d9ed4dba..a591c125b2 100644 --- a/releasenotes/notes/uwsgi-aef85ccbc76dab3e.yaml +++ b/releasenotes/notes/uwsgi-aef85ccbc76dab3e.yaml @@ -11,3 +11,5 @@ features: - Variable * - Nova - nova_wsgi_provider + * - Placement + - placement_wsgi_provider diff --git a/setup.cfg b/setup.cfg index 68ccefff98..4410727737 100644 --- a/setup.cfg +++ b/setup.cfg @@ -72,4 +72,4 @@ kolla-ansible.cli = mariadb-backup = kolla_ansible.cli.commands:MariaDBBackup mariadb-recovery = kolla_ansible.cli.commands:MariaDBRecovery nova-libvirt-cleanup = kolla_ansible.cli.commands:NovaLibvirtCleanup - + check = kolla_ansible.cli.commands:Check diff --git a/tests/deploy.sh b/tests/deploy.sh index bd68b3caa2..e81dbf5dcc 100755 --- a/tests/deploy.sh +++ b/tests/deploy.sh @@ -71,6 +71,8 @@ function deploy { if [[ $HAS_UPGRADE == 'no' ]]; then kolla-ansible validate-config -i ${RAW_INVENTORY} -vvv &> /tmp/logs/ansible/validate-config + #TODO(r-krcek) check can be moved out of the if statement in the flamingo cycle + kolla-ansible check -i ${RAW_INVENTORY} -vvv &> /tmp/logs/ansible/check fi } diff --git a/tests/init-swift.sh b/tests/init-swift.sh deleted file mode 100755 index 22c4169716..0000000000 --- a/tests/init-swift.sh +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/bash - -set -o xtrace -set -o errexit - - -function init_swift_logged { - next_port=6000 - - # the order is important due to port incrementation - for ring in object account container; do - # create the *.builder files - sudo ${CONTAINER_ENGINE} run \ - --rm \ - -v /etc/kolla/config/swift/:/etc/kolla/config/swift/ \ - $KOLLA_SWIFT_BASE_IMAGE \ - swift-ring-builder \ - /etc/kolla/config/swift/$ring.builder create 10 3 1 - - # add nodes to them - for node in ${STORAGE_NODES[@]}; do - sudo ${CONTAINER_ENGINE} run \ - --rm \ - -v /etc/kolla/config/swift/:/etc/kolla/config/swift/ \ - $KOLLA_SWIFT_BASE_IMAGE \ - swift-ring-builder \ - /etc/kolla/config/swift/$ring.builder add r1z1-${node}:$next_port/d0 1 - done - - # create the *.ring.gz files - sudo ${CONTAINER_ENGINE} run \ - --rm \ - -v /etc/kolla/config/swift/:/etc/kolla/config/swift/ \ - $KOLLA_SWIFT_BASE_IMAGE \ - swift-ring-builder \ - /etc/kolla/config/swift/$ring.builder rebalance - - # display contents for debugging - sudo ${CONTAINER_ENGINE} run \ - --rm \ - -v /etc/kolla/config/swift/:/etc/kolla/config/swift/ \ - $KOLLA_SWIFT_BASE_IMAGE \ - swift-ring-builder \ - /etc/kolla/config/swift/$ring.builder - - # next ring = next port - next_port=$((next_port+1)) - done -} - -function init_swift { - echo "Initialising Swift" - init_swift_logged &> /tmp/logs/ansible/init-swift -} - - -init_swift diff --git a/tests/run.yml b/tests/run.yml index 791922f923..af07a8ce4d 100644 --- a/tests/run.yml +++ b/tests/run.yml @@ -21,7 +21,7 @@ need_build_image: "{{ kolla_build_images | default(false) }}" build_image_tag: "change_{{ zuul.change | default('none') }}" openstack_core_enabled: "{{ openstack_core_enabled }}" - openstack_core_tested: "{{ scenario in ['core', 'cephadm', 'zun', 'cells', 'swift', 'ovn', 'lets-encrypt'] }}" + openstack_core_tested: "{{ scenario in ['core', 'cephadm', 'zun', 'cells', 'ovn', 'lets-encrypt'] }}" dashboard_enabled: "{{ openstack_core_enabled }}" upper_constraints_file: "{{ ansible_env.HOME }}/src/opendev.org/openstack/requirements/upper-constraints.txt" docker_image_tag_suffix: "{{ '-aarch64' if ansible_architecture == 'aarch64' else '' }}" @@ -34,15 +34,9 @@ name: "{{ 'bind-utils' if ansible_os_family == 'RedHat' else 'dnsutils' }}" when: scenario == 'magnum' - - name: Install xfsprogs package for Swift filesystems - become: true - package: - name: xfsprogs - when: scenario == 'swift' - - name: Prepare disks for a storage service script: "setup_disks.sh {{ disk_type }}" - when: scenario in ['cephadm', 'zun', 'swift'] + when: scenario in ['cephadm', 'zun'] become: true vars: disk_type: "{{ 'ceph-lvm' if scenario in ['cephadm'] else scenario }}" @@ -155,7 +149,6 @@ - neutron - nova - bifrost - - swift - name: Generate configuration files template: @@ -314,13 +307,6 @@ shell: cmd: "{{ kolla_ansible_venv_path }}/bin/ansible all -i {{ kolla_inventory_path }} -m setup > /tmp/logs/ansible/initial-setup" - - name: Set facts for Swift initialisation - set_fact: - # NOTE(yoctozepto): no support for upgrades for now - docker_image_tag: "{{ build_image_tag if need_build_image else (zuul.branch | basename) ~ '-' ~ base_distro ~ '-' ~ base_distro_version ~ docker_image_tag_suffix }}" - docker_image_prefix: "{{ 'primary:4000/lokolla/' if need_build_image else '{{ zuul_site_mirror_fqdn }}:4447/openstack.kolla/' }}" - when: scenario in ['swift'] - # NOTE(yoctozepto): k-a octavia-certificates should run before k-a bootstrap-servers # because the latter hijacks /etc/kolla permissions (due to same directory on the # same host being used by both) @@ -354,20 +340,6 @@ KOLLA_ANSIBLE_VENV_PATH: "{{ kolla_ansible_venv_path }}" CONTAINER_ENGINE: "{{ container_engine }}" - - name: Run init-swift.sh script - script: - cmd: init-swift.sh - executable: /bin/bash - chdir: "{{ kolla_ansible_src_dir }}" - environment: - KOLLA_SWIFT_BASE_IMAGE: "{{ docker_image_prefix }}swift-base:{{ docker_image_tag }}" - # NOTE(yoctozepto): no IPv6 for now - STORAGE_NODES: "{{ groups['all'] | map('extract', hostvars, - ['ansible_'+api_interface_name | replace('-','_') , 'ipv4', 'address']) - | join(' ') }}" - CONTAINER_ENGINE: "{{ container_engine }}" - when: scenario == 'swift' - # At this point we have generated all necessary configuration, and are # ready to deploy the control plane services. Control flow now depends on # the scenario being exercised. @@ -485,13 +457,6 @@ BASE_DISTRO: "{{ base_distro }}" CONTAINER_ENGINE: "{{ container_engine }}" - - name: Run test-swift.sh script - script: - cmd: test-swift.sh - executable: /bin/bash - chdir: "{{ kolla_ansible_src_dir }}" - when: scenario == 'swift' - - name: Run test-scenario-nfv.sh script script: cmd: test-scenario-nfv.sh @@ -793,12 +758,6 @@ IP_VERSION: "{{ 6 if address_family == 'ipv6' else 4 }}" when: openstack_core_tested - - name: Run test-swift.sh script (post-upgrade) - command: - cmd: tests/test-swift.sh - chdir: "{{ kolla_ansible_src_dir }}" - when: scenario == 'swift' - - name: Run test-prometheus-opensearch.sh script (post-upgrade) script: cmd: test-prometheus-opensearch.sh diff --git a/tests/templates/globals-default.j2 b/tests/templates/globals-default.j2 index 61eb439aa6..35ca0b6fd0 100644 --- a/tests/templates/globals-default.j2 +++ b/tests/templates/globals-default.j2 @@ -273,6 +273,5 @@ enable_skyline: "yes" skyline_enable_sso: "yes" {% endif %} -{% if groups['all'] | length > 1 %} mariadb_monitor_read_only_interval: "30000" -{% endif %} +mariadb_monitor_galera_healthcheck_timeout: "30000" diff --git a/tests/test-swift.sh b/tests/test-swift.sh deleted file mode 100755 index b9cadc3680..0000000000 --- a/tests/test-swift.sh +++ /dev/null @@ -1,71 +0,0 @@ -#!/bin/bash - -set -o xtrace -set -o errexit - -export PYTHONUNBUFFERED=1 - - -function test_swift_logged { - . /etc/kolla/admin-openrc.sh - . ~/openstackclient-venv/bin/activate - - echo "TESTING: Swift" - - CONTAINER_NAME=test_container - - openstack --debug container create $CONTAINER_NAME - - CONTENT='Hello, Swift!' - FILE_PATH=/tmp/swift_test_object - - echo "$CONTENT" > $FILE_PATH - - openstack --debug object create $CONTAINER_NAME $FILE_PATH - - rm -f $FILE_PATH - - openstack --debug object save $CONTAINER_NAME $FILE_PATH - - SAVED_CONTENT=`cat $FILE_PATH` - - rm -f $FILE_PATH - - if [ "$SAVED_CONTENT" != "$CONTENT" ]; then - echo 'Content mismatch' >&2 - return 1 - fi - - openstack --debug container show $CONTAINER_NAME - - openstack --debug object store account show - - cleanup_swift - - echo "SUCCESS: Swift" -} - -function cleanup_swift { - openstack --debug object delete $CONTAINER_NAME $FILE_PATH - - openstack --debug container delete $CONTAINER_NAME -} - -function test_swift { - echo "Testing Swift" - log_file=/tmp/logs/ansible/test-swift - if [[ -f $log_file ]]; then - log_file=${log_file}-upgrade - fi - test_swift_logged > $log_file 2>&1 - result=$? - if [[ $result != 0 ]]; then - echo "Testing Swift failed. See ansible/test-swift for details" - else - echo "Successfully tested Swift. See ansible/test-swift for details" - fi - return $result -} - - -test_swift diff --git a/zuul.d/base.yaml b/zuul.d/base.yaml index 6af8a69a40..7c50b1d653 100644 --- a/zuul.d/base.yaml +++ b/zuul.d/base.yaml @@ -148,20 +148,6 @@ vars: scenario: zun -- job: - name: kolla-ansible-swift-base - parent: kolla-ansible-scenario-base - voting: false - files: !inherit - - ^ansible/roles/(glance|swift)/ - - ^tests/setup_disks.sh - - ^tests/init-swift.sh - - ^tests/test-core-openstack.sh - - ^tests/test-dashboard.sh - - ^tests/test-swift.sh - vars: - scenario: swift - - job: name: kolla-ansible-cephadm-base parent: kolla-ansible-base diff --git a/zuul.d/jobs.yaml b/zuul.d/jobs.yaml index 5c278c761d..a2c882f89a 100644 --- a/zuul.d/jobs.yaml +++ b/zuul.d/jobs.yaml @@ -321,50 +321,6 @@ vars: base_distro: ubuntu -- job: - name: kolla-ansible-rocky9-swift - parent: kolla-ansible-swift-base - nodeset: kolla-ansible-rocky9-multi - vars: - base_distro: rocky - # NOTE(yoctozepto): We need this here because we initialise Swift outside - # of Kolla Ansible and need to know the version of images. - base_distro_version: 9 - -- job: - name: kolla-ansible-ubuntu-swift - parent: kolla-ansible-swift-base - nodeset: kolla-ansible-noble-multi - vars: - base_distro: ubuntu - # NOTE(yoctozepto): We need this here because we initialise Swift outside - # of Kolla Ansible and need to know the version of images. - base_distro_version: noble - -- job: - name: kolla-ansible-rocky9-swift-upgrade - parent: kolla-ansible-swift-base - nodeset: kolla-ansible-rocky9-multi - timeout: 10800 - vars: - base_distro: rocky - # NOTE(yoctozepto): We need this here because we initialise Swift outside - # of Kolla Ansible and need to know the version of images. - base_distro_version: 9 - is_upgrade: yes - -- job: - name: kolla-ansible-ubuntu-swift-upgrade - parent: kolla-ansible-swift-base - nodeset: kolla-ansible-noble-multi - timeout: 10800 - vars: - base_distro: ubuntu - # NOTE(yoctozepto): We need this here because we initialise Swift outside - # of Kolla Ansible and need to know the version of images. - base_distro_version: noble - is_upgrade: yes - - job: name: kolla-ansible-rocky9-scenario-nfv parent: kolla-ansible-scenario-nfv-base diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml index d9d80d13d5..af867b8bcd 100644 --- a/zuul.d/project.yaml +++ b/zuul.d/project.yaml @@ -29,8 +29,6 @@ - kolla-ansible-ubuntu-bifrost - kolla-ansible-rocky9-zun - kolla-ansible-ubuntu-zun - - kolla-ansible-rocky9-swift - - kolla-ansible-ubuntu-swift - kolla-ansible-rocky9-scenario-nfv - kolla-ansible-rocky9-magnum - kolla-ansible-ubuntu-magnum @@ -114,7 +112,3 @@ post: jobs: - publish-openstack-python-branch-tarball - experimental: - jobs: - - kolla-ansible-rocky9-swift-upgrade - - kolla-ansible-ubuntu-swift-upgrade