← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1866743] [NEW] Restart neutron-linuxbridge-agent service led to all ports status changed

 

Public bug reported:

  I use the linuxbridge agent as my neutron ML2 plugin and the
securitygroup driver is IptablesFirewallDriver. config like:

neutron.conf
[DEFAULT]
...
interface_driver = linuxbridge
core_plugin = ml2
service_plugins = lbaasv2,qos,router
...

ml2_conf.ini
[ml2]
type_drivers = flat,vlan,vxlan
tenant_network_types = vxlan
mechanism_drivers = linuxbridge,l2population
extension_drivers = qos,port_security

[ml2_type_vlan]
network_vlan_ranges = provider
mechanism_drivers = linuxbridge,l2population,genericswitch

[ml2_type_flat]
flat_networks = physnet1

[ml2_type_vxlan]
vni_ranges = 1:1000
vxlan_group = 239.1.1.1

[securitygroup]
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver

[linux_bridge]
physical_interface_mappings = provider:ens192

[vxlan]
l2_population = true
local_ip = 10.25.135.194

[agent]
extensions = qos


  when I restart the neutron-linuxbridge-agent on any compute node, I found this restart action will lead to all compute nodes to get all ports informations from neutron-server, but in this getting port in information process, the neutron-server may change port status, from ACTIVE -> BUILD, and the status changes will trigger all compute node to refresh firewall. 
  I have a lot of compute nodes and Thousands of port, The rabbitmq and neutron-server service will be High CPU load. I think the port status should not changed when restart neutron-linuxbridge-agent.

 And, I got some DEBUG log in the neutron-server.log:

2019-09-18 11:23:22.508 30 DEBUG neutron.notifiers.nova [req-
995ee681-c2af-4777-8013-95e0f15114db - - - - -] Ignoring state change
previous_port_status: ACTIVE current_port_status: BUILD port_id
3180492f-3f52-47a4-8a29-54fda395511f record_port_status_changed
/var/lib/kolla/venv/lib/python2.7/site-
packages/neutron/notifiers/nova.py:209

** Affects: neutron
     Importance: Undecided
     Assignee: tony (yanhongchang5)
         Status: New

** Changed in: neutron
     Assignee: (unassigned) => tony (yanhongchang5)

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1866743

Title:
  Restart neutron-linuxbridge-agent service led to all ports status
  changed

Status in neutron:
  New

Bug description:
    I use the linuxbridge agent as my neutron ML2 plugin and the
  securitygroup driver is IptablesFirewallDriver. config like:

  neutron.conf
  [DEFAULT]
  ...
  interface_driver = linuxbridge
  core_plugin = ml2
  service_plugins = lbaasv2,qos,router
  ...

  ml2_conf.ini
  [ml2]
  type_drivers = flat,vlan,vxlan
  tenant_network_types = vxlan
  mechanism_drivers = linuxbridge,l2population
  extension_drivers = qos,port_security

  [ml2_type_vlan]
  network_vlan_ranges = provider
  mechanism_drivers = linuxbridge,l2population,genericswitch

  [ml2_type_flat]
  flat_networks = physnet1

  [ml2_type_vxlan]
  vni_ranges = 1:1000
  vxlan_group = 239.1.1.1

  [securitygroup]
  firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver

  [linux_bridge]
  physical_interface_mappings = provider:ens192

  [vxlan]
  l2_population = true
  local_ip = 10.25.135.194

  [agent]
  extensions = qos

  
    when I restart the neutron-linuxbridge-agent on any compute node, I found this restart action will lead to all compute nodes to get all ports informations from neutron-server, but in this getting port in information process, the neutron-server may change port status, from ACTIVE -> BUILD, and the status changes will trigger all compute node to refresh firewall. 
    I have a lot of compute nodes and Thousands of port, The rabbitmq and neutron-server service will be High CPU load. I think the port status should not changed when restart neutron-linuxbridge-agent.

   And, I got some DEBUG log in the neutron-server.log:

  2019-09-18 11:23:22.508 30 DEBUG neutron.notifiers.nova [req-
  995ee681-c2af-4777-8013-95e0f15114db - - - - -] Ignoring state change
  previous_port_status: ACTIVE current_port_status: BUILD port_id
  3180492f-3f52-47a4-8a29-54fda395511f record_port_status_changed
  /var/lib/kolla/venv/lib/python2.7/site-
  packages/neutron/notifiers/nova.py:209

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1866743/+subscriptions


Follow ups