我使用ansible并且在运行playbook时遇到问题
site.yml:
---
- name: Test Ansible Playbook
hosts: '{{ myhosts }}'
sudo: no
roles:
- myRole
myRole文件:
---
- name: Node script
hosts: '{{ myhosts }}'
sudo: no
tasks:
- name: Start Tomcat
service: name=tomcat state=started enabled=yes
当我尝试运行命令时:ansible-playbook "-e 'myhosts=myHostName'" site.yml
我收到以下错误:
ERROR: hosts is not a legal parameter in an Ansible task or handler
答案 0 :(得分:2)
错误:主机不是Ansible任务或处理程序中的合法参数
这就是问题所在。在角色的任务文件中,您可以定义任务 - 没有别的。执行这些任务的主机是在剧本中定义的。
您的任务文件应仅包含以下内容:
---
- name: Start Tomcat
service: name=tomcat
state=started
enabled=yes
...