在 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 中指定进程优先级的主要内容,如果未能解决你的问题,请参考以下文章

在响应式设计中指定 HTML 文本中的首选换行点 [重复]

如何在ansible中指定docker的log-opt来限制容器的日志大小?

sql语句的优先级

SQL语句操作优先级顺序

SQL server 查询语句优先级-摘抄

Ansible PlayBook的中清单变量优先级分析及清单变量如何分离总结