Distributed setup

Hi guys, im a new Percona user. I followed Percona XtraDB Cluster documentation steps (https://www.percona.com/doc/percona-xtradb-cluster/8.0/configure.html#configure) to create a simple cluster with three nodes and works very well as a multi-master configuration. 

Based on documentation, scenario looks like this: 


The three nodes are in the same lan segment and if any of them goes of or have a failure, the alive nodes communicates between them without problems.

Now, i need to deploy a distributed setup like this: 


In this scenario, node 1 and 2 are locally connected in the same lan, but rest of nodes are distributed around country.

I need a centrallized “master” node, in this case node 1 that acts as a orquestrator or synchronizer between “slave” nodes. I dont want that slave nodes can communicates between them, they only can communicate to master node.

Another question is…
How can i filter wich databases are sinchronized between master and slave nodes?. For example, if create a database called “dbtest” on node 2 i want to replicate it only to node 3 and node 5 and if create another database called “dbtest2” on node 2 i want to replicate only to node 4 

This is possible to achieve with XtraDB cluster?

Regards!




Percona XtraDB Cluster (PXC) is based on multi-master at its core, and generally requires connectivity among all cluster members.  In addition, as it uses a synchronous protocol, performance can really suffer when network latency is high (as you could expect with distributed cluster members). Your intended setup doesn’t seem like it will work well with PXC.