LINSTOR Quorum Policies and Virtualization Environments
LINSTOR® defaults to throwing an I/O error on loss of quorum. This can cause unwanted behavior when using LINSTOR to manage storage that backs virtual machines (VMs). This usually requires rebooting affected VMs to resolve.
This article details how you can avoid this issue by setting DRBD® quorum options to different values when using LINSTOR with virtualization environments.
By default, when LINSTOR creates resources with three or more replicas, it automatically configures the following quorum policies:
on-no-data-accessible io-error;
quorum majority;
on-no-quorum io-error;
This is generally acceptable for most environments.
However, when you use LINSTOR to provision and manage storage for virtualization environments, such as CloudStack, OpenNebula, Oracle Virtualization, Proxmox VE, XCP-ng, and others, defaulting to io-error for loss of quorum or related events might not be ideal.
The issue with this is that the VMs will detect the I/O error and switch the file systems to RO.
You cannot easily switch a file system back to read/write (RW) without an unmount and remount command sequence.
When this is the root file system, that might not be possible without a reboot.
The best solution for virtualization environments that use LINSTOR-managed storage is to set DRBD® options related to quorum behavior on the resource group related to your VM backing storage. This way, all resources created from the resource group will automatically inherit these options.
Enter the following commands to set these properties:
linstor resource-group set-property <resource_group> \
DrbdOptions/Resource/auto-quorum suspend-io
linstor resource-group set-property <resource_group> \
DrbdOptions/Resource/on-no-data-accessible suspend-io
If you have to set these options for all the already created resources you can use these lengthy commands:
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
linstor -m --output-version v1 rd l | jq -r '.[0] | .[].name' | \
xargs -d $'\n' -n1 -I {} \
linstor rd sp {} DrbdOptions/Resource/on-no-data-accessible suspend-io
When using LINSTOR plugins designed for use in VM environments and platforms, you will need to verify that the configured LINSTOR behavior on loss of quorum is compatible with running VMs on top of LINSTOR-backed storage.
Written by DJV, 2020-04-06.
Updated by MAT, 2025-11-14.