我有两台运行CentOS 6.5的戴尔R515服务器,其中一台Broadcom网卡直接连接到另一台。 我使用直接链接,通过ssh使用rsync,将备用服务器中的主服务器每天晚上推到备用服务器上。 监控stream量,我看到吞吐量约为2MBps,远远低于我所期望的千兆端口。 我已经把双方的MTU都设置为9000,但是这似乎没有改变任何东西。
是否有一组build议的设置和优化可以使我获得最大的可用吞吐量? 而且,由于我通过ssh(或可能只是NFS)使用rsync来复制数百万个文件(约6Tb的小文件 – 一个巨大的Zimbra邮件存储库),所以我正在寻找的优化可能需要针对我的特定用例。
如果有问题,我使用双方的ext4
谢谢
编辑:我已经使用以下几乎相似的结果rsync
选项:
rsync -rtvu --delete source_folder/ destination_folder/
rsync -avHK --delete --backup --backup-dir=$BACKUPDIR source_folder/ destination_folder/
目前,我正在通过同一直接电缆链路,在使用cp
到NFS导出时看到相同级别的性能不佳。
编辑2:完成同步后,我可以运行iperf
,发现性能是在990Mbits / sec左右,慢的是由于实际的数据集在使用。
文件数量和SSHencryption开销可能是最大的障碍。 像这样的传输你不会看到线速。
改进的选项包括:
-e "ssh -c arcfour"
) dd
, ZFS快照发送/接收等 tar
,netcat( nc
), mbuffer或其他组合。 tuned-adm
设置 。 rsync
命令。 那么,整个文件选项在这里有意义吗? 压缩启用了吗? 正如你可能知道复制大量小文件(例如使用MailDir格式的邮箱或类似的邮箱)绝对不是利用高带宽接口的最佳select。 SSH可能不是最好的传输协议。 我会尝试使用tar在源主机上创build一个tarball,然后将其发送给您的辅助主机。
tar c /var/mail | ssh root@secondary-host 'tar x -C /var/backups'
如果您需要增量备份,您可能需要尝试tar的-g
选项。 如果您仍然需要最大化throuput,请尝试使用netcat而不是ssh。
尝试挑逗除了促成因素:
并独立进行testing。
我有一些Broadcom驱动程序的不好的经验,所以我的第一个build议是testing可用的networking带宽: dd if=/dev/zero bs=1m count=10k | rsh backup_host cat \> /dev/null
dd if=/dev/zero bs=1m count=10k | rsh backup_host cat \> /dev/null