1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-22 13:34:15 +03:00

ctdb/doc: man page for Ceph RADOS cluster mutex helper

Signed-off-by: David Disseldorp <ddiss@samba.org>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
This commit is contained in:
David Disseldorp 2016-12-01 14:22:45 +01:00 committed by Amitay Isaacs
parent d8b61863ec
commit 8aba284fc4
2 changed files with 101 additions and 3 deletions

View File

@ -0,0 +1,90 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE refentry
PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
<refentry id="ctdb_mutex_ceph_rados_helper.7">
<refmeta>
<refentrytitle>Ceph RADOS Mutex</refentrytitle>
<manvolnum>7</manvolnum>
<refmiscinfo class="source">ctdb</refmiscinfo>
<refmiscinfo class="manual">CTDB - clustered TDB database</refmiscinfo>
</refmeta>
<refnamediv>
<refname>ctdb_mutex_ceph_rados_helper</refname>
<refpurpose>Ceph RADOS cluster mutex helper</refpurpose>
</refnamediv>
<refsect1>
<title>DESCRIPTION</title>
<para>
ctdb_mutex_ceph_rados_helper can be used as a recovery lock provider
for CTDB. When configured, split brain avoidance during CTDB recovery
will be handled using locks against an object located in a Ceph RADOS
pool.
To enable this functionality, include the following line in your CTDB
config file:
</para>
<screen format="linespecific">
CTDB_RECOVERY_LOCK="!ctdb_mutex_ceph_rados_helper [Cluster] [User] [Pool] [Object]"
Cluster: Ceph cluster name (e.g. ceph)
User: Ceph cluster user name (e.g. client.admin)
Pool: Ceph RADOS pool name
Object: Ceph RADOS object name
</screen>
<para>
The Ceph cluster <parameter>Cluster</parameter> must be up and running,
with a configuration, and keyring file for <parameter>User</parameter>
located in a librados default search path (e.g. /etc/ceph/).
<parameter>Pool</parameter> must already exist.
</para>
</refsect1>
<refsect1>
<title>SEE ALSO</title>
<para>
<citerefentry><refentrytitle>ctdb</refentrytitle>
<manvolnum>7</manvolnum></citerefentry>,
<citerefentry><refentrytitle>ctdbd</refentrytitle>
<manvolnum>1</manvolnum></citerefentry>,
<ulink url="http://ctdb.samba.org/"/>
</para>
</refsect1>
<refentryinfo>
<author>
<contrib>
This documentation was written by David Disseldorp
</contrib>
</author>
<copyright>
<year>2016</year>
<holder>David Disseldorp</holder>
</copyright>
<legalnotice>
<para>
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 3 of
the License, or (at your option) any later version.
</para>
<para>
This program is distributed in the hope that it will be
useful, but WITHOUT ANY WARRANTY; without even the implied
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the GNU General Public License for more details.
</para>
<para>
You should have received a copy of the GNU General Public
License along with this program; if not, see
<ulink url="http://www.gnu.org/licenses"/>.
</para>
</legalnotice>
</refentryinfo>
</refentry>

View File

@ -58,6 +58,10 @@ manpages_etcd = [
'ctdb-etcd.7',
]
manpages_ceph = [
'ctdb_mutex_ceph_rados_helper.7',
]
def set_options(opt):
opt.PRIVATE_EXTENSION_DEFAULT('ctdb')
@ -273,7 +277,9 @@ def configure(conf):
conf.env.ctdb_prebuilt_manpages = []
manpages = manpages_binary + manpages_misc
if conf.env.etcd_reclock:
manpages = manpages + manpages_etcd
manpages += manpages_etcd
if conf.env.HAVE_LIBRADOS:
manpages += manpages_ceph
for m in manpages:
if os.path.exists(os.path.join("doc", m)):
Logs.info(" %s: yes" % (m))
@ -572,7 +578,9 @@ def build(bld):
manpages_extra = manpages_misc
if bld.env.etcd_reclock:
manpages_extra = manpages_extra + manpages_etcd
manpages_extra += manpages_etcd
if bld.env.HAVE_LIBRADOS:
manpages_extra += manpages_ceph
for f in manpages_binary + manpages_extra:
x = '%s.xml' % (f)
bld.SAMBA_GENERATOR(x,
@ -934,7 +942,7 @@ def dist():
MAN_XSL = '%s/manpages/docbook.xsl' % BASE_URL
HTML_XSL = '%s/html/docbook.xsl' % BASE_URL
CMD_TEMPLATE = 'xsltproc --xinclude -o %s --nonet %s %s'
manpages = manpages_binary + manpages_misc + manpages_etcd
manpages = manpages_binary + manpages_misc + manpages_etcd + manpages_ceph
for t in manpages:
cmd = CMD_TEMPLATE % ('doc/%s' % t, MAN_XSL, 'doc/%s.xml' % t)
ret = samba_utils.RUN_COMMAND(cmd)