在 Ansible 中指定进程优先级
Posted
技术标签:
【中文标题】在 Ansible 中指定进程优先级【英文标题】:Specifying process priority in Ansible 【发布时间】:2020-05-28 15:58:31 【问题描述】:是否可以为 Ansible 任务指定进程优先级?
用例为昂贵且长时间运行的备份任务设置低优先级。在 bash 脚本中,我会为此使用 nice。通过使用关键字“进程优先级”和“nice”结合“Ansible”进行搜索,我没有找到任何东西。
【问题讨论】:
【参考方案1】:async
任务允许您在后台运行任务。这有助于避免长时间运行的任务阻塞剩余的任务。只要剩余任务独立于标记为async
的任务,该方法就可以工作,这可以减少等待时间。
例如,等待大文件完成下载,下一个任务是c完全独立的命令,可能需要一些时间。由于异步任务将在完成时在后台运行,因此其余的独立命令都已完成。
以下文档的链接 https://docs.ansible.com/ansible/latest/user_guide/playbooks_async.html
【讨论】:
虽然这很有趣,但它并没有回答我关于进程优先级的问题。我不关心我的剧本的运行时间,我关心的是我的剧本如何影响正在运行的服务(如网络服务器)。 我不认为你可以做一些像定义 CPU 时间和优先级这样细化的事情,因为 nice 会覆盖任务执行的 ansible 优化。你有什么特别的任务想要调整这个吗?通过调整 ansible.cfg 文件或使用自定义插件可以进行一些优化。以上是关于在 Ansible 中指定进程优先级的主要内容,如果未能解决你的问题,请参考以下文章