Bug 1828941 - Ignored OVNCMSOptions value from env file in OSP16.1
Summary: Ignored OVNCMSOptions value from env file in OSP16.1
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-heat-templates
Version: 16.1 (Train)
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: beta
: 16.1 (Train on RHEL 8.2)
Assignee: Lucas Alvares Gomes
QA Contact: Eduardo Olivares
URL:
Whiteboard:
Depends On:
Blocks: 1666684 1831709
TreeView+ depends on / blocked
 
Reported: 2020-04-28 15:48 UTC by Eduardo Olivares
Modified: 2020-07-29 07:52 UTC (History)
6 users (show)

Fixed In Version: openstack-tripleo-heat-templates-11.3.2-0.20200514023428.0602d12.el8ost.noarch
Doc Type: No Doc Update
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-07-29 07:52:15 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Launchpad 1875898 0 None None None 2020-04-29 14:13:13 UTC
OpenStack gerrit 724248 0 None MERGED Changes in env files due to new SRIOV roles 2021-02-04 18:23:43 UTC
OpenStack gerrit 725793 0 None MERGED Changes in env files due to new SRIOV roles 2021-02-04 18:23:42 UTC
Red Hat Product Errata RHBA-2020:3148 0 None None None 2020-07-29 07:52:43 UTC

Description Eduardo Olivares 2020-04-28 15:48:06 UTC
Description of problem:
I am deploying OSP16.1 OC with OVN configuration.

The following script is used:
(overcloud) [stack@undercloud-0 ~]$ cat overcloud_deploy.sh                                                                                                                                   #!/bin/bash
THT_PATH='/home/stack/ospd-16-vlan-sriov-hybrid-ha-ovn-squad'


if [[ ! -f "$THT_PATH/roles_data.yaml" ]]; then
  openstack overcloud roles generate -o $THT_PATH/roles_data.yaml ControllerSriov ComputeSriov
fi

openstack -vvv overcloud deploy  \
--templates \
--timeout 120 \
-r $THT_PATH/roles_data.yaml \
-e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml \
-e /usr/share/openstack-tripleo-heat-templates/environments/services/neutron-sriov.yaml \
-e /usr/share/openstack-tripleo-heat-templates/environments/host-config-and-reboot.yaml \
-e /usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-dvr-ha.yaml \
-e /home/stack/ospd-16-vlan-sriov-hybrid-ha-ovn-squad/network-environment.yaml \
-e /home/stack/containers-prepare-parameter.yaml \
-e /home/stack/ospd-16-vlan-sriov-hybrid-ha-ovn-squad/os-net-config-mappings.yaml \
--log-file overcloud_install.log &> overcloud_install.log


The following file includes OVNCMSOptions configuration:
(overcloud) [stack@undercloud-0 ~]$ grep -B1 OVNCMSOptions /usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-dvr-ha.yaml                                          
  ControllerParameters:
    OVNCMSOptions: "enable-chassis-as-gw"




However, OVS is not configured with that value (see no ovn-cms-options value is included):
[root@controller-0 ~]# ovs-vsctl list open . | grep external_ids
external_ids        : {hostname=controller-0.localdomain, ovn-bridge=br-int, ovn-bridge-mappings="datacentre:br-ext-int,tenant:br-int", ovn-encap-ip="10.20.2.67", ovn-encap-type=geneve, ovn-
openflow-probe-interval="60", ovn-remote="tcp:10.20.1.72:6642", ovn-remote-probe-interval="60000", rundir="/var/run/openvswitch", system-id="479e0c95-8438-4a22-aa6f-68673be395bf"}


Due to this, ovn-cms-options value is empty in OVN SB DB:
[root@controller-0 ~]# podman exec -u root -it ovn-dbs-bundle-podman-0 bash                                                                                                                   
()[root@controller-0 /]# ovn-sbctl list chassis | grep ovn-cms-options                                                                                                                        
external_ids        : {datapath-type=system, iface-types="erspan,geneve,gre,internal,ip6erspan,ip6gre,lisp,patch,stt,system,tap,vxlan", is-interconn="false", neutron-metadata-proxy-networks=
"", "neutron:liveness_check_at"="2020-04-28T15:10:22.749200+00:00", "neutron:metadata_liveness_check_at"="2020-04-28T15:10:22.755921+00:00", "neutron:ovn-metadata-id"="2903a683-83f7-4b9c-975
9-d0cf41867aea", "neutron:ovn-metadata-sb-cfg"="1936", ovn-bridge-mappings="datacentre:br-ext-int,tenant:br-int", ovn-chassis-mac-mappings="", ovn-cms-options=""}






Version-Release number of selected component (if applicable):
RHOS-16.1-RHEL-8-20200424.n.0
python3-tripleo-common-11.3.3-0.20200423204446.86569f2.el8ost.noarch

How reproducible:
1/1

Steps to Reproduce:
1. install osp16.1 with ovn configured
2. ovs-vsctl list open . | grep external_ids
3.

Actual results:
No ovn-cms-options value

Expected results:
ovn-cms-options="enable-chassis-as-gw"

Additional info:

Comment 5 Eduardo Olivares 2020-05-25 15:07:39 UTC
Verification information:
puddle: RHOS-16.1-RHEL-8-20200520.n.0
openstack-tripleo-heat-templates-11.3.2-0.20200514023428.0602d12.el8ost.noarch

Files neutron-ovn-dvr-ha.yaml, neutron-ovn-ha.yaml and neutron-ovn-standalone.yaml set OVNCMSOptions for Sriov roles. For example:
/usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-ha.yaml-  ControllerParameters:
/usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-ha.yaml:    OVNCMSOptions: "enable-chassis-as-gw"
/usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-ha.yaml-  ControllerSriovParameters:
/usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-ha.yaml:    OVNCMSOptions: "enable-chassis-as-gw"
/usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-ha.yaml-  NetworkerParameters:
/usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-ha.yaml:    OVNCMSOptions: "enable-chassis-as-gw"
/usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-ha.yaml-  NetworkerSriovParameters:
/usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-ha.yaml:    OVNCMSOptions: "enable-chassis-as-gw"

The value is correctly applied to GW nodes (in this case, to controller nodes):
[heat-admin@controller-0 ~]$ sudo ovs-vsctl get open . external_ids:ovn-cms-options
enable-chassis-as-gw

External connectivity from VM instances with SRIOV ports is successful.

Comment 9 Alex McLeod 2020-06-16 12:29:39 UTC
If this bug requires doc text for errata release, please set the 'Doc Type' and provide draft text according to the template in the 'Doc Text' field. The documentation team will review, edit, and approve the text.

If this bug does not require doc text, please set the 'requires_doc_text' flag to '-'.

Comment 11 errata-xmlrpc 2020-07-29 07:52:15 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2020:3148


Note You need to log in before you can comment on or make changes to this bug.