docs: convert kbase/locking.html.in to RST

This is a semi-automated conversion. The first conversion is done using
"pandoc -f html -t rst". The result is then editted manually to apply
the desired heading markup, and fix a few things that pandoc gets wrong.

Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
Daniel P. Berrangé 2019-11-20 14:05:50 +00:00
parent 1a08fc2010
commit 944932bd43
2 changed files with 33 additions and 48 deletions

View File

@ -1,48 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<body>
<h1>Virtual machine lock manager</h1>
<ul id="toc"></ul>
<p>
Libvirt includes a framework for ensuring mutual exclusion
between virtual machines using host resources. Typically
this is used to prevent two VM processes from having concurrent
write access to the same disk image, as this would result in
data corruption if the guest was not using a cluster
aware filesystem.
</p>
<h2><a id="plugins">Lock manager plugins</a></h2>
<p>
The lock manager framework has a pluggable architecture,
to allow different locking technologies to be used.
</p>
<dl>
<dt><code>nop</code></dt>
<dd>This is a "no op" implementation which does absolutely
nothing. This can be used if mutual exclusion between
virtual machines is not required, or if it is being
solved at another level in the management stack.</dd>
<dt><code><a href="locking-lockd.html">lockd</a></code></dt>
<dd>This is the current preferred implementation shipped
with libvirt. It uses the <code>virtlockd</code> daemon
to manage locks using the POSIX fcntl() advisory locking
capability. As such it requires a shared filesystem of
some kind be accessible to all hosts which share the
same image storage.</dd>
<dt><code><a href="locking-sanlock.html">sanlock</a></code></dt>
<dd>This is an alternative implementation preferred by
the oVirt project. It uses a disk paxos algorithm for
maintaining continuously renewed leases. In the default
setup it requires some shared filesystem, but it is
possible to use it in a manual mode where the management
application creates leases in SAN storage volumes.
</dd>
</dl>
</body>
</html>

33
docs/kbase/locking.rst Normal file
View File

@ -0,0 +1,33 @@
============================
Virtual machine lock manager
============================
Libvirt includes a framework for ensuring mutual exclusion between
virtual machines using host resources. Typically this is used to prevent
two VM processes from having concurrent write access to the same disk
image, as this would result in data corruption if the guest was not
using a cluster aware filesystem.
Lock manager plugins
====================
The lock manager framework has a pluggable architecture, to allow
different locking technologies to be used.
nop
This is a "no op" implementation which does absolutely nothing. This
can be used if mutual exclusion between virtual machines is not
required, or if it is being solved at another level in the management
stack.
`lockd <locking-lockd.html>`__
This is the current preferred implementation shipped with libvirt. It
uses the ``virtlockd`` daemon to manage locks using the POSIX fcntl()
advisory locking capability. As such it requires a shared filesystem
of some kind be accessible to all hosts which share the same image
storage.
`sanlock <locking-sanlock.html>`__
This is an alternative implementation preferred by the oVirt project.
It uses a disk paxos algorithm for maintaining continuously renewed
leases. In the default setup it requires some shared filesystem, but
it is possible to use it in a manual mode where the management
application creates leases in SAN storage volumes.