2017-06-01 54 views
1

我是Ansible的新手,所以我认为我犯了一个愚蠢的错误,但是当我尝试为一组主机运行剧本时,Ansible在某些组中看不到任何主机。特别是Ansible库存差异

清查等等以下组:

[master] 
clm01 

这似乎是工作确定与特设命令:

:~/ansible/splunk# ansible master -i hosts -m ping -u USERNAME 
clm01 | SUCCESS => { 
    "changed": false, 
    "ping": "pong" 
} 

然而,当我尝试运行以下, Ansible看不到任何主机:

- name: initialize master 
    hosts: master 
    remote_user: USERNAME 
    become: yes 
    roles: 
    - cluster_master 
[...] 

ansible-playbook site.yml --ask-sudo-pass --list-hosts 
[...] 
    play #2 (master): initialize master TAGS: [] 
    pattern: [u'master'] 
    hosts (0): 
[...] 

一些清单中的组都工作瓦特在同一个文件中定义的其他剧本,所以我会认为在我这边有一个语法错误。我也试图改变组名,希望我使用的是保留名称等

回答

0

它看不到任何主机,因为您在第二个命令中省略了-i hosts参数。

运行以下命令:

ansible-playbook site.yml -i hosts --ask-sudo-pass --list-hosts 
+0

一些组织被做工精细,这让我怀疑这个答案,但我认为我有任何松动。事实证明,当我开始时,我已经填充了/ etc/ansible/hosts ... – luke774

-1

我认为它需要看起来像这样:

- hosts: master 
    remote_user: USERNAME 
    become: yes 
    become_user: root 

    roles: 
    - cluster_master 

name标记是戏剧。