我正在build立一个networking服务器集群,并有一些file upload的设施。
这可能发生在任何networking节点上,我试图找出将每个networking服务器上的文件分发给其余所有网站的最佳方法。
这是可以用rsync实现的吗? 我所见过的所有例子都是关于本地 – >远程的,但在这种情况下,新文件可能出现在任何节点上。
如果没有,我会写我自己的过程,但我想我会检查之前重新发明轮!
不要重新发明轮子。 请! 🙂
看看像Ceph或GlusterFS的集群文件系统。 这些会照顾你的同步。
另一个常用的选项是有一个存储服务器,通过NFS将文件系统导出到Web层。 然后,Web服务器可以同时读取和写入数据到同一个卷。
您将不得不在每个节点之间运行rsync会话,但不能很好地进行扩展。 查看一个集群文件系统,或者使用一个安装到各个networking节点的中央文件存储。
一个集群/分布式文件系统可能是矫枉过正的。
看看csync2 (执行实际的同步)和lsyncd (守护程序,在发生文件系统更改时运行命令。
同步将是asynchronous的,但通常对您描述的情况有好处