Hi,

Currently the lock manager infrastructure has implementation of nop, sanlock
and lockd. The first do nothing, while sanlock and lockd all requires the share
stroage, and lockd is not provided fence mechanism, sanlock would force to
restart OS when stopping daemon.

The first half of 2017, QEMU introduced the `share-rw` and `file.locking` to
handle a problem: https://bugzilla.redhat.com/show_bug.cgi?id=1080152 , someone
said:

    There is also scope for creating new plugins for libvirt to use other
    mechanism if someone comes up with other ideas.

So what about dlm-corosync?

DLM(distributed lock manage) is implemented by kernel, it provides some userspace
API by "libdlm" to lock/unlock resource, using these API need a daemon named
dlm_controld. "Corosync" is cluster messager layer using TCP or UDP, responsible for members management in cluster. dlm_controld and corosync are formed a kind of lock which could be used in cluster. And there is another component named "sbd" providing fence mechanism, it's not necessary, `dlm_controld -f 0` would disable it.

As for implement, I think we could make use of virtlockd daemon, just add some
RPC callback in micro-on.

-- Regards River

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to