[Gluster-users] design of gluster cluster

Dave Sherohman dave at sherohman.org
Wed Jun 13 09:10:34 UTC 2018

On Wed, Jun 13, 2018 at 11:16:32AM +1200, Thing wrote:
> I am a bit lost here, why a replica 3 and arbiter 1?  ie not replica2
> arbiter1?

You'd have to ask the developers about that (I just use gluster, I'm not
a dev).  I agree that "replica 2 arbiter 1" seems more intuitive, but I
suppose "replica 3 arbiter 1" could be seen as more technically
accurate, if you look at it as three replicas, but one of the replicas
only stores metadata instead of a full copy.

> also no distributed part?  is the distributed flag automatically
> assumed?

When you create a replicated volume and specify more bricks than the
replica count, "distributed" is implied because that's the only way that
it would make sense for a replica-2 volume to have 6 bricks.  (See the
"To create a distributed replicated volume" section in the docs at
if you'd like to confirm that omitting "distributed" is correct.)

Come to think of it, that might also be why arbiter configurations are
considered to be "replica 3" instead of "replica 2" - you're specifying
bricks in groups of three, so it makes the syntax checking a little
easier if you can just say "number of bricks must be a multiple of
replica count" without adding a special case to increment the replica
count if there's an arbiter also specified.

> with a replica3 then there is a quorum (2 of 3) so no arbiter is
> needed?

Correct.  Arbiters are only needed (or allowed) in the specific case of
replica 2+arbiter.  Per the docs at
"Note: Volumes using the arbiter feature can only be replica 3 arbiter 1"

> I have this running already like this so I am assuming its robust?

Yes, it definitely should be!  The only disadvantage of replica 3 vs.
replica 2+A is the lower storage capacity.

> So on each gluster node I have an-unused 120gb data1 partition which is
> left over from the OS install so the arbiter volume could go here?
> in which case?
> gluster volume create my-volume replica 2 arbiter 1 host1:/path/to/brick
> host2:/path/to/brick (arb-)host3:/path/to/brick2   host4:/path/to/brick
> host5:/path/to/brick (arb-)host6:/path/to/brick2 host3:/path/to/brick
> host6:/path/to/brick (arb-)host1:/path/to/brick2
> is this a sane command?

Yep, looks reasonable to me aside from the "replica 2" needing to be
"replica 3".

Dave Sherohman

More information about the Gluster-users mailing list