[Gluster-users] slow write to non-hosted replica in distributed-replicated volume

Bryan Whitehead driver at megahappy.net
Mon Oct 22 19:04:56 UTC 2012

> gluster volume create vol1 replica 2 transport tcp server1:/brick1 server2:/brick2 server3:/brick3 server4:/brick4
> server1:/brick1 and server2:/brick2 are the first replica pair
> server3:/brick3 and server4:/brick4 are the second replica pair
> server1.. file1 goes into brick1/brick2 - fast

This is fast because 1 copy of the file goes to brick1(local) and 1
copy goes to brick4(remote). So the 1 remote copy gets the full
bandwidth of the nic the other is just local so nic isn't hit.

> server2.. file2 goes into brick3/brick4 - slow

This is slow because 1 copy of the file goes to brick3(remote) and 1
copy goes to brick4(remote). Transferring to 2 remote bricks at the
same time will max out your rate to only ~50MB/sec instead of the full
100MB/sec because you have 2 streams.

> server3.. file3 goes into brick3/brick4 - fast
> server4.. file4 goes into brick1/brick2 - slow

> So I delete that volume, and create another..
> gluster volume create vol2 replica 2 transport tcp server2:/brick2 server3:/brick3 server4:/brick4 server1:/brick1

All this will do is change the order where the filenames end up
landing. if you keep creating files you should get a even
distributions - so this will not change anything in the long run.
Eventually you'll have serverX writing files to brickY and brickZ that
are not local.

Gluster is working as intended from the description you are giving.

More information about the Gluster-users mailing list