RAFT and CTDB

Martin Schwenke martin at meltin.net
Fri Dec 5 21:55:28 MST 2014


On Thu, 04 Dec 2014 14:55:06 +0000, Rowland Penny
<repenny241155 at gmail.com> wrote:

> Steve's replies could have been worded better and Richard has spent a 
> considerable time showing that OCFS2 will work with CTDB. The only 
> problem that I can see is, whilst Richard used Centos and the Oracle 
> kernel, neither of the two people who are having/have had problems with 
> CTDB use this distro or kernel. If CTDB will only work with Centos and 
> the Oracle kernel, then in my opinion, it has problems. The only way to 
> prove this one way or the other, is for Richard to post his setup and 
> for someone to try and set it up on Debian (other distros are available 
> ;-) ).

We try to make CTDB as filesystem and distribution agnostic as we can.
Distribution-wise there simply aren't any hard dependencies, though
there may be minor bugs.  The daemon has been tested on Linux, FreeBSD
and AIX.  Unfortunately, the eventscripts contain a lot of
Linux-specific code so they're not as portable.

As various people have mentioned, the default filesystem requirement is fcntl(2)
locking support to support the CTDB recovery lock.  There's an assumption
that if the ping_pong test succeeds then CTDB's recovery lock will
work.  If that's not true then we need to create a new test.  However,
I don't believe anyone has conclusively shown ping_pong not to be a
reliable test.

We do a lot of testing on RHEL because that has been the platform that
quite a few developers have been paid to work on.

However, my laptop runs Debian and I semi-regularly run a subset of the
CTDB test suite on my laptop.  This subset only tests a subset of
functionality though, not including anything to do with a cluster
filesystem.  So I haven't tried to test anything to do with OCFS2 on
Debian...

To support testing on RHEL we have autocluster
(git://git.samba.org/autocluster.git), which Tridge started back in
2008 and I have been hacking on since.  It generates
virtual clusters of RHEL nodes running clustered Samba.  I
have previously (though not recently) tested it with
CentOS.  Unfortunately we've never got around to creating a web site or
writing extensive documentation. Earlier this year I did quite a lot of
modularisation work on autocluster.  A couple of weeks ago, when this
thread started, Amitay and I spent a couple of hours trying to add
OCFS2 support to autocluster.  It was quite trivial to add something
that we think will work but we haven't been able to test it because we
simply couldn't make OCFS2 work with RHEL6.  With Richard's
instructions, posted elsewhere, we'll try to finish this effort when we
get time. Perhaps that will then encourage others to provide scripts to
support other cluster filesystems.

Can autocluster work with other (e.g. Debian-based) distros?  Sorry, not
really.  There are a lot of assumptions about kickstart, network
configuration and location of configuration files, along with copious
use of yum.  :-(

However, the modularisation work I did should allow much of the
post-boot package installation and configuration to be replaced by
something like Chef (from OpenStack).  Someone would need a
non-trivial slab of time to make that change.  When we've done that it
should be a little easier for autocluster to be distribution
agnostic... and I'm guessing that the part that people are really
interested in is the post-boot configuration, since that doesn't
depend on the cluster being virtual.

It all takes time...

peace & happiness,
martin


More information about the samba-technical mailing list