हां, आप इसे इन्वेंट्री / होस्ट स्तर पर सेट कर सकते हैं ।
वर्तमान में पहले से ही स्वीकृत उत्तर के साथ, मुझे लगता है कि यह इस सवाल का बेहतर जवाब है कि इसे इन्वेंट्री स्तर पर कैसे संभाला जाए। मैं इस असुरक्षित सेटिंग को इसके लिए आवश्यक मेजबानों (जैसे परीक्षण प्रणाली, स्थानीय विकास मशीनों) को अलग करके इसे और अधिक सुरक्षित मानता हूं।
इन्वेंट्री स्तर पर आप जो कर सकते हैं वह है
ansible_ssh_common_args='-o StrictHostKeyChecking=no'
या
ansible_ssh_extra_args='-o StrictHostKeyChecking=no'
अपनी मेज़बान परिभाषा के लिए (देखें विवादास्पद व्यवहार सूची पैरामीटर )।
यह काम करेगा बशर्ते आप sshकनेक्शन प्रकार का उपयोग करें , न कि paramikoकुछ और)।
उदाहरण के लिए, एक वैजंट होस्ट परिभाषा…
vagrant ansible_port=2222 ansible_host=127.0.0.1 ansible_ssh_common_args='-o StrictHostKeyChecking=no'
या
vagrant ansible_port=2222 ansible_host=127.0.0.1 ansible_ssh_extra_args='-o StrictHostKeyChecking=no'
रनिंग अन्सिबल तब किसी भी पर्यावरण चर को बदले बिना सफल होगा।
$ ansible vagrant -i <path/to/hosts/file> -m ping
vagrant | SUCCESS => {
"changed": false,
"ping": "pong"
}
यदि आप मेजबानों के समूह के लिए ऐसा करना चाहते हैं, तो यहां एक मौजूदा समूह के लिए एक पूरक समूह संस्करण बनाने का सुझाव दिया गया है:
[mytestsystems]
test[01:99].example.tld
[insecuressh:children]
mytestsystems
[insecuressh:vars]
ansible_ssh_common_args='-o StrictHostKeyChecking=no'
ANSIBLE_HOST_KEY_CHECKINGकाम करता है लेकिन-e 'host_key_checking=False'काम नहीं करता है।