我有一个9.2GB的文件,我想将其转移到我的AWS t2.small实例中进行备份。 当我启动scp时,它以每秒3.4MB的速度复制文件,这导致大约45分钟的预计传输时间。
有一段时间,实例总是locking。 我不能再在terminal窗口,网站档(它是一个networking服务器)input任何东西,我也无法连接到它。 重启实例解决了这个问题。
我调查了EBS限制:我有2个RAID10 200GB gp2磁盘连接。 从这个文档我看不到我超过了IOPS或磁盘的吞吐量。 我也检查了带宽 ,但是看不到有关t2实例的任何信息。 最后我看了一下CPU的学分 ,但是大概是不应该完全失速的?
这是一个一次性的转移,所以我想了解我有多less要减慢转移,使其安全地发生。 同时,我想了解一下这个Web服务器pipe理的限制。
如果你想知道问题是什么,那么你应该安装一些监控,或者你也可以build立几个连接到系统,并运行诸如top , vmstat , iostat , free等工具(如果需要,使用watch(1) )来得到查看系统资源发生了什么。 收集数据,然后应用科学方法 – 这是确保的唯一方法。
如果你只是想传输文件,然后尝试使用拆分块文件,并分别传输每个块。 然后你可以使用cat将大块重新组装成整个文件。
一种可能性是文件系统caching。 通常情况下,如果大量的数据拷贝,文件系统caching可能会耗尽所有可用的内存(t2.small只有2GB),导致交换,这可能会导致系统无响应。 不知道是否有办法绕过文件系统caching与SCP。