टेराफॉर्म एक इन्फ्रास्ट्रक्चर-एज़-कोड (IaC) टूल है जो हाशिकॉर्प कॉन्फ़िगरेशन लैंग्वेज (HCL) में लिखा गया है। यह आलेख मानता है कि पाठक ने टेराफ़ॉर्म के साथ काम किया है और समझते हैं कि मॉड्यूल कैसे काम करते हैं।
टेराफॉर्म में कोडिंग करने वाले प्रत्येक व्यक्ति ने या तो अपने स्वयं के मॉड्यूल बनाए हैं, या कम से कम किसी और का उपयोग किया है।
मॉड्यूल कई संसाधनों के लिए कंटेनर हैं जिनका एक साथ उपयोग किया जाता है। एक मॉड्यूल में एक निर्देशिका में एक साथ रखी गई .tf और/या .tf.json फ़ाइलों का संग्रह होता है।
मॉड्यूल टेराफॉर्म के साथ संसाधन कॉन्फ़िगरेशन को पैकेज करने और पुन: उपयोग करने का मुख्य तरीका है।
मॉड्यूल को टेराफॉर्म रजिस्ट्री या गिटलैब जैसी रजिस्ट्रियों में प्रकाशित किया जा सकता है। HTTPS या SSH URL प्रदान करके मॉड्यूल को Git रिपॉजिटरी से भी परोसा जा सकता है। इनका संस्करण भी किया जा सकता है। उदाहरण के लिए,
module "consul" { source = "github.com/hashicorp/example" }
संस्करण:
module "consul" { source = "github.com/hashicorp/example?ref=1.2.6" }
जैसे-जैसे आपकी रिपॉजिटरी बढ़ती है और आप अपने मॉड्यूल को अन्य रिपॉजिटरी में संदर्भित करते हैं, आप यह सुनिश्चित करने के लिए अपने मॉड्यूल को उचित रूप से संस्करणित करेंगे कि स्रोत में अपस्ट्रीम परिवर्तन आपके बुनियादी ढांचे को नहीं तोड़ते हैं। हालाँकि, उपयोग किए जा रहे मॉड्यूल के लिए सभी नए रिलीज़ों पर नज़र रखना मुश्किल है और इसे नियमित रूप से करना और भी कठिन है। ध्यान न दें, यह ओवरटाइम को तकनीकी ऋण के रूप में बनाता है क्योंकि एक दिन आपको पता चलता है कि एक कोर मॉड्यूल अब 3 प्रमुख संस्करण आगे है।
आपके रिपॉजिटरी की टेराफॉर्म/ओपनटोफू निर्भरता को अपस्ट्रीम पर ट्रैक करने में मदद करने के लिए एक उपकरण, सैमवाइज़-सीएलआई प्रस्तुत कर रहा है। मॉड्यूल के उपयोग के लिए आपके भंडार को खोजता है और उन मॉड्यूल की एक रिपोर्ट तैयार करता है जिनमें उन सभी संस्करणों के साथ अपडेट उपलब्ध हैं जो वर्तमान में उपयोग किए गए संस्करण से अधिक उन्नत हैं।
फिलहाल, केवल एक ही कमांड है, लेकिन उम्मीद है कि टूल विकसित होते ही और भी कमांड होंगे।
फिलहाल के लिए रैंडम रेपो
आपकी टेराफॉर्म मॉड्यूल यात्रा में साथ देने और मॉड्यूल निर्भरता अपडेट के आपके बोझ को साझा करने के लिए एक सीएलआई एप्लिकेशन, जैसे एक बहादुर हॉबिट ने फ्रोडो को उसकी मदद की :)
\ : / '-: __ :-' -: )(_ :-- -' |r-_i'- ,sSSSSs, (2-,7 sS';:'`Ss )-j ;K e (e s7 / ( S, '' SJ ( ;/ sL_~~_;(S_) _7 |, 'J)_.-' />'-' `Z j J /-;-A'-'|'--'-j\ L L ) |/ : / \ \ \ | | | '._.'| L \ \ | | | | \ J \ \ _/ | | | ',| \ L.,' | | | | |/ _;-r-<_. __. _ l- l>…
इसे चलाने के लिए जहां मॉड्यूल निजी GitHub रिपॉजिटरी का उपयोग कर रहे हैं, .samवाइज.yaml कॉन्फ़िगरेशन फ़ाइल को एक तर्क के रूप में पारित करने की आवश्यकता है या उपयोगकर्ता की होम निर्देशिका में मौजूद होने की आवश्यकता है।
.samwise.yaml प्रारूप:
github_key: github_username:
वर्तमान में केवल GitHub HTTPS प्रमाणीकरण समर्थित है लेकिन SSH प्रमाणीकरण जल्द ही समर्थित होगा।
सीएसवी प्रारूप
JSON प्रारूप
मुझे लॉर्ड ऑफ द रिंग्स बहुत पसंद है :)
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3