Activity log for bug #1960036

Date Who What changed Old value New value Message
2022-02-04 15:54:32 Jason Grammenos bug added bug
2022-02-07 09:43:41 Christian Ehrhardt  nominated for series Ubuntu Focal
2022-02-07 09:43:41 Christian Ehrhardt  bug task added keepalived (Ubuntu Focal)
2022-02-07 09:43:47 Christian Ehrhardt  keepalived (Ubuntu Focal): status New Confirmed
2022-02-07 09:43:49 Christian Ehrhardt  keepalived (Ubuntu): status New Fix Released
2022-02-07 09:44:00 Christian Ehrhardt  keepalived (Ubuntu Focal): assignee Lucas Kanashiro (lucaskanashiro)
2022-02-07 14:59:19 Lucas Kanashiro keepalived (Ubuntu Focal): importance Undecided High
2022-02-07 14:59:26 Lucas Kanashiro tags server-next
2022-02-07 14:59:34 Lucas Kanashiro bug added subscriber Ubuntu Server
2022-02-07 15:10:34 Simon Déziel bug added subscriber Simon Déziel
2022-02-07 20:25:33 Lucas Kanashiro summary Doesnt regain quorum when tracked process restarts [SRU] Doesn't regain quorum when tracked process restarts with PID > 32767
2022-02-07 20:43:50 Lucas Kanashiro description Keepalived doesn't regain quorum when using tracked process due to a bug in high numbered pids The upstream has already fixed in a patch release 2.0.20 https://serverfault.com/questions/993432/keepalived-doesnt-gain-quorum-when-tracked-process-comes-up Could we please get the 2.0.20 released to 20.04 [Impact] If a user is tracking a process with PID > 32767 keepalived will not be able to work as expected. This bug was fixed upstream here: https://github.com/acassen/keepalived/commit/23a5b8113bf0b8ec4718443df0406882e8e4d831 [Test Plan] Launch a Focal VM and run the following commands: # install keepalived and nginx $ apt install -y nginx keepalived # configure keepalived to track the nginx process $ cat << EOF > /etc/keepalived/keepalived.conf global_defs { enable_script_security } vrrp_track_process track_nginx { process nginx weight 10 delay 1 } vrrp_instance lb { interface enp5s0 state MASTER priority 100 virtual_router_id 50 authentication { auth_type PASS auth_pass password } track_process { track_nginx } virtual_ipaddress { 10.191.226.19 } } EOF $ systemctl restart keepalived # stop nginx process to loose quorum $ systemctl stop nginx $ journalctl -u keepalived | grep Quorum Feb 07 20:13:04 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx # start nginx process to gain quorum $ systemctl start nginx $ pidof nginx 3282 3281 $ journalctl -u keepalived | grep Quorum Feb 07 20:13:04 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx Feb 07 20:19:58 keepalived-debug Keepalived_vrrp[3346]: Quorum gained for tracked process track_nginx # stop nginx process to loose quorum again $ systemctl stop nginx $ journalctl -u keepalived | grep Quorum Feb 07 20:13:04 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx Feb 07 20:19:58 keepalived-debug Keepalived_vrrp[3346]: Quorum gained for tracked process track_nginx Feb 07 20:21:39 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx # start nginx process forcing its PID to be > 32767 $ echo 32767 > /proc/sys/kernel/ns_last_pid; systemctl start nginx $ pidof nginx 32773 32772 # quorum is not gained again $ journalctl -u keepalived | grep Quorum Feb 07 20:13:04 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx Feb 07 20:19:58 keepalived-debug Keepalived_vrrp[3346]: Quorum gained for tracked process track_nginx Feb 07 20:21:39 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx [Where problems could occur] The upstream fix is quite straightforward but if a problem would occur it would be manifested in any tracking process feature in keepalived. Since keepalived is widely used in HA, this might be reflected in some specific setups using keepalived. [Original description] Keepalived doesn't regain quorum when using tracked process due to a bug in high numbered pids The upstream has already fixed in a patch release 2.0.20 https://serverfault.com/questions/993432/keepalived-doesnt-gain-quorum-when-tracked-process-comes-up Could we please get the 2.0.20 released to 20.04
2022-02-07 21:05:25 Launchpad Janitor merge proposal linked https://code.launchpad.net/~lucaskanashiro/ubuntu/+source/keepalived/+git/keepalived/+merge/415220
2022-02-07 21:11:00 Lucas Kanashiro keepalived (Ubuntu Focal): status Confirmed In Progress
2022-02-08 14:52:19 Lucas Kanashiro description [Impact] If a user is tracking a process with PID > 32767 keepalived will not be able to work as expected. This bug was fixed upstream here: https://github.com/acassen/keepalived/commit/23a5b8113bf0b8ec4718443df0406882e8e4d831 [Test Plan] Launch a Focal VM and run the following commands: # install keepalived and nginx $ apt install -y nginx keepalived # configure keepalived to track the nginx process $ cat << EOF > /etc/keepalived/keepalived.conf global_defs { enable_script_security } vrrp_track_process track_nginx { process nginx weight 10 delay 1 } vrrp_instance lb { interface enp5s0 state MASTER priority 100 virtual_router_id 50 authentication { auth_type PASS auth_pass password } track_process { track_nginx } virtual_ipaddress { 10.191.226.19 } } EOF $ systemctl restart keepalived # stop nginx process to loose quorum $ systemctl stop nginx $ journalctl -u keepalived | grep Quorum Feb 07 20:13:04 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx # start nginx process to gain quorum $ systemctl start nginx $ pidof nginx 3282 3281 $ journalctl -u keepalived | grep Quorum Feb 07 20:13:04 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx Feb 07 20:19:58 keepalived-debug Keepalived_vrrp[3346]: Quorum gained for tracked process track_nginx # stop nginx process to loose quorum again $ systemctl stop nginx $ journalctl -u keepalived | grep Quorum Feb 07 20:13:04 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx Feb 07 20:19:58 keepalived-debug Keepalived_vrrp[3346]: Quorum gained for tracked process track_nginx Feb 07 20:21:39 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx # start nginx process forcing its PID to be > 32767 $ echo 32767 > /proc/sys/kernel/ns_last_pid; systemctl start nginx $ pidof nginx 32773 32772 # quorum is not gained again $ journalctl -u keepalived | grep Quorum Feb 07 20:13:04 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx Feb 07 20:19:58 keepalived-debug Keepalived_vrrp[3346]: Quorum gained for tracked process track_nginx Feb 07 20:21:39 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx [Where problems could occur] The upstream fix is quite straightforward but if a problem would occur it would be manifested in any tracking process feature in keepalived. Since keepalived is widely used in HA, this might be reflected in some specific setups using keepalived. [Original description] Keepalived doesn't regain quorum when using tracked process due to a bug in high numbered pids The upstream has already fixed in a patch release 2.0.20 https://serverfault.com/questions/993432/keepalived-doesnt-gain-quorum-when-tracked-process-comes-up Could we please get the 2.0.20 released to 20.04 [Impact] If a user is tracking a process with PID > 32767 keepalived will not be able to work as expected. This bug was fixed upstream here: https://github.com/acassen/keepalived/commit/23a5b8113bf0b8ec4718443df0406882e8e4d831 [Test Plan] Launch a Focal VM and run the following commands: # install keepalived and nginx $ apt install -y nginx keepalived # configure keepalived to track the nginx process $ cat << EOF > /etc/keepalived/keepalived.conf global_defs {     enable_script_security } vrrp_track_process track_nginx {     process nginx     weight 10     delay 1 } vrrp_instance lb {     interface enp5s0     state MASTER     priority 100     virtual_router_id 50     authentication {         auth_type PASS         auth_pass password     }     track_process {         track_nginx     }     virtual_ipaddress {         10.191.226.19     } } EOF $ systemctl restart keepalived # stop nginx process to loose quorum $ systemctl stop nginx $ journalctl -u keepalived | grep Quorum Feb 07 20:13:04 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx # start nginx process to gain quorum $ systemctl start nginx $ pidof nginx 3282 3281 $ journalctl -u keepalived | grep Quorum Feb 07 20:13:04 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx Feb 07 20:19:58 keepalived-debug Keepalived_vrrp[3346]: Quorum gained for tracked process track_nginx # stop nginx process to loose quorum again $ systemctl stop nginx $ journalctl -u keepalived | grep Quorum Feb 07 20:13:04 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx Feb 07 20:19:58 keepalived-debug Keepalived_vrrp[3346]: Quorum gained for tracked process track_nginx Feb 07 20:21:39 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx # start nginx process forcing its PID to be > 32767 $ echo 32767 > /proc/sys/kernel/ns_last_pid; systemctl start nginx $ pidof nginx 32773 32772 # quorum is not gained again $ journalctl -u keepalived | grep Quorum Feb 07 20:13:04 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx Feb 07 20:19:58 keepalived-debug Keepalived_vrrp[3346]: Quorum gained for tracked process track_nginx Feb 07 20:21:39 keepalived-debug Keepalived_vrrp[3346]: Quorum lost for tracked process track_nginx To make sure the bug is fixed we need to install the fixed keepalived package, then stop and start the nginx process (with PID > 32767). After that, the quorum will be lost again and then regained: $ systemctl stop nginx $ systemctl start nginx $ pidof nginx 33505 33504 $ journalctl -u keepalived | grep Quorum Feb 08 14:46:47 keepalived-debug2 Keepalived_vrrp[8079]: Quorum lost for tracked process track_nginx Feb 08 14:47:00 keepalived-debug2 Keepalived_vrrp[8079]: Quorum gained for tracked process track_nginx Feb 08 14:47:19 keepalived-debug2 Keepalived_vrrp[8079]: Quorum lost for tracked process track_nginx Feb 08 14:49:01 keepalived-debug2 Keepalived_vrrp[33346]: Quorum lost for tracked process track_nginx Feb 08 14:49:14 keepalived-debug2 Keepalived_vrrp[33346]: Quorum gained for tracked process track_nginx [Where problems could occur] The upstream fix is quite straightforward but if a problem would occur it would be manifested in any tracking process feature in keepalived. Since keepalived is widely used in HA, this might be reflected in some specific setups using keepalived. [Original description] Keepalived doesn't regain quorum when using tracked process due to a bug in high numbered pids The upstream has already fixed in a patch release 2.0.20 https://serverfault.com/questions/993432/keepalived-doesnt-gain-quorum-when-tracked-process-comes-up Could we please get the 2.0.20 released to 20.04
2022-02-08 20:27:15 Lucas Kanashiro bug added subscriber Ubuntu Stable Release Updates Team
2022-02-15 21:23:25 Brian Murray keepalived (Ubuntu Focal): status In Progress Fix Committed
2022-02-15 21:23:28 Brian Murray bug added subscriber SRU Verification
2022-02-15 21:23:32 Brian Murray tags server-next server-next verification-needed verification-needed-focal
2022-02-16 16:48:23 Jason Grammenos tags server-next verification-needed verification-needed-focal server-next verification-done-focal verification-needed verification-needed-focal
2022-02-16 16:58:32 Lucas Kanashiro tags server-next verification-done-focal verification-needed verification-needed-focal server-next verification-done verification-done-focal
2022-03-02 12:11:15 Robie Basak removed subscriber Ubuntu Stable Release Updates Team
2022-03-02 12:15:08 Launchpad Janitor keepalived (Ubuntu Focal): status Fix Committed Fix Released