1
這是我試圖運行的劇本。add_host的範圍
---
# ansible/site.yml
- hosts: localhost
gather_facts: yes
connection: local
sudo: no
roles:
- ec2
- hosts: ec2hosts
gather_facts: yes
user: ubuntu
roles:
- supervisor
這裏是ec2角色的一部分。
---
# ansible/roles/ec2/main.yml
# Provision EC2 instances
# ...
register: ec2
- name: Add EC2 instances to host groups
add_host: hostname={{ item.public_ip }} groups=ec2hosts
with_items: ec2.instances
第一部分工作正常,主機上看起來正確添加,但一旦進入到下一個遊戲,(安裝在新創建的ec2hosts
導師),它給了我一個skipping: no hosts matched
。
那麼爲什麼我的主要手冊不能識別在第一次播放時創建的主機組?
編輯:
Hosts文件。我是否需要在此聲明主機組以使其可以全局訪問?我嘗試刪除[ec2hosts]
行以及運行時未將其指定爲庫存文件。
# inventory/hosts
[local]
localhost
[ec2hosts]
運行它:
ansible-playbook -i ansible/inventory/hosts ansible/site.yml -vvv
相關的輸出:
...
TASK [ec2 : Add EC2 instances to host groups] ***************************
PLAY *******************************************************************
skipping: no hosts matched
PLAY RECAP **************************************************************
localhost : ok=3 changed=0 unreachable=0 failed=0
您正在運行的是什麼版本的軟件? – Petro026
開發分支,所以> 2 –
你在做什麼應該工作。你能發佈你如何從命令行運行嗎?您的廣告資源是否有現有的ec2hosts羣組?你可以發佈使用-vvvv運行的輸出嗎? – Petro026