我想通过将 1GB 文件从一组服务远程发送到另一组服务器来测试网络速度
前任:
S1 -> S11
S2 -> S21
S3 -> S31
目前我在我的本地机器(LM(中,我需要登录到服务器s1并创建随机的1G文件和scp到服务器:s11,就像明智的s2到s21等等。 使用一组测试,如下所示
ssh $1 <<EOD
dd if=/dev/zero of=file_test count=1024 bs=1048576
scp file_test $2:/tmp
EOD
它工作得很好,但它不能证明 scp 数据传输速度/秒,当我在 LM 中使用它时,它确实如此。
scp file_test server1:/tmp
file_test 100% 1024MB 113.8MB/s 00:09
我也想在运行 shell 脚本时打印这些统计数据。如何从脚本中实现这一点,我需要做同样的事情并收集 100+ 服务器的结果
scp
在非交互式运行时没有显示统计信息的选项。你可以试试rsync
ssh $1 <<EOD
dd if=/dev/random of=file_test count=1024 bs=1048576
rsync file_test $2:/tmp
EOD
使用/dev/random
您将获得一个随机文件(否则您将拥有一个可以轻松压缩的 0 填充文件(。