主 – 主 – 主文件同步

现在,我知道有很多解决scheme,并且有很多这样的问题的答案,但是我还没有find可以正确使用的东西。

所以我的服务器设置基本上是三个群集,每个群集包含四个服务器。 三台服务器是主服务器,一台是备份服务器。 也有“面向前”的服务器,不存储任何用户数据,但提供其余的网站内容。 哦,数据库服务器。 所有这些都在CentOS 7上运行

我需要一种同步所有三台主服务器的方式(单独备份服务器)。

到目前为止,我发现的大多数主 – 主复制工具似乎并不像我想要的那样工作,但我知道有一个解决scheme。

该应用程序旨在为每个用户指定一个主服务器,基于注册时的平均负载。 因此,虽然每个群集中的所有三台服务器都是主服务器,但它们也可以作为从服务器,但是如果用户的常用服务器处于高负载或脱机状态,则它们可以作为主服务器进入。

如果我记得正确的话,一些同步软件可以在一个不包含任何数据的中央服务器上运行。 我可以添加另一台服务器到每个集群,成为我需要的“中央服务器”。

我的另一个想法是将用户更改存储在数据库中,然后将其用于传输到其他服务器,但是我觉得这样会导致冲突太频繁

你的问题可能在细节上有点稀疏 – 无论你想要同步什么样的文件,它们需要同步的频率如何?

无论如何,我已经在使用Unison同步文件集合的镜像(这听起来对我来说,这或多或less是你想要的)方面取得了一些成功。 你可以在这里得到预编译的版本。 我喜欢它,因为它在不同的平台上工作得相当好,但是再次,您的设置可能不保证使用Unison。 也许你应该使用分布式文件系统 – GlusterFS在这里帮助。

同步解决scheme的问题是更新之间的时间间隔。
您可以使用DRBD实现TCP / IP上的RAID,并将主服务器连接到此资源。 其他解决scheme可以是共享磁盘文件系统(如ATA_over_Ethernet )或分布式文件系统(如Ceph )。