Evet, yapabilirsiniz envanter / ana seviyede buna ayarlayın.
Zaten kabul edilmiş bir cevap varken, bunun envanter düzeyinde nasıl ele alınacağı sorusuna daha iyi bir cevap olduğunu düşünüyorum. Bu güvensiz ayarı bunun için gereken ana bilgisayarlara (örneğin test sistemleri, yerel geliştirme makineleri) izole ederek bunu daha güvenli buluyorum.
Envanter seviyesinde yapabilecekleriniz
ansible_ssh_common_args='-o StrictHostKeyChecking=no'
veya
ansible_ssh_extra_args='-o StrictHostKeyChecking=no'
ana bilgisayar tanımınıza (bkz. Ansible Davranışsal Envanter Parametreleri ).
Bu, ssh
bağlantı türünü kullanmamanız paramiko
veya başka bir şey kullanmanız durumunda işe yarayacaktır ).
Örneğin, bir Vagrant ana bilgisayar tanımı şöyle görünür ...
vagrant ansible_port=2222 ansible_host=127.0.0.1 ansible_ssh_common_args='-o StrictHostKeyChecking=no'
veya
vagrant ansible_port=2222 ansible_host=127.0.0.1 ansible_ssh_extra_args='-o StrictHostKeyChecking=no'
Ansible'ı çalıştırmak, herhangi bir ortam değişkenini değiştirmeden başarılı olacaktır.
$ ansible vagrant -i <path/to/hosts/file> -m ping
vagrant | SUCCESS => {
"changed": false,
"ping": "pong"
}
Bunu bir grup ana bilgisayar için yapmak istemeniz durumunda, aşağıdaki gibi var olan bir grup için tamamlayıcı bir grup değişkeni yapmak için bir öneri:
[mytestsystems]
test[01:99].example.tld
[insecuressh:children]
mytestsystems
[insecuressh:vars]
ansible_ssh_common_args='-o StrictHostKeyChecking=no'
ANSIBLE_HOST_KEY_CHECKING
çalışıyor ama-e 'host_key_checking=False'
çalışmıyor.