Hi Matt,
thanks for the clarification. I would suggest the following:
On location L1, run the DIR, the MRC and one OSD.
On localtion L2, run one OSD.
This way, each client talks to the closest OSD (clients mounting the volume at L1 will talk to the OSD at L1, clients mounting the volume at L2 will talk to the OSD at L2).
- If you use vivaldi, the distances should be figured out automatically.
Note however, again, that this setup does not fully ensure fault-tolerance, but is only a way of sharing data across two locations.
If you want to extend your setup, say, add OSDs to L1 and L2, you can add replicas to ensure fault-tolerance, e.g. by having 2 replicas in L1 and 2 replicas in L2 (if you run 2 OSDs per location, on different machines).
If you have 2 OSDs per location, and you set the replication factor to 3 and use dcmap or vivaldi as replica selection policies, you should end up with two replicas on the "closer" location, and one on the "remote" location.
I hope this helps.
Cheers
Robert