我正在修改我的ansible库存以使用ansible-vault。 一切都工作正常,但我有一个问题,我认为变量优先。当我尝试与ansiblemaster(localhost 127.0.0.1)建立本地连接时,它似乎使用全局配置的sudo密码而不是host_vars中的那个
这是我的设置:
所以我在group_vars / all / config.yml中定义了这个:
### GLOBAL ###
ansible_become_password: "{{ secret_ansible_become_password }}"
ansible_password: "{{ secret_ansible_password }}"
ansible_user: "{{ secret_ansible_user }}"
我在host_vars / ansiblemaster中定义了这个:
ansible_ssh_host: 127.0.0.1
ansible_user: "{{secret_master_ansible_user}}"
ansible_password: "{{secret_master_ansible_password}}"
ansible_become_password: "{{secret_master_ansible_become_password}}"
ansible_become_user: "{{secret_master_ansible_become_user}}"
ansible_connection: local
我一直在:
密码:\ nsudo:1次密码尝试不正确\ n" 当我运行一个构成本地连接并执行sudo的剧本时。
我在host_vars / ansiblemaster中的定义是否不会覆盖group_vars / all / config?
答案 0 :(得分:0)
我已经解决了。归结为: 我有一个local_action:任务没有找到" ansiblemaster"的变量。 (这是localhost)...我改为使用delegate_to:ansiblemaster,现在它确实在我的host_vars /
中获取变量...
不确定这是否是最佳做法。