← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1561046] [NEW] If there is a /var/lib/neutron/ha_confs/<router-id>.pid then l3 agent fails to spawn a keepalived process for that router

 

Public bug reported:

If the .pid file for the previous keepalived process (located in
/var/lib/neutron/ha_confs/<router_id>.pid) already exists then the L3
agent fails to spawn a keepalived process for that router.

For example, upon neutron node shutdown and restart the processes are
assigned new PIDs that can be same as those previously assigned to some
of the keepalived processes. The latter are captured in PID files and
once keepalived starts, it detects that there is a running process with
that PID and reports "daemon is already running".

Steps to reproduce:
1)  Pick a router that you want to make display this issue;  record the router_id
2)  kill the two processes denoted in these two files: /lib/neutron/ha_confs/<router_id>.pid and /lib/neutron/ha_confs/<router_id>.pid-vrrp
3)  Make sure that no keepalived process comes back for this router
4) Now pick out an existing process id - anything that's really  running - and put that processid into the PID files.  For example, a background sleep process running as pid 12345 can be put into <router_id>.pid file and <router_id>.pid-vrrp.

Bug valid with keepalived version 1.2.13 and 1.2.19.

** Affects: neutron
     Importance: Undecided
     Assignee: Hynek Mlnarik (hmlnarik-s)
         Status: In Progress


** Tags: l3-ha

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

Title:
  If there is a /var/lib/neutron/ha_confs/<router-id>.pid then l3 agent
  fails to spawn a keepalived process for that router

Status in neutron:
  In Progress

Bug description:
  If the .pid file for the previous keepalived process (located in
  /var/lib/neutron/ha_confs/<router_id>.pid) already exists then the L3
  agent fails to spawn a keepalived process for that router.

  For example, upon neutron node shutdown and restart the processes are
  assigned new PIDs that can be same as those previously assigned to
  some of the keepalived processes. The latter are captured in PID files
  and once keepalived starts, it detects that there is a running process
  with that PID and reports "daemon is already running".

  Steps to reproduce:
  1)  Pick a router that you want to make display this issue;  record the router_id
  2)  kill the two processes denoted in these two files: /lib/neutron/ha_confs/<router_id>.pid and /lib/neutron/ha_confs/<router_id>.pid-vrrp
  3)  Make sure that no keepalived process comes back for this router
  4) Now pick out an existing process id - anything that's really  running - and put that processid into the PID files.  For example, a background sleep process running as pid 12345 can be put into <router_id>.pid file and <router_id>.pid-vrrp.

  Bug valid with keepalived version 1.2.13 and 1.2.19.

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


Follow ups