Linstor satellite upgrade hangs in postinst on proxmox 8.2.4

This is likely happening because of the following systemd override we suggest for proxmox:

$ cat /etc/systemd/system/linstor-satellite.service.d/override.conf
[Service]
Type=notify
TimeoutStartSec=infinity

What it means is that on start (or restart), the satellite service will wait until it is connected to a controller. This is generally useful for Proxmox, as Proxmox should only start after the storage system is fully operational.

However, this also means that during an apt upgrade, which will restart the satellite, the dpkg process will wait for the satellite to be connected to the controller again. But this requires the right version of the controller to be running. This might not always be the case.

So you have a few options to work around this issue:

  • Before the upgrade, manually disable the satellite service, only start them after everything is upgraded, including the controller:
    systemctl disable --now linstor-satellite # on all nodes
    apt dist-upgrade
    linstor controller version # Verify that the controller is running the latest version
    systemctl enable --now linstor-satellite # on all nodes
    
  • Upgrade the linstor-controller first. This will only work if the controller is running on a separate node, as otherwise the linstor-satellite will automatically be upgraded too, and you might run into the same issue
  • Temporarily remove the override of Type=notify, so the satellite will be considered started before the controller connects.
1 Like