Replikatsätze in MongoDB können zu diesem Zeitpunkt nur einen einzigen Master haben. (Er wird als primärer Replikatsatz bezeichnet.) Für Ihr Szenario besteht die Lösung häufig darin, einen fragmentierten Cluster zu verwenden. In Ihrem Beispiel hätten Sie zwei Shards:einen für die Daten von Server A und den anderen für die Daten von Server B. Beide Shards sind als Replikatsätze implementiert, sodass jeder mindestens drei Server hat. Sie würden dann den primären Shard A im selben Rechenzentrum A platzieren und den primären Shard B im Rechenzentrum B. Mindestens eine Replik jedes Shards (sekundär genannt) würde sich im anderen Rechenzentrum befinden.
Das bedeutet, dass alle Daten in jedem Rechenzentrum verfügbar sind, aber Schreibvorgänge auf Shard A müssen immer in Rechenzentrum A erfolgen und Schreibvorgänge auf Shard B in Rechenzentrum B. (Obwohl Schreibvorgänge auch remote erfolgen können, müssen Sie also von Rechenzentrum B auf Shard A schreiben kann, in diesem Fall ist es nur ein Remote-Schreibvorgang.)