From 834bc97f98aad2f49f21ba1fb6de587bded10ce8 Mon Sep 17 00:00:00 2001 From: Piotr Milewski Date: Fri, 16 Jan 2026 15:42:27 +0100 Subject: neutron: inject neutron_vpnaas.conf into auxiliary services When enable_neutron_vpnaas is enabled, neutron-rpc-server and neutron workers fail to start because they attempt to load the VPNaaS service plugin but lack the required neutron_vpnaas.conf configuration file. This commit ensures the configuration file is correctly mapped and injected into: - neutron-rpc-server - neutron-ovn-maintenance-worker - neutron-periodic-worker Closes-Bug: #2138498 Change-Id: Ic94d8024f0d26e9646bad9b8b74cfbcf7ed69728 Signed-off-by: Piotr Milewski --- ansible/roles/neutron/tasks/config.yml | 5 ++++- .../neutron/templates/neutron-ovn-maintenance-worker.json.j2 | 8 +++++++- ansible/roles/neutron/templates/neutron-periodic-worker.json.j2 | 8 +++++++- ansible/roles/neutron/templates/neutron-rpc-server.json.j2 | 8 +++++++- releasenotes/notes/bug-2138498-564e7475f1d4cc27.yaml | 8 ++++++++ 5 files changed, 33 insertions(+), 4 deletions(-) create mode 100644 releasenotes/notes/bug-2138498-564e7475f1d4cc27.yaml diff --git a/ansible/roles/neutron/tasks/config.yml b/ansible/roles/neutron/tasks/config.yml index fa5c2dd90..2cfd5787c 100644 --- a/ansible/roles/neutron/tasks/config.yml +++ b/ansible/roles/neutron/tasks/config.yml @@ -99,8 +99,11 @@ vars: service_name: "{{ item.key }}" services_need_neutron_vpnaas_conf: - - "neutron-server" - "neutron-l3-agent" + - "neutron-ovn-maintenance-worker" + - "neutron-periodic-worker" + - "neutron-rpc-server" + - "neutron-server" merge_configs: sources: - "{{ role_path }}/templates/neutron_vpnaas.conf.j2" diff --git a/ansible/roles/neutron/templates/neutron-ovn-maintenance-worker.json.j2 b/ansible/roles/neutron/templates/neutron-ovn-maintenance-worker.json.j2 index 42937f208..a91620a00 100644 --- a/ansible/roles/neutron/templates/neutron-ovn-maintenance-worker.json.j2 +++ b/ansible/roles/neutron/templates/neutron-ovn-maintenance-worker.json.j2 @@ -12,7 +12,13 @@ "dest": "/etc/neutron/plugins/ml2/ml2_conf.ini", "owner": "neutron", "perm": "0600" - }{% if kolla_copy_ca_into_containers | bool %}, + }{% if enable_neutron_vpnaas | bool %}, + { + "source": "{{ container_config_directory }}/neutron_vpnaas.conf", + "dest": "/etc/neutron/neutron_vpnaas.conf", + "owner": "neutron", + "perm": "0600" + }{% endif %}{% if kolla_copy_ca_into_containers | bool %}, { "source": "{{ container_config_directory }}/ca-certificates", "dest": "/var/lib/kolla/share/ca-certificates", diff --git a/ansible/roles/neutron/templates/neutron-periodic-worker.json.j2 b/ansible/roles/neutron/templates/neutron-periodic-worker.json.j2 index eb3b67e9b..f123bc6b2 100644 --- a/ansible/roles/neutron/templates/neutron-periodic-worker.json.j2 +++ b/ansible/roles/neutron/templates/neutron-periodic-worker.json.j2 @@ -12,7 +12,13 @@ "dest": "/etc/neutron/plugins/ml2/ml2_conf.ini", "owner": "neutron", "perm": "0600" - }{% if kolla_copy_ca_into_containers | bool %}, + }{% if enable_neutron_vpnaas | bool %}, + { + "source": "{{ container_config_directory }}/neutron_vpnaas.conf", + "dest": "/etc/neutron/neutron_vpnaas.conf", + "owner": "neutron", + "perm": "0600" + }{% endif %}{% if kolla_copy_ca_into_containers | bool %}, { "source": "{{ container_config_directory }}/ca-certificates", "dest": "/var/lib/kolla/share/ca-certificates", diff --git a/ansible/roles/neutron/templates/neutron-rpc-server.json.j2 b/ansible/roles/neutron/templates/neutron-rpc-server.json.j2 index da9a77783..c90eacb31 100644 --- a/ansible/roles/neutron/templates/neutron-rpc-server.json.j2 +++ b/ansible/roles/neutron/templates/neutron-rpc-server.json.j2 @@ -12,7 +12,13 @@ "dest": "/etc/neutron/plugins/ml2/ml2_conf.ini", "owner": "neutron", "perm": "0600" - }{% if kolla_copy_ca_into_containers | bool %}, + }{% if enable_neutron_vpnaas | bool %}, + { + "source": "{{ container_config_directory }}/neutron_vpnaas.conf", + "dest": "/etc/neutron/neutron_vpnaas.conf", + "owner": "neutron", + "perm": "0600" + }{% endif %}{% if kolla_copy_ca_into_containers | bool %}, { "source": "{{ container_config_directory }}/ca-certificates", "dest": "/var/lib/kolla/share/ca-certificates", diff --git a/releasenotes/notes/bug-2138498-564e7475f1d4cc27.yaml b/releasenotes/notes/bug-2138498-564e7475f1d4cc27.yaml new file mode 100644 index 000000000..dcbd2c54d --- /dev/null +++ b/releasenotes/notes/bug-2138498-564e7475f1d4cc27.yaml @@ -0,0 +1,8 @@ +--- +fixes: + - | + Fixed an issue where Neutron sub-services (RPC server, maintenance and + periodic workers) would crash when ``enable_neutron_vpnaas`` was set to + ``yes`` due to missing ``neutron_vpnaas.conf`` file injection. + neutron: inject neutron_vpnaas.conf into auxiliary services + `LP#2138498 `__ -- cgit v1.2.3