[2nd] question about block type storage volume

HI.

After creating block type volume 6GB and assigning it to 3 nodes, the following error message occurred when starting the 2nd node.

What is the problem?

Thank you

What storage backend is that using?

I guess in the file case, we may need to set some qemu option to not lock the file itself and allow it be shared.

Thank you @stgraber.

Please tell me the guide on how to set up qemu.

Can you try (all as root):

Then stop all VMs using the custom volume and start them back up.

If this works, I’ll send an upstream fix with that change.

Note that you’ll have to remove that /var/snap/lxd/common/lxd.debug in order to resume normal LXD updates on that system, otherwise you’ll be stuck on that custom build indefinitely.

Please ignore for now, this is failing.

Okay, the instructions should be fine now, I found a tweak which should help.

And confirmed that it works here, though I’m using zfs which may have different locking properties.

And confirmed that I can read/write from both VMs (used direct write instead of setting up something like gfs2).

Thank you @stgraber.

  1. I activated the lxd debug function as you said.
  2. I made one lxd storage (backend zfs) by nas connection with iscsi.

image

For reference, the volume created by gfs-storage(iscsi, zfs) was allocated to 3 nodes and started. 3 nodes booted up normally.

Still let me know what needs to be fixed in qemu.

one more question.

If check the scsi-3 reservation for the disk allocated in vm, it is confirmed that it is not supported.

image

In this case, is it possible to configure shared disk?

https://paste.ubuntu.com/p/WF9vggs4BZ/ that’s the change I made in that binary I gave you. All it does is tell qemu to not attempt to lock the parent device.

Inside the VM, you’re interacting with a virtio-scsi device that’s file backed, so I’m not sure how much of the SCSI features are implemented by qemu/kernel for that.

Thank you @stgraber.

I’m sorry, but how should I apply above?

The creation of gfs2 was successful by assigning it to 3 nodes as a block type gfs-disk02 volume in the gfs-storage(iscsi, backend: zfs) pool.

I think pacemaker stnoish agent for LXD is needed.