多台机器:使用 NFS/HTTP/FTP 共享数据?

多台机器:使用 NFS/HTTP/FTP 共享数据?

我有一个由 20 台机器组成的网络,全部运行 Ubuntu 10.04。

每台机器大约有 200[GB] 的数据,我想与所有其他 19 台机器共享这些数据,仅供读取之用。读取应以最快的速度完成。

一位朋友建议我研究一下如何设置 HTTP/FTP。这确实是在机器之间共享数据的最佳方式吗(比 NFS 更好)?如果是,我该怎么做?

更新:只是为了澄清一下,我想要的只是能够(从机器内部X)访问机器Y的一个文件并将其加载到内存中。所有文件的大小都是统一的(500 [KB])。哪种方法最快(SAMBA / NFS / HTTP / FTP)?

答案1

根据我的经验,NFS 比 Samba 快得多(可能是由于配置不理想,因为 Samba 设置起来很复杂,而且我也不自称是这方面的专家)。

我没有看到 HTTP 和 NFS 之间有明显的速度差异,并且我建议为此目的使用 NFS 而不是 HTTP 或 FTP,因为这并不是它的真正设计目的(并且我发现 NFS 配置更简单并且更轻量级)。

答案2

如果只是文件共享,您也可以研究一下 samba。有关如何安装的信息可以在这里找到:

http://www.jonathanmoeller.com/screed/?p=1590

HTTP 将允许您的其他机器在浏览器窗口中看到文件和文件夹,FTP 将允许您通过 FTP 客户端查看文件,但也可以通过浏览器窗口看到。

对于 Ubuntu,需要做的就是设置一个 Web 服务器:

对于 FTP,您可以安装 vsftpd (http://vsftpd.beasts.org/

互联网上有很多教程,但安装这两个教程(尤其是在 Ubuntu 系统上)非常简单。

答案3

Linux 可以用来mount访问磁盘(通过网络)。一般来说,您需要了解文件系统、设备和挂载点。

阅读文件系统使该过程自动化。

答案4

Rsync非常适合,特别是如果一切都是 Linux(我认为 Mac 也有 rsync)。只需创建一个公共共享(Samba 或其他,不直接连接到您的帐户的东西)并 rsync 即可。

  • 维基百科有一个很棒的小宣传短文。
  • 这里这是使用方法的简单介绍
  • Rsync 以最佳方式传输大量数据,同时最小化传输
  • 网络延迟是你的敌人,所以 rsync 绝对是最佳选择

我以前用过 SCP,但 rsync 在各方面都更好,尤其是在同步数据时。将其设置为同步并让它工作。如果您的网络出现故障,只需重新启动它,它就会从中断的地方继续。

相关内容