LINSTOR defaults to io-error on loss of quorum. When used to back VMs this causes the root filesystem to switch to RO. This usually requires a reboot to resolve.
By default, when LINSTOR® creates resources with 3 or more replicas, it automatically configures the below quorum policies:
quorum majority;
on-no-quorum io-error;
This is generally acceptable for most environments. However, when LINSTOR is used to provision and manage storage for VM environments, such as Proxmox, Opennebula, etc., defaulting to `io-error` may not be preferred. The issue with this is that the VMs will pick-up on the IO error and switch the filesystems to RO (read-only). A filesystem cannot easily be switched back to RW (read-write) without an unmount an remount. When this is the root filesystem, that's not necessarily possible without a reboot.
At present the best solution is to either set the `suspend-io` auto-quorum property at the controller level (for all resources) or at the resource-group level, so all resources created here on out will automatically be set to suspend-io.
linstor controller set-property DrbdOptions/auto-quorum suspend-io
Then if you have to set this for all the already created resources you can use this lengthy one-liner to do so:
linstor -m --output-version v1 rd l | jq -r '.[0] | .[].name' | xargs -d $'\n' -n1 -I {} linstor rd sp {} DrbdOptions/Resource/on-no-quorum suspend-io
In the long-term we should ideally either change the LINSTOR defaults entirely, or make sure that the LINSTOR plugins designed for use in VM environments/platforms change these defaults appropriatley.
DJV-2020-04-06