lba*_*anz 80 linux file-transfer archive linux-networking
我正在将数据从一台服务器归档到另一台服务器。最初我开始了rsync一份工作。仅为 5 TB 数据构建文件列表就花了 2 周时间,而传输 1 TB 数据又花了一周时间。
然后我不得不终止这项工作,因为我们需要在新服务器上停机一段时间。
已经同意我们将其压缩,因为我们可能不需要再次访问它。我正在考虑将其分成 500 GB 的块。在我tar之后,我打算将它复制到ssh. 我正在使用tar,pigz但它仍然太慢。
有没有更好的方法来做到这一点?我认为两台服务器都在 Redhat 上。旧服务器是 Ext4,新服务器是 XFS。
文件大小从几 kb 到几 mb 不等,5TB 中有 2400 万个 jpeg。所以我猜测 15TB 大约为 60-80 百万。
编辑:在玩了几天 rsync、nc、tar、mbuffer 和 pigz 之后。瓶颈将是磁盘 IO。由于数据跨 500 个 SAS 磁盘和大约 2.5 亿个 jpeg 进行条带化。但是,现在我了解了我将来可以使用的所有这些不错的工具。
h0t*_*1r3 65
我使用tar, pigz(并行 gzip)和nc.
源机:
tar -cf - -C /path/of/small/files . | pigz | nc -l 9876
Run Code Online (Sandbox Code Playgroud)
目标机:
提取:
nc source_machine_ip 9876 | pigz -d | tar -xf - -C /put/stuff/here
Run Code Online (Sandbox Code Playgroud)
要保留存档:
nc source_machine_ip 9876 > smallstuff.tar.gz
Run Code Online (Sandbox Code Playgroud)
如果您想查看传输速率,只需pv在pigz -d!
Fox*_*Fox 21
我会坚持使用 rsync 解决方案。现代 (3.0.0+) rsync 使用增量文件列表,因此在传输之前不必构建完整列表。因此,重新启动它不需要您再次进行整个传输以防万一。拆分每个顶级或二级目录的传输将进一步优化这一点。(如果您的网络比您的驱动器慢,我会使用rsync -a -P并添加--compress。)
小智 15
设置 VPN(如果是互联网),在远程服务器上创建某种格式的虚拟驱动器(使其成为 ext4),将其安装在远程服务器上,然后将其安装在本地服务器上(使用块级协议,如 iSCSI ),并使用 dd 或其他块级工具进行传输。然后,您可以在方便时将文件从虚拟驱动器复制到真实 (XFS) 驱动器。
两个原因:
小智 9
如果旧服务器正在退役并且文件可以离线几分钟,那么通常最快的方法是将驱动器从旧盒子中拉出并将它们连接到新服务器,安装它们(现在重新上线)并复制文件到新服务器本机磁盘。
| 归档时间: |
|
| 查看次数: |
16383 次 |
| 最近记录: |