Невозможно отключить проверку Ansible host key
Я использую Ansible 1.5.4 для установки моего Vagrant 1.4.3 на Ubuntu 14.04 LTS.
Я получаю следующее сообщение об ошибке в подробном режиме:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Я могу сделать: export ANSIBLE_HOST_KEY_CHECKING=False
, и у меня есть следующие строки в моем ~/.ansible.cfg
:
[defaults]
host_key_checking = False
Но это не помогает.
В чем может быть проблема? Спасибо!
ОБНОВЛЕНИЕ # 1
Я вызываю его прямо так (без использования команды vagrant
):
ansible-playbook playbook.yml -i inventory.ini --user=vagrant --ask-pass -vvvv
Реестр:
[default]
localhost:2222
Ответы
Ответ 1
Вам нужно установить его через Vagrantfile
проекта. Когда средство ожидания Vagrant Ansible делает вызов ansible-playbook
, он всегда устанавливает значение переменной среды ANSIBLE_HOST_KEY_CHECKING
.
Ansible себя принимает значение переменной окружения, если присутствует. Поэтому Vagrant переопределит значение, используемое в вашем ansible.cfg
.
Поэтому вам просто нужно что-то вроде:
machine.vm.provision :ansible do |ansible|
ansible.host_key_checking = false
# etc.
end
Ответ 2
Наверное, не ваша проблема, но стоит того: я был остановлен на этом, пока не понял, что добавил
host_key_checking = False
под сеансом, который не был [defaults]
. Как только я на самом деле переместил его под [defaults]
, измененные ключи хоста больше ничего не останавливали.