Install openvswitch packages in Neutron server container

neutron-server appears to require ovsdb-client to communicate with ovsdb
in an OVN install. On metal, this isn't an issue since ovsdb-client is
installed with openvswitch-common but with LXC, OVS packages aren't installed
in the neutron server lxc container.

Ubuntu/Debian splits out openvswitch-common utilities from the actual
openvswitch service (openvswitch-server), while CentOS/RHEL-based distros
package them all up. This method was chosen as lowest common denominator
between supported releases.

Change-Id: I7a08ed81a15c0678832bcdd192bdc4e10064bd6d
This commit is contained in:
James Denton 2022-11-30 22:21:27 -06:00 committed by Dmitriy Rabotyagov
parent 05948f688d
commit c79d3c2e4c
1 changed files with 2 additions and 1 deletions

View File

@ -22,6 +22,7 @@ neutron_needs_openvswitch: >-
{{ (neutron_services['neutron-openvswitch-agent']['group'] in group_names and neutron_services['neutron-openvswitch-agent'].service_en | bool)
or (neutron_services['neutron-ovn-northd']['group'] in group_names and (neutron_plugin_type == 'ml2.ovn') | bool)
or (neutron_services['neutron-ovn-controller']['group'] in group_names and (neutron_plugin_type == 'ml2.ovn') | bool)
or (neutron_services['neutron-server']['group'] in group_names and (neutron_plugin_type == 'ml2.ovn') | bool)
or ((neutron_services['neutron-server']['group'] not in group_names) and neutron_plugin_type == 'ml2.opendaylight') }}
# Set the Calico Felix agent executable destination path
@ -264,7 +265,7 @@ _neutron_non_tunnel_types:
- vlan
- local
_neutron_ovs_disabled: "{{ (neutron_services['neutron-ovn-northd']['group'] in group_names) and (neutron_services['neutron-ovn-controller']['group'] not in group_names) }}"
_neutron_ovs_disabled: "{{ (neutron_services['neutron-ovn-northd']['group'] or neutron_services['neutron-server']['group'] in group_names) and (neutron_services['neutron-ovn-controller']['group'] not in group_names) and (neutron_plugin_type == 'ml2.ovn') }}"
# Tunnel network types used by the OVS agent
neutron_tunnel_types: "{{ neutron_ml2_drivers_type.split(',') | difference(_neutron_non_tunnel_types) | join(',') }}"