我不知道是否有人可以推荐我一些解决scheme来共享less量的Linux VPS(虚拟专用服务器)之间的文件。
基本上我有一堆Linux VPS来pipe理,我想在他们之间共享文件。 典型的用例是共享数据文件,预编译库或二进制文件等,因此写入频率很低,其中大部分是添加新文件而不是修改已有文件。 通常我使用自己的台式机生成数据并构build二进制文件,并发布到机器上。
要求是:
我考虑的一件事是一些由git支持的基于熔丝的文件系统。 在github或code.google.com上有一堆git-fs,但没有一个看起来成熟和可靠。 而且,在每台机器上,仍然需要维护一个可用的机器列表来交谈,这不是自动的,因此是痛苦的。
另一件事是使用某种types的P2P文件共享软件,但有什么使文件组织? 例如,当我发布文件时,我也应该能够指定文件应放置在哪个目录。 这应该是自动完成的,而不是我login到每台机器,并在P2P下载文件后手动移动它们。
对于大多数分布式文件系统,它们是为机器相互靠近的群集而devise的。 对于HDFS,它需要集中的名称节点,所以我不能使用它。
有什么想法吗? 谢谢。
BitTorrent同步听起来像它会做你想做的。
你基本上给它一个文件夹进行同步,无论你放在那个文件夹 – 结构和全部 – 与你使用密钥configuration的任何机器同步。
你甚至可以指定一个只读密钥,所以其他机器不可能影响你的“主”。
机器可以离线很长时间,当他们上线时,他们将连接到其他同伴并拉出差异。
当然,这是免费的。
我只是从DNS名称使用git克隆,例如git clone ssh://mastergit.example.com/vmshared.git ,然后git pull周期性地与cron git pull 。 此DNS名称将是其中一个虚拟机的别名(CNAME)。 当主服务器更改时,只需将此别名更改为另一台计算机。
使用与每个虚拟机相同的SSH密钥进行身份validation,您将拥有:
encryption的数据传输作为git通过SSH工作,
轻松切换到不同的主服务器,
从本地副本轻松推送更改(只需按住git push ),
版本控制和容易回滚,如果有什么刹车。