Hello Everyone,
I did some fio performance tests on a particular vm and I have noticed things that I do not understand regarding how data is placed along the bricks. I am sure this is a lack of knowledge, but I would really appreciate any help in understanding this, I did a bit of research on the internet,  but just could't find something relevant.
I have one replica 3 distributed-replicated arbitrated volume, across 18 bricks ( 9 nodes, 2 jbods per node ).
The volume was created as:
node1 - brick1, node-2, brick1,.....node9-brick1, node1 - brick2, node-2, brick2,.....node9-brick2
As far as i've understood,  under the hood there are sets of 3 times replicated data ( subvolumes ) which are assigned to the first 3 bricks,  next set of replicated data to the next set of 3 bricks,  and so on..
Now, I have this testing vm runign one node one.
When I've started the fio test, i've noticed incresed gluster traffic from node 1 to node2,4 and 5
So I assumed that the vm disk is data resides on a subvolume allocated to bricks from these hosts.
Then I have migrated the vm on node 2, and did the same test. Now the increased treffic is generated from node2 to node1, 4, and 5..
What I do not understand is:
 - why gluster client ( ovirt host ) is sending data to  3 bricks if the volume is arbitrated - shouldn't it send only to 2 of them ?
- why are there 4 brick implicated in this subvolume
- what would it be the fault tolerance level in this setup ,ie: how many hosts can I take down and still having the volume serving IO requests; can they be random ?
I am sorry for my lack of knowledge,  I am just trying to understand what is happening so I can deploy a decent proper setup of an hci environment.
Thank you,
Leo


--
Best regards, Leo David