我的理解是,使用-B运行ansible会将进程置于后台,我将恢复控制台。我不知道我是否使用它错误,或者它没有按预期工作。我期望在所有三台计算机上启动sleep命令,然后我可以使用提示运行另一个命令。发生的事情是,在命令完成之前我无法访问控制台(在这种情况下为2分钟)。
出了什么问题,我误解了-B
做了什么,或者我做错了什么?
答案 0 :(得分:2)
在Ansible中配置async tasks有两个参数:async
和poll
。
async
(临时-B
) - 允许任务运行的总秒数。
在剧本中poll
(临时-P
) - 以秒为单位的频率,您希望检查结果的频率。
因此,如果您只需要 fire并忘记 ad-hoc命令,请使用-B 3600 -P 0
:允许执行1分钟并且不关心结果。
默认情况下为-P 15
,因此ansible
不会退出,而是每15秒检查一次作业。