Ansible SOCKS प्रॉक्सी: localhost कोणत्या मशीनचे आहे?
Ansible API विनंती करणारी प्रक्रिया शोधा, नंतर ती loopback वरील SSH SOCKS श्रोत्याकडे निर्देशित करा.
socks5h://127.0.0.1:65432 वापरणारे कार्य त्या श्रोता असलेल्या नेटवर्क वातावरणात चालले पाहिजे. नियंत्रकाकडून चालणारी सुरंग ते व्यवस्थापित होस्टच्या loopback पत्त्यावर — किंवा अंमलबजावणी कंटेनरमध्ये उपलब्ध करत नाही.
अयशस्वी होणाऱ्या कार्यासाठी चार तथ्ये स्थापित करा:
- नेटवर्क विनंती अंमलात आणणारा होस्ट किंवा कंटेनर.
- त्याचा प्रभावी वापरकर्ता आणि Python इंटरप्रिटर.
- मॉड्यूलची HTTP लायब्ररी किंवा SDK.
- ती प्रक्रिया SOCKS श्रोत्यापर्यंत पोहोचू शकणारा पत्ता.
केवळ नाटकाचे इन्व्हेंटरी लक्ष्य पहिल्या प्रश्नाचे उत्तर देत नाही. मॉड्यूल त्यांचे कॉन्फिगर केलेले कनेक्शन वापरतात, प्रतिनिधित्व अंमलबजावणी हलवू शकते, आणि स्थानिक कनेक्शन काम नियंत्रकावर ठेवू शकते. नियंत्रक-बाजूचे शोध रिमोट मॉड्यूलच्या पूर्णपणे बाहेर होतात.
OpenStack इमेज कार्यासाठी, स्थापित openstack.cloud संग्रहाच्या आवश्यकता आणि त्याचे OpenStack SDK वातावरण तपासा. इतरत्र curl यशस्वी होणे त्या SDK च्या SOCKS क्षमता किंवा अवलंबित्व सिद्ध करत नाही.
API क्रिया स्थानिक पातळीवर चालवायची असल्यास, ती अंमलबजावणी निवड स्पष्ट करा आणि सेटिंग तिथे द्या. जर ती दूरून चालत असेल, तर त्या संदर्भातून पोहोचू शकेल असा प्रॉक्सी निवडा. Ansible कार्याचे environment: कार्य प्रक्रियेवर परिणाम करते; ते प्रत्येक शोध किंवा प्लगइन पुन्हा कॉन्फिगर करत नाही, आणि SDK ला त्या Python वातावरणात योजनेचे समर्थन करावे लागतेच.
दोन मार्ग वेगळे ठेवा: SSH किंवा ProxyJump Ansible ला होस्टपर्यंत नेते, तर मॉड्यूलचा HTTP क्लायंट त्याच्या अंमलबजावणी संदर्भातून API पर्यंत जातो. कार्यरत पहिला मार्ग दुसरा कॉन्फिगर करत नाही. केवळ नियंत्रकावर असलेला श्रोता पोहोचक्षमतेसाठी उघडल्यास त्याच्यापर्यंत कोण पोहोचू शकतो हेही बदलते, म्हणून हा पत्ता दुरुस्ती नसून तैनातीचा निर्णय आहे.