在服务器场环境中,是否有一种首选技术可以在一台服务器上保持创建/更新/删除的文件与服务器场中的所有其他服务器同步?例如,如果文件是由服务器A上的用户创建的,并且该文件是由服务器B上的用户请求的,那么确保两个服务器上的文件同时可访问的最佳方法是什么?相同的答案是否适用于服务器场中的许多(1,000+)服务器?
虽然我的特定问题主要适用于Windows服务器,但最好是平台几乎没有差别。
答案 0 :(得分:1)
您可以使用内置于服务器操作系统中的分布式文件系统(DFS)。我这样做是为了实现类似的目标。
基本上,您将DFS配置为创建根,这实际上只是一个URI。您可以创建看起来像共享的 \\ DOMAIN \ SHARE ,尽管它是虚拟的。 DFS利用域的DNS将其显示为有效位置。在根目录中,您可以创建链接,这些链接只是任意数量服务器上物理文件共享的路径。这些将等同于您的根目录下的子目录。最后,对于每个链接,您可以创建多个目标。在您的示例中,它将是每台计算机上的共享。然后,DFS将使用文件复制服务在所有列为目标的路径中复制这些共享中的文件。
它对我所拥有的两台服务器非常有效。我不知道复制到1000多台服务器时它的扩展程度如何。这是一个企业级解决方案,但我不确定那些机器在行政上是否可行。因为您是跨越机器,所以您可能不需要以该规模进行复制,而是将其用作服务,就像它的抽象一样。路径是常数。
其他警告:您必须安装文件复制服务。我认为你还需要一个域环境才能真正做到这一点。
答案 1 :(得分:0)
在Linux方面,您可能对DRDB感兴趣。