kolla-ansible/ansible/roles/nova-cell/tasks/reload.yml
Michal Nasiadka dcf5a8b65f Fix var-spacing
ansible-lint introduced var-spacing - let's fix our code.

Change-Id: I0d8aaf3c522a5a6a5495032f6dbed8a2be0251f0
2022-07-25 22:15:15 +02:00

42 lines
1.9 KiB
YAML

---
# NOTE(mgoddard): Currently (just prior to Stein release), sending SIGHUP to
# nova compute services leaves them in a broken state in which they cannot
# start new instances. The following error is seen in the logs:
# "In shutdown, no new events can be scheduled"
# To work around this we restart the nova-compute services.
# Speaking to the nova team, this seems to be an issue in oslo.service,
# with a fix proposed here: https://review.openstack.org/#/c/641907.
# This issue also seems to affect the proxy services, which exit non-zero in
# reponse to a SIGHUP, so restart those too.
# The issue actually affects all nova services, since they remain with RPC
# version pinned to the previous release:
# https://bugs.launchpad.net/kolla-ansible/+bug/1833069.
# TODO(mgoddard): Use SIGHUP when this bug has been fixed.
# NOTE(mgoddard): We use recreate_or_restart_container to cover the case where
# nova_safety_upgrade is "yes", and we need to recreate all containers.
# FIXME(mgoddard): Need to always do this since nova-compute handlers will not
# generally fire on controllers.
- name: Reload nova cell services to remove RPC version cap
vars:
service: "{{ nova_cell_services[item] }}"
become: true
kolla_docker:
action: "recreate_or_restart_container"
common_options: "{{ docker_common_options }}"
name: "{{ service.container_name }}"
image: "{{ service.image }}"
environment: "{{ service.environment | default(omit) }}"
pid_mode: "{{ service.pid_mode | default('') }}"
ipc_mode: "{{ service.ipc_mode | default(omit) }}"
privileged: "{{ service.privileged | default(False) }}"
volumes: "{{ service.volumes | reject('equalto', '') | list }}"
dimensions: "{{ service.dimensions }}"
healthcheck: "{{ service.healthcheck | default(omit) }}"
when:
- kolla_action == 'upgrade'
- inventory_hostname in groups[service.group]
- service.enabled | bool
with_items: "{{ nova_cell_services_require_nova_conf }}"