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

Bug #1836313 reported by ChenjieXu on 2019-07-12
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
StarlingX
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

ChenjieXu (midone) wrote :
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.

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  Edit
Everyone can see this information.

Other bug subscribers

Bug attachments