Ansible—防止为未使用的主机收集事实
我有一本Ansible—防止为未使用的主机收集事实,ansible,Ansible,我有一本playbook.yml,内容大致如下: - name: Play1 hosts: vm1 ... tags: pl1 - name: Play2 hosts: vm2 ... tags: pl2 现在想象一下场景,vm1已经死了,我暂时不关心它,我只想像这样运行第二个剧本: ansible-playbook playbook.yml --tags=pl2 但现在,Ansible在为vm1收集事实时出错。有没有一种方法可以指导Ansible变得更聪明,而完全
playbook.yml
,内容大致如下:
- name: Play1
hosts: vm1
...
tags: pl1
- name: Play2
hosts: vm2
...
tags: pl2
现在想象一下场景,vm1
已经死了,我暂时不关心它,我只想像这样运行第二个剧本:
ansible-playbook playbook.yml --tags=pl2
但现在,Ansible在为vm1
收集事实时出错。有没有一种方法可以指导Ansible变得更聪明,而完全忽略其他剧本?为什么它会这样做呢?如果你真的认为这是管理服务器的最佳方式
使用收集事实:false
并明确添加设置
任务:
- name: Play1
gather_facts: no
hosts: vm1
pre_tasks:
- setup:
...
tags: pl1
我认为您需要的是
--limit
选项,它只在指定的主机和/或组上运行任务
ansible-playbook playbook.yml --limit=vm2