Description
===========
In mitaka version, deploy neutron with ovs-dpdk.
If we stop ovs-agent, then re-start the nova-compute,the vm in the host will get network connection failed.
Steps to reproduce
==================
deploy mitaka. with neutron, enabled ovs-dpdk, choose one compute node, where vm has network connection.
run this in host,
1. #systemctl stop neutron-openvswitch-agent.service
2. #systemctl restart openstack-nova-compute.service
then ping $VM_IN_THIS_HOST
Expected result
===============
ping $VM_IN_THIS_HOST would would success
Actual result
=============
ping $VM_IN_THIS_HOST failed.
Reason:
after some digging, I found that nova-compute will try to plug the vif every time when it booting.
Specially for vhostuser port, nova-compute will not check whether it exists as legacy ovs,and it will re-plug the port with vsctl args like "--if-exists del-port vhuxxxx".
(refer https://github.com/openstack/nova/blob/stable/mitaka/nova/virt/libvirt/vif.py#L679-L683)
after recreate the ovs vhostuser port, it will not get the right vlan tag which set from ovs agent.
In the test environment, after restart the ovs agent, the agent will set a proper vlan id for the port. and the network connection will be resumed.
Not sure it's a bug or config issue, do I miss something?
Description
===========
In mitaka version, deploy neutron with ovs-dpdk.
If we stop ovs-agent, then re-start the nova-compute,the vm in the host will get network connection failed.
Steps to reproduce openvswitch- agent.service nova-compute. service
==================
deploy mitaka. with neutron, enabled ovs-dpdk, choose one compute node, where vm has network connection.
run this in host,
1. #systemctl stop neutron-
2. #systemctl restart openstack-
then ping $VM_IN_THIS_HOST
Expected result
===============
ping $VM_IN_THIS_HOST would would success
Actual result
=============
ping $VM_IN_THIS_HOST failed.
Environment
===========
Centos7 ovs2.5.1 dpdk 2.2.0
Reason: /github. com/openstack/ nova/blob/ stable/ mitaka/ nova/virt/ libvirt/ vif.py# L679-L683)
after some digging, I found that nova-compute will try to plug the vif every time when it booting.
Specially for vhostuser port, nova-compute will not check whether it exists as legacy ovs,and it will re-plug the port with vsctl args like "--if-exists del-port vhuxxxx".
(refer https:/
after recreate the ovs vhostuser port, it will not get the right vlan tag which set from ovs agent.
In the test environment, after restart the ovs agent, the agent will set a proper vlan id for the port. and the network connection will be resumed.
Not sure it's a bug or config issue, do I miss something?