为了避免rsync饿死系统和网络,我们在启动rsync时使用ionice并设置–bwlimit参数.例如:
ionice -c2 -n7 rsync -aH --bwlimit=30000 /foo root@dest.com:/
这确实有助于确保源服务器保持响应.但是,由于磁盘io为100%,目标服务器变得非常慢(如atop实用程序所示).
是否有可能以某种方式在目标服务器上使用ionice?也许通过rsync -e选项?如果可能的话,我宁愿不运行rsync守护进程.
解决方法
更改rsync命令或将其包装在shell脚本中以包含ionice命令/参数是一个选项.此外,您可以利用–rsync-path选项,该选项告诉rsync在远程服务器上执行哪个命令.像–rsync-path =“ionice -c2 -n7 rsync”之类的东西将确保ionice在目的地上运行.
我将补充说,根据服务器配置,ionice并不总是有效.它仅适用于default CFQ I/O elevator.如果您已完成任何存储系统调整,则此方法可能不适用.
您能举例说明负载或帮助解释在复制期间系统如何启动资源?我倾向于深入研究,看看为什么rsync,特别是限于你在你的例子中列出的低速率,会导致这么多麻烦.
你在复制什么?什么是硬件/操作系统设置?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。