Answers:
该项目旨在支持运行ansible剧本的自动化。有一个基于GUI的项目叫做Ansible Tower或AWX,但实际上ansible-runner似乎是自动化的基础层,它取代了ansible-playbook命令。
尝试在某些脚本中使用ansible-playbook时,对于自动化确实存在一些严重的问题。当解析时,ansible-playbook的输出是最糟糕的事情。因此,您必须首先编写自己的输出插件,然后为此编写一个解析器,然后需要弄清楚如何管理环境变量和密码以及许多其他事情。因此,答案是ansible-runner。这样可以防止工件运行任务或剧本,并可以在进一步的自动化中封装ansible。
您可以从shell运行它,也可以将其作为python模块运行,甚至还有一个引用容器,显然AWX使用了它。此外,该项目的事件发射器有望更好地插入到ELK等监视系统和Message Bus类型的系统中。
为了完成Jiri的回答,我发现ansible-runner
在openshift-operator框架中它被用作ansible运行时,因此,当资源上出现更改时,您可以在容器中运行ansible剧本或ansible角色来协调集群状态。
因此ansible-runner
,ansible runc
或cri-o
容器执行的运行时执行确实如此。