हां, आप इसे इन्वेंट्री / होस्ट स्तर पर सेट कर सकते हैं ।
वर्तमान में पहले से ही स्वीकृत उत्तर के साथ, मुझे लगता है कि यह इस सवाल का बेहतर जवाब है कि इसे इन्वेंट्री स्तर पर कैसे संभाला जाए। मैं इस असुरक्षित सेटिंग को इसके लिए आवश्यक मेजबानों (जैसे परीक्षण प्रणाली, स्थानीय विकास मशीनों) को अलग करके इसे और अधिक सुरक्षित मानता हूं।
इन्वेंट्री स्तर पर आप जो कर सकते हैं वह है
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'
काम नहीं करता है।