I think that for really testing MySQL Replication it is important to do this in realistic constraints .
If you put all the replicated nodes in the same operating system, then you will no longer have a bandwidth limit, the data transfer speed will be much higher than what you get if these replicated databases are on different sites.
Everything under one virtual machine is a shortcut for configurations, for example, it does not force you to go through the network configuration .
I suggest you use several virtual machines, even if you need to put them under one physical machine, you can always configure the hypervisor so that packets pass through the router, in which case I / O will be connected by any network interface that has bandwidth.
I see how this is done through 2 or 3 virtual machines running on my computer, but this is really messed up on my system.
You can try to make several virtual machines with the versions of the JeOS (Just Enough OS) operating system that you want. I know that Ubuntu has one, and it can boot into 128 RAM, which allows you to conveniently deploy many cloned virtual machines under one physical machine without a monster.
The next step is to do the same in the cloud (infrastructure as a service, IaaS) provider and try your setup on different geographical sites .
source share