我正在使用 Ansible 1.5.4 在 Ubuntu 14.04 LTS 上配置我的 Vagrant 1.4.3 框。
我在详细模式下收到以下错误消息:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
我可以:export ANSIBLE_HOST_KEY_CHECKING=False
我的~/.ansible.cfg
中有以下几行:
[defaults]
host_key_checking = False
但它没有帮助。
可能是什么问题?谢谢!
我这样直接调用它(不使用vagrant
命令):
ansible-playbook playbook.yml -i inventory.ini --user=vagrant --ask-pass -vvvv
库存是:
[default]
localhost:2222
答案 0 :(得分:10)
您需要通过项目的Vagrantfile
进行设置。当Vagrant Ansible供应商致电ansible-playbook
时,总是 sets the value of the ANSIBLE_HOST_KEY_CHECKING
environment variable。
Ansible本身takes the value of the environment variable if present。因此,Vagrant将覆盖ansible.cfg
中使用的值。
因此,您只需要:
machine.vm.provision :ansible do |ansible|
ansible.host_key_checking = false
# etc.
end