← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1510759] [NEW] L3 agent delete HA-router sequence need change

 

Public bug reported:

Now ,L3 agent delete a HA-router as follows:

https://github.com/openstack/neutron/blob/master/neutron/agent/l3/ha_router.py#L379

    def delete(self, agent):
        super(HaRouter, self).delete(agent)
        self.destroy_state_change_monitor(self.process_monitor)
        self.ha_network_removed()
        self.disable_keepalived()

1. delete namespace
2. destroy state monitor(kill -9)
3. remove ha interface from br-int
4. stop keepalived (kill -15)

On my company's openstack environment(ubuntu14.04+kilo),I find in network node,have many keepalived process run out of control.
These keepalived process didn't belong to any namespace.
So I guess the delete Router sequence have problem.I think the delete sequence should be:

    def delete(self, agent):
        self.destroy_state_change_monitor(self.process_monitor)
        self.disable_keepalived()
        self.ha_network_removed()
        super(HaRouter, self).delete(agent)

** Affects: neutron
     Importance: Undecided
         Status: New

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

Title:
  L3 agent delete HA-router sequence need change

Status in neutron:
  New

Bug description:
  Now ,L3 agent delete a HA-router as follows:

  https://github.com/openstack/neutron/blob/master/neutron/agent/l3/ha_router.py#L379

      def delete(self, agent):
          super(HaRouter, self).delete(agent)
          self.destroy_state_change_monitor(self.process_monitor)
          self.ha_network_removed()
          self.disable_keepalived()

  1. delete namespace
  2. destroy state monitor(kill -9)
  3. remove ha interface from br-int
  4. stop keepalived (kill -15)

  On my company's openstack environment(ubuntu14.04+kilo),I find in network node,have many keepalived process run out of control.
  These keepalived process didn't belong to any namespace.
  So I guess the delete Router sequence have problem.I think the delete sequence should be:

      def delete(self, agent):
          self.destroy_state_change_monitor(self.process_monitor)
          self.disable_keepalived()
          self.ha_network_removed()
          super(HaRouter, self).delete(agent)

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


Follow ups