ovs-agent fails to start because only sriov datanetwork is configured

Bug #1836313 reported by ChenjieXu
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
StarlingX
Triaged
Low
Unassigned

Bug Description

Brief Description
-----------------
The ovs-agent will fail to start if only sriov datanetwork is configured. Because the bridge_mappings which is 'bridge_mappings: public:br-ex' won't be changed if no normal datanetwork configured. The ovs-agent fails to start because it can't find bridge br-ex which doesn't exit on the host.

Severity
--------
Minor

Steps to Reproduce
------------------
1. Only configure a sriov datanetwork during set up StarlingX and do not configure any other datanetwork:
   system datanetwork-add physnet0 vlan
   system host-if-modify -m 1500 -n sriov -c pci-sriov -N 5 controller-0 ${DATA0IFUUID}
   system interface-datanetwork-assign controller-0 8761d6f6-202e-4423-beb6-d8c142861707 physnet0
2. After stx-openstack applied, check the status of ovs agent:
   system application-list
   kubectl get pod -n openstack | grep ovs-agent

Expected Behavior
------------------
ovs agent running correctly:
neutron-ovs-agent-controller-0-a762cb46-tg42j 1/1 Running 1 3h52m

Actual Behavior
----------------
ovs agent fails to run:
neutron-ovs-agent-controller-0-a762cb46-sqz9q 0/1 CrashLoopBackOff 8 20m

Reproducibility
---------------
100%

System Configuration
--------------------
AIO Simplex

Branch/Pull Time/Commit
-----------------------
BUILD_DATE="2019-07-09 04:53:50 +0000"

Last Pass
---------
Unclear

Timestamp/Logs
--------------
kubectl logs -n openstack neutron-ovs-agent-controller-0-a762cb46-sqz9q
+ exec neutron-openvswitch-agent --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2_conf.ini --config-file /tmp/pod-shared/ml2-local-ip.ini --config-file /etc/neutron/plugins/ml2/openvswitch_agent.ini
2019-07-12 11:18:46.772 590 INFO neutron.common.config [-] Logging enabled!
2019-07-12 11:18:46.772 590 INFO neutron.common.config [-] Logging enabled!
2019-07-12 11:18:46.772 590 INFO neutron.common.config [-] /var/lib/openstack/bin/neutron-openvswitch-agent version 14.0.2.dev81
2019-07-12 11:18:46.772 590 INFO neutron.common.config [-] /var/lib/openstack/bin/neutron-openvswitch-agent version 14.0.2.dev81
2019-07-12 11:18:47.560 590 INFO neutron.agent.agent_extensions_manager [-] Loaded agent extensions: []
2019-07-12 11:18:47.560 590 INFO neutron.agent.agent_extensions_manager [-] Loaded agent extensions: []
2019-07-12 11:18:48.514 590 INFO neutron.plugins.ml2.drivers.openvswitch.agent.openflow.native.ovs_bridge [-] Bridge br-int has datapath-ID 0000ce5651567c45
2019-07-12 11:18:48.514 590 INFO neutron.plugins.ml2.drivers.openvswitch.agent.openflow.native.ovs_bridge [-] Bridge br-int has datapath-ID 0000ce5651567c45
2019-07-12 11:18:51.641 590 INFO neutron.plugins.ml2.drivers.openvswitch.agent.ovs_neutron_agent [req-7daa2f4a-ac77-46c0-8b6c-4291d6e06bc4 - - - - -] Mapping physical network public to bridge br-ex
2019-07-12 11:18:51.641 590 INFO neutron.plugins.ml2.drivers.openvswitch.agent.ovs_neutron_agent [req-7daa2f4a-ac77-46c0-8b6c-4291d6e06bc4 - - - - -] Mapping physical network public to bridge br-ex
2019-07-12 11:18:51.641 590 ERROR neutron.plugins.ml2.drivers.openvswitch.agent.ovs_neutron_agent [req-7daa2f4a-ac77-46c0-8b6c-4291d6e06bc4 - - - - -] Bridge br-ex for physical network public does not exist. Agent terminated!
2019-07-12 11:18:51.641 590 ERROR neutron.plugins.ml2.drivers.openvswitch.agent.ovs_neutron_agent [req-7daa2f4a-ac77-46c0-8b6c-4291d6e06bc4 - - - - -] Bridge br-ex for physical network public does not exist. Agent terminated!

system helm-override-show stx-openstack neutron openstack
```
| | neutron_ovs-agent: |
| | hosts: |
| | - conf: |
| | auto_bridge_add: {} |
| | plugins: |
| | openvswitch_agent: |
| | agent: {} |
| | ovs: |
| | datapath_type: system |
| | integration_bridge: br-int |
| | vhostuser_socket_dir: /var/run/openvswitch |
| | sriov_agent: |
| | agent: |
| | root_helper: "" |
| | securitygroup: |
| | firewall_driver: noop |
| | sriov_nic: |
| | physical_device_mappings: physnet0:enp65s0f0, |
| | name: controller-0 |
| | neutron_sriov-agent: |
| | hosts: |
| | - conf: |
| | auto_bridge_add: {} |
| | plugins: |
| | openvswitch_agent: |
| | agent: {} |
| | ovs: |
| | datapath_type: system |
| | integration_bridge: br-int |
| | vhostuser_socket_dir: /var/run/openvswitch |
| | sriov_agent: |
| | agent: |
| | root_helper: "" |
| | securitygroup: |
| | firewall_driver: noop |
| | sriov_nic: |
| | physical_device_mappings: physnet0:enp65s0f0, |
| | name: controller-0
```

Test Activity
-------------
Developer Testing

Revision history for this message
ChenjieXu (midone) wrote :
Revision history for this message
ChenjieXu (midone) wrote :

bridge_mappings is set as public:br-ex initially:
https://github.com/openstack/stx-config/blob/master/kubernetes/applications/stx-openstack/stx-openstack-helm/stx-openstack-helm/manifests/manifest.yaml#L1201

If no normal datanetwork is configured, the bridge_mappings won't be changed and ovs agent will fail to start.

Revision history for this message
Ghada Khalil (gkhalil) wrote :

Marking as low priority / not gating - this is a known stx limitation. This is more like an enhancement request.

Changed in starlingx:
importance: Undecided → Low
tags: added: stx.networking
Changed in starlingx:
status: New → Triaged
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.