Source: corosync Severity: normal Dear Maintainer,
We have a report in Ubuntu, https://bugs.launchpad.net/charm-hacluster/+bug/1740892, which I believe is reproducible in Debian Sid as well. In particular, I set up a Sid LXD: # apt install corosync pacemaker ... # systemctl status corosync pacemaker ● corosync.service - Corosync Cluster Engine ... Active: active (running) since Wed 2018-01-17 23:14:56 UTC; 9s ago ... ● pacemaker.service - Pacemaker High Availability Cluster Manager ... Active: active (running) since Wed 2018-01-17 23:15:00 UTC; 5s ago # apt install --reinstall corosync ... # systemctl status corosync pacemaker ● corosync.service - Corosync Cluster Engine ... Active: active (running) since Wed 2018-01-17 23:15:23 UTC; 3s ago ● pacemaker.service - Pacemaker High Availability Cluster Manager ... Active: inactive (dead) since Wed 2018-01-17 23:15:22 UTC; 4s ago I believe this is because the prerm of corosync.service has # Automatically added by dh_installinit if [ -x "/etc/init.d/corosync" ]; then invoke-rc.d corosync stop || exit $? fi which unconditionally stops corosync for all Debian and Ubuntu releases (as the init script is installed even if unused by systemd). When corosync stops, pacemaker fails to connect to corosync (and the pacemaker systemd unit file specifies that pacemaker Requires corosync) and also stops. When the postinst for corosync runs: if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ]; then if [ -x "/etc/init.d/corosync" ]; then update-rc.d corosync defaults >/dev/null invoke-rc.d corosync start || exit $? fi fi corosync will start, but there is no connection between corosync starting (systemd or SysV) and pacemaker. I think there are two necessary changes to the packaging/upstream to fix this: 1) The systemd unit file should indicate pacemaker is PartOf corosync, which will propogate restarts of corosync to pacemaker. This will also propogate stops, but as mentioned above, pacemaker already stops when corosync stops, so I think it's harmless. Additionally, the SysV init file should be updated to check if the pacemaker SysV status was running before stopping corosync in the restart path and start pacemaker as well after starting corosync. 2) d/rules should call dh_installinit with --restart-after-upgrade. This is the default in compat >= 10 (2.4.2-3 is still at 9). That will change the prerm and postinst to not stop/start the service on upgrade, but simply restart it in the postinst (removals will still stop the service). Now, neither of these actually fix the existing packages unfortunately, which will stop pacemaker on the upgrade to a fixed package and thus stop pacemaker. I have no idea if there actually is any way to fix this for existing packages, since the 'old' prerm will be invoked by dpkg on the upgrade path. -- System Information: Debian Release: buster/sid APT prefers bionic APT policy: (500, 'bionic') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.13.0-25-generic (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled -- Nishanth Aravamudan Ubuntu Server Canonical Ltd