- 确保你的group_vars文件是正确命名的。Ansible默认将您的文件视为.yml格式,因此文件名必须以'.yml'结尾。例如,如果您的组名为'web',则group_vars文件应该命名为'web.yml'。
- 确保您的group_vars文件位于inventory中定义的组目录中。例如,如果您的inventory文件为inventory.ini,其中包含[web]组,则您的group_vars目录应该是'inventory/group_vars/web/'。
- 检查您的group_vars文件中的变量是否形成了正确的层次结构。例如,如果您的组名为'web',则您的group_vars文件内容可能如下所示:
web:
http_port: 80
timeout: 30
- 确保您的playbook正确地引用了变量。例如,在您的playbook中,您可能需要使用以下内容来引用http_port变量:
- name: Start Apache
service:
name: apache
state: started
vars:
http_port: "{{ web.http_port }}"
通过遵循上述步骤,您应该能够使Ansible正确地使用group_vars文件中的变量来运行您的playbook。