在使用'add_host”模块时,需要添加一个'playbook”,并且在'playbook”中使用'localhost”作为主机。以下是一个示例代码:
- name: 定义主机组
hosts: all
tasks:
- name: 添加主机到主机组
add_host:
name: "{{ item.name }}"
groups: "{{ item.group }}"
with_items:
- { name: "host1", group: "group1" }
- { name: "host2", group: "group2" }
- name: 使用新定义的主机组
hosts: group1
tasks:
- name: 在group1主机组中执行命令
shell: echo "hello world!"
- name: 在'localhost”中执行任务
hosts: localhost
tasks:
- name: 打印主机信息
debug:
var: ansible_play_hosts_all
在上面的示例中,首先定义了两个主机组 'group1” 和 'group2”,并将 'host1” 和 'host2” 分别添加到这两个主机组中。然后,定义了一个新的 playbook '使用新定义的主机组”,将 'hosts” 设为 'group1”,并在其中执行命令 'echo "hello world!"”。最后,定义了另一个 playbook '在localhost中执行任务”,将 'hosts” 设为 'localhost”,并在其中打印主机信息。
通过以上示例,可以避免报错:'skipping: no hosts matched”,并成功使用'add_host”模块将主机添加至主机组中。
上一篇:Ansible模糊环境值