a4beb63c20
Partially-implements: blueprint better-reconfigure Change-Id: I3879b9339b54e1d063dd1c4673bac85ced333335
362 lines
17 KiB
YAML
362 lines
17 KiB
YAML
---
|
|
- name: Restart openvswitch-db-server container
|
|
vars:
|
|
service_name: "openvswitch-db-server"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
openvswitch_db_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
when:
|
|
- action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or openvswitch_db_container | changed
|
|
notify:
|
|
- Waiting the openvswitch_db service to be ready
|
|
- Ensuring OVS bridge is properly setup
|
|
|
|
- name: Waiting the openvswitch_db service to be ready
|
|
command: docker exec openvswitch_db ovs-vsctl --no-wait show
|
|
register: check_result
|
|
until: check_result | success
|
|
changed_when: False
|
|
retries: 30
|
|
delay: 2
|
|
notify:
|
|
|
|
- name: Ensuring OVS bridge is properly setup
|
|
command: docker exec openvswitch_db /usr/local/bin/kolla_ensure_openvswitch_configured {{ item.0 }} {{ item.1 }}
|
|
register: status
|
|
changed_when: status.stdout.find('changed') != -1
|
|
with_together:
|
|
- "{{ neutron_bridge_name.split(',') }}"
|
|
- "{{ neutron_external_interface.split(',') }}"
|
|
|
|
- name: Restart openvswitch-vswitchd container
|
|
vars:
|
|
service_name: "openvswitch-vswitchd"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
openvswitch_vswitchd_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or openvswitch_vswitchd_container | changed
|
|
|
|
- name: Restart neutron-server container
|
|
vars:
|
|
service_name: "neutron-server"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_lbaas_conf: "{{ neutron_lbaas_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_server_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_lbaas_conf | changed
|
|
or neutron_vpnaas_conf | changed
|
|
or neutron_ml2_conf | changed
|
|
or policy_json | changed
|
|
or neutron_server_container | changed
|
|
|
|
- name: Restart neutron-openvswitch-agent container
|
|
vars:
|
|
service_name: "neutron-openvswitch-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_openvswitch_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_ml2_conf | changed
|
|
or policy_json | changed
|
|
or neutron_openvswitch_agent_container | changed
|
|
|
|
- name: Restart fake neutron-openvswitch-agent container
|
|
vars:
|
|
service_name: "neutron-openvswitch-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_openvswitch_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
with_sequence: "start=1 end={{ num_nova_fake_per_node }}"
|
|
when:
|
|
- action != "config"
|
|
- enabled_nova_fake | bool
|
|
- neutron_plugin_agent == "openvswitch"
|
|
- inventory_hostname in groups["compute"]
|
|
- fake_config_json | changed
|
|
or fake_neutron_conf | changed
|
|
or fake_neutron_ml2_conf_ini | changed
|
|
or check_fake_neutron_openvswitch_agent | changed
|
|
|
|
- name: Restart fake neutron-sfc-agent container
|
|
vars:
|
|
service_name: "neutron-sfc-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_sfc_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
with_sequence: "start=1 end={{ num_nova_fake_per_node }}"
|
|
when:
|
|
- action != "config"
|
|
- enabled_nova_fake | bool
|
|
- neutron_plugin_agent == "sfc"
|
|
- inventory_hostname in groups["compute"]
|
|
- fake_config_json | changed
|
|
or fake_neutron_conf | changed
|
|
or fake_neutron_ml2_conf_ini | changed
|
|
or check_fake_neutron_sfc_agent | changed
|
|
|
|
# TODO(Jeffrey4l): sfc do not have config.json file at all. it is not finished
|
|
- name: Restart neutron-sfc-agent container
|
|
vars:
|
|
service_name: "neutron-sfc-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_sfc_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_sfc_agent_container | changed
|
|
|
|
- name: Restart neutron-linuxbridge-agent container
|
|
vars:
|
|
service_name: "neutron-linuxbridge-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_linuxbridge_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
environment: "{{ service.environment }}"
|
|
volumes: "{{ service.volumes }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_ml2_conf | changed
|
|
or policy_json | changed
|
|
or neutron_linuxbridge_agent_container | changed
|
|
|
|
- name: Restart neutron-dhcp-agent container
|
|
vars:
|
|
service_name: "neutron-dhcp-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_dhcp_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_ml2_conf | changed
|
|
or dhcp_agent_ini | changed
|
|
or dnsmasq_conf | changed
|
|
or policy_json | changed
|
|
or neutron_dhcp_agent_container | changed
|
|
|
|
- name: Restart neutron-l3-agent container
|
|
vars:
|
|
service_name: "neutron-l3-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_l3_agent_ini: "{{ neutron_l3_agent_inis.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_fwaas_driver_ini: "{{ neutron_fwaas_driver_inis.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_l3_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_ml2_conf | changed
|
|
or neutron_l3_agent_ini | changed
|
|
or neutron_fwaas_driver_ini | changed
|
|
or policy_json | changed
|
|
or neutron_l3_agent_container | changed
|
|
|
|
- name: Restart neutron-lbaas-agent container
|
|
vars:
|
|
service_name: "neutron-lbaas-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_lbaas_conf: "{{ neutron_lbaas_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_lbaas_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_ml2_conf | changed
|
|
or neutron_lbaas_agent_ini | changed
|
|
or policy_json | changed
|
|
or neutron_lbaas_agent_container | changed
|
|
|
|
- name: Restart neutron-metadata-agent container
|
|
vars:
|
|
service_name: "neutron-metadata-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_metadata_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_ml2_conf | changed
|
|
or neutron_metadata_agent_ini | changed
|
|
or policy_json | changed
|
|
or neutron_metadata_agent_container | changed
|
|
|
|
- name: Restart neutron-vpnaas-agent container
|
|
vars:
|
|
service_name: "neutron-vpnaas-agent"
|
|
service: "{{ neutron_services[service_name] }}"
|
|
config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_l3_agent_ini: "{{ neutron_l3_agent_inis.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_fwaas_driver_ini: "{{ neutron_fwaas_driver_inis.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
neutron_vpnaas_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
privileged: "{{ service.privileged | default(False) }}"
|
|
when:
|
|
- action != "config"
|
|
- service.enabled | bool
|
|
- service.host_in_groups | bool
|
|
- config_json | changed
|
|
or neutron_conf | changed
|
|
or neutron_ml2_conf | changed
|
|
or neutron_l3_agent_ini | changed
|
|
or neutron_fwaas_driver_ini | changed
|
|
or neutron_vpnaas_agent_ini | changed
|
|
or policy_json | changed
|
|
or neutron_vpnaas_agent_container | changed
|