【发布时间】:2016-09-16 07:20:26
【问题描述】:
我有一本只想在 RHEL 6 服务器上执行的剧本。我知道我可以放
when: ansible_distribution == "RedHat" and ansible_distribution_major_version == 6
进入整个剧本中的每一项任务,但这对我来说似乎效率很低。
有没有办法将整个剧本限制在这些机器上,这样我就不必把这条线放到每一个任务中?
我想它甚至会执行得更快,因为它不需要在每个任务中检查服务器是否是 RedHat 6。
另外,我认为最高效的性能方法是将 RHEL 6 服务器列表存储在一边,并仅在它们上执行此剧本,因为 Ansible 并没有真正缓存这些信息,所以它总是必须连接所有服务器只是为了弄清楚它们是否是 RHEL 和版本 6?
【问题讨论】:
-
下面有一个很好的答案,但您说得对,最好的方法是将库存中的操作系统作为组进行跟踪。
标签: ansible