我需要将一些大文件从一台Linux计算机复制到大约20台其他Linux计算机,所有这些文件都尽可能快地位于同一LAN上。哪种工具/方法最适合复制这些文件,请注意,这将不是一次复制。这些机器将永远不会连接到Internet,并且安全性不是问题。
更新:
我之所以这样问,是因为(据我所知),我们目前正在scp
以串行方式将文件复制到每台计算机上,并且我被告知这太慢了,正在寻求一种更快的选择。据我scp
所知,由于硬盘驱动器的搜寻,试图并行化这些调用只会进一步降低其速度。
我需要将一些大文件从一台Linux计算机复制到大约20台其他Linux计算机,所有这些文件都尽可能快地位于同一LAN上。哪种工具/方法最适合复制这些文件,请注意,这将不是一次复制。这些机器将永远不会连接到Internet,并且安全性不是问题。
更新:
我之所以这样问,是因为(据我所知),我们目前正在scp
以串行方式将文件复制到每台计算机上,并且我被告知这太慢了,正在寻求一种更快的选择。据我scp
所知,由于硬盘驱动器的搜寻,试图并行化这些调用只会进一步降低其速度。
Answers:
BitTorrent。这就是Twitter内部部署某些事情的方式。
http://engineering.twitter.com/2010/07/murder-fast-datacenter-code-deploys.html(网络归档链接)
设置NFS共享并使每台计算机从此共享的大文件存储库中拉出可能是最快的方法(NFS非常快且开销很小)。
您可以在源服务器上添加一个或两个附加的NIC,并将它们绑定在一起,以提高吞吐量。
在每个目标服务器上,实现可能只是一个简单的cron作业,每小时,每天或任何时间都盲目地从共享中获取。您还可以设置一个守护程序来轮询新文件。您也可以只将控制会话的SSH(带有密钥对)脚本编写到每个目标框中,并指示它们在执行脚本时提取文件。