Test OVS/OVN deployments on CentOS 8

As OVS/OVN overtakes LXB as the preferred network driver, we must
ensure they are deployed properly across supported operating
systems. These tests should ensure OVS-based deployment(s) are
(at least) functional.

Change-Id: I12f442399ab874206a9930877ffbe325ceb902b9
This commit is contained in:
James Denton 2020-11-13 08:10:48 -06:00
parent 4316f49bc8
commit c3cb8525f4
7 changed files with 89 additions and 5 deletions

View File

@ -113,6 +113,16 @@
- ansible_pkg_mgr == 'zypper'
- ovs_nsh_support | bool
- name: Add dependency repos for Neutron
package:
name: "{{ neutron_repos }}"
state: "{{ neutron_package_state }}"
retries: 5
delay: 2
when:
- ansible_pkg_mgr in ['yum', 'dnf']
- neutron_needs_openvswitch | bool
- name: Create ovs tempfiles directory
block:
- name: Create ovs tmpfiles file

View File

@ -41,3 +41,55 @@ neutron_ml2_conf_ini_overrides:
ml2:
physical_network_mtus: vlan:1500
path_mtu: 1558
haproxy_ssl: false
external_lb_vip_address: 10.1.0.1
internal_lb_vip_address: 10.1.0.1
test_neutron_server_host: "{{ external_lb_vip_address }}"
haproxy_default_services:
- service:
haproxy_service_name: neutron_server
haproxy_backend_nodes: "{{ groups['neutron_server'] | default([]) }}"
haproxy_port: 9696
haproxy_ssl: "{{ haproxy_ssl }}"
haproxy_balance_type: http
haproxy_backend_options:
- "httpchk GET /"
- service:
haproxy_service_name: neutron_ovn_northd_northbound
haproxy_backend_nodes: "{{ (groups['neutron_ovn_northd'] | default([]))[:1] }}" # list expected
haproxy_backup_nodes: "{{ (groups['neutron_ovn_northd'] | default([]))[1:] }}"
haproxy_port: 6641
haproxy_bind: "{{ [internal_lb_vip_address] }}"
haproxy_balance_type: tcp
haproxy_timeout_client: 90m
haproxy_timeout_server: 90m
haproxy_backend_options:
- tcpka
haproxy_service_enabled: "{{ (neutron_plugin_type == 'ml2.ovn') and (groups['neutron_ovn_northd'] is defined and groups['neutron_ovn_northd'] | length > 0) }}"
- service:
haproxy_service_name: neutron_ovn_northd_southbound
haproxy_backend_nodes: "{{ (groups['neutron_ovn_northd'] | default([]))[:1] }}"
haproxy_backup_nodes: "{{ (groups['neutron_ovn_northd'] | default([]))[1:] }}"
haproxy_port: 6642
haproxy_bind: "{{ [internal_lb_vip_address] }}"
haproxy_balance_type: tcp
haproxy_timeout_client: 90m
haproxy_timeout_server: 90m
haproxy_backend_options:
- tcpka
haproxy_service_enabled: "{{ (neutron_plugin_type == 'ml2.ovn') and (groups['neutron_ovn_northd'] is defined and groups['neutron_ovn_northd'] | length > 0) }}"
- service:
haproxy_service_name: neutron_ovn_ovsdb_server
haproxy_backend_nodes: "{{ (groups['neutron_ovn_northd'] | default([]))[:1] }}"
haproxy_backup_nodes: "{{ (groups['neutron_ovn_northd'] | default([]))[1:] }}"
haproxy_port: 6640
haproxy_bind: "{{ [internal_lb_vip_address] }}"
haproxy_balance_type: tcp
haproxy_timeout_client: 90m
haproxy_timeout_server: 90m
haproxy_backend_options:
- tcpka
haproxy_service_enabled: "{{ (neutron_plugin_type == 'ml2.ovn') and (groups['neutron_ovn_northd'] is defined and groups['neutron_ovn_northd'] | length > 0) }}"

View File

@ -70,3 +70,9 @@ neutron_server
[utility_all]
infra1
[haproxy_all:children]
haproxy
[haproxy]
localhost

View File

@ -83,3 +83,9 @@ neutron_server
[utility_all]
infra1
[haproxy_all:children]
haproxy
[haproxy]
localhost

View File

@ -13,6 +13,9 @@
# See the License for the specific language governing permissions and
# limitations under the License.
neutron_repos:
- centos-release-nfv-openvswitch
neutron_ovs_distro_packages:
- openvswitch
@ -22,7 +25,7 @@ neutron_ovn_northd_service_name: ovn-northd
neutron_ovn_controller_service_name: ovn-controller
neutron_ovs_socket_path: "/usr/local/var/run/openvswitch"
neutron_ovs_socket_path: "/var/run/openvswitch"
neutron_distro_packages:
- conntrack-tools

View File

@ -19,6 +19,12 @@
vars:
tox_env: ovs
- job:
name: openstack-ansible-ovs-centos-8
parent: openstack-ansible-functional-centos-8
vars:
tox_env: ovs
- job:
name: openstack-ansible-ovn-ubuntu-bionic
parent: openstack-ansible-functional-ubuntu-bionic
@ -26,8 +32,8 @@
tox_env: ovn
- job:
name: openstack-ansible-ovn-centos-7
parent: openstack-ansible-functional-centos-7
name: openstack-ansible-ovn-centos-8
parent: openstack-ansible-functional-centos-8
vars:
tox_env: ovn

View File

@ -24,9 +24,9 @@
check:
jobs:
- openstack-ansible-ovs-ubuntu-bionic
- openstack-ansible-ovs-centos-8
- openstack-ansible-ovn-ubuntu-bionic
- openstack-ansible-ovn-centos-7:
voting: false
- openstack-ansible-ovn-centos-8
- openstack-ansible-deploy-aio_metal_calico-ubuntu-bionic:
voting: false
- openstack-ansible-opendaylight-ubuntu-bionic
@ -39,6 +39,7 @@
gate:
jobs:
- openstack-ansible-ovs-ubuntu-bionic
- openstack-ansible-ovs-centos-8
- openstack-ansible-ovn-ubuntu-bionic
- openstack-ansible-deploy-aio_metal_calico-ubuntu-bionic:
voting: false