我正在研究 Ansible。我看到我们创建了角色,然后在“tasks”文件夹下创建了 main.yml。在此文件中,我们指定应为此特定角色执行哪些命令。在编写这些命令时,我们使用一组模块。
还有临时 ansible 命令的概念,这是我们可以使用模块运行命令的另一个地方。
我想知道是否所有模块都可用于输入临时命令或仅其中的一个子集?
答案1
我想不出一个实例,假设该模块适合目标主机,您将无法在临时模式下运行 ansible 模块。此外,所有模块必须符合相同的标准(最值得注意的是以 JSON 形式返回所有输出)。因为您可以在临时模式下使用 ansible 通过“-a”标志添加所有模块参数,所以从功能上来说,它与从剧本中执行相同的命令/任务没有什么不同(但不要误会,剧本是更强大)。
临时命令对于执行快速任务和/或检查非常有用,但除此之外的任何内容都可能应该是一本剧本。可以在官方文档中找到更好的概述:https://docs.ansible.com/ansible/latest/user_guide/intro_adhoc.html