將大檔案複製到 LAN 上的多台計算機

將大檔案複製到 LAN 上的多台計算機

我有一些大文件,需要盡快從一台 Linux 機器複製到大約 20 台其他 Linux 機器,所有機器都位於同一 LAN 上。什麼工具/方法最適合複製這些文件,請注意這不是一次性副本。這些機器永遠不會連接到互聯網,安全不成問題。

更新:

我問這個問題的原因是因為(據我了解)我們目前正在scp串行使用將文件複製到每台機器,並且我被告知這“太慢”並且正在尋求更快的替代方案。據我所知,scp由於硬碟的查找,嘗試並行化呼叫只會進一步減慢速度。

答案1

比特流。這就是 Twitter 在內部部署某些東西的方式。

http://engineering.twitter.com/2010/07/murder-fast-datacenter-code-deploys.html(網頁存檔連結)

答案2

怎麼樣超文件傳輸協定,它使用多播透過 UDP 將檔案一次傳送到多個客戶端。不適合所有人,我也不是這方面的專家,但聽起來它可以滿足您的要求。

答案3

您是否嘗試過使用複製此資料rsync?如果您有 1 Gbit LAN 或更快,則複製超過 4*20 GB 應該不成問題。

此副本多久出現一次?如果需要幾分鐘才能完成有關係嗎?

答案4

設定 NFS 共用並讓每台電腦從該共用儲存庫中提取大檔案可能是最快的方法(NFS 非常快且開銷很小)。

您可以為來源伺服器新增一個或兩個額外的 NIC,並將它們綁定在一起,以提供更好的吞吐量。

實作可以是每個目標伺服器上的簡單的 cron 作業,每小時/每天/無論何時都盲目地從共用中取得。您也可以設定一個守護程序來輪詢新檔案;您也可以將 SSH(帶有金鑰對)的控制會話編寫到每個目標框中,並指示它們在執行腳本時取得檔案。

相關內容