我正在设置一个网络服务器集群,并且可以上传某些文件。
这可能发生在任何网络节点上,我正在尝试找出将文件从每个网络服务器分发到所有其余网络节点的最佳方法。
这可以用 rsync 实现吗?我见过的所有示例都涉及本地 -> 远程,但在这种情况下,新文件可能出现在任何节点上。
如果没有的话,我会编写自己的流程,但我想在重新发明轮子之前先检查一下!
答案1
请不要重新发明轮子。拜托!:)
研究 Ceph 或 GlusterFS 等集群文件系统。它们将为您处理同步。
另一个常用选项是使用存储服务器通过 NFS 将文件系统导出到 Web 层。然后 Web 服务器可以同时读取和写入同一卷的数据。
答案2
您必须在每个节点之间运行 rsync 会话,扩展性不佳。查看集群文件系统或使用安装到各个 Web 节点的中央文件存储。