टेराफ़ॉर्म मॉड्यूल में प्रोग्रामयोग्य AWS लैंडिंग ज़ोन का परिचय

नमस्ते! दिसंबर में, OTUS ने एक नया पाठ्यक्रम लॉन्च किया - क्लाउड सॉल्यूशन आर्किटेक्चर. इस पाठ्यक्रम की शुरुआत की प्रत्याशा में, हम आपके साथ इस विषय पर दिलचस्प सामग्री का अनुवाद साझा कर रहे हैं।

टेराफ़ॉर्म मॉड्यूल में प्रोग्रामयोग्य AWS लैंडिंग ज़ोन का परिचय

AWS लैंडिंग ज़ोन एक समाधान है जो ग्राहकों को सर्वोत्तम प्रथाओं के आधार पर एक सुरक्षित, बहु-खाता AWS वातावरण स्थापित करने में मदद करता है।

पांच वर्षों से अधिक समय से, मिटॉक ग्रुप में हमारी टीम ने बड़े संगठनों को सफलतापूर्वक डिजिटल रूप से बदलने और उनके डिजिटल पदचिह्न को एडब्ल्यूएस क्लाउड पर बनाने या स्थानांतरित करने में मदद करने के लिए अथक प्रयास किया है। दूसरे शब्दों में, AWS में हमारे दोस्तों को उद्धृत करने के लिए: "हमारे ग्राहक AWS के साथ खुद को नया रूप दे रहे हैं।" यह ग्राहकों की ओर से यांत्रिकी को फिर से बनाने और सरल बनाने का एक कभी न खत्म होने वाला प्रयास है, और AWS सीखने में आसान समाधानों के साथ जटिल समस्याओं को हल करने का एक अच्छा काम करता है।

टेराफ़ॉर्म मॉड्यूल में प्रोग्रामयोग्य AWS लैंडिंग ज़ोन का परिचय
AWS लैंडिंग ज़ोन (स्रोत)

AWS लैंडिंग ज़ोन क्या है?

एक आधिकारिक सूत्र से मिली जानकारी के अनुसार:

AWS लैंडिंग ज़ोन एक समाधान है जो ग्राहकों को AWS सर्वोत्तम प्रथाओं के आधार पर एकाधिक खातों के साथ एक सुरक्षित AWS वातावरण स्थापित करने में शीघ्रता से मदद करता है। इतने सारे विकल्पों के साथ, बहु-खाता वातावरण स्थापित करना समय लेने वाला हो सकता है, इसमें कई खातों और सेवाओं को कॉन्फ़िगर करना शामिल हो सकता है, और AWS सेवाओं की गहरी समझ की आवश्यकता होती है।

AWS लैंडिंग ज़ोन ने विभिन्न ग्राहकों को दिए गए समान डिज़ाइन पैटर्न की जटिलता और स्थिरता को काफी कम कर दिया है। दूसरी ओर, हमारी टीम को स्वचालन के लिए आगे उपयोग करने के लिए कुछ क्लाउडफ़ॉर्मेशन घटकों को टेराफ़ॉर्म घटकों के रूप में पुन: कॉन्फ़िगर करना पड़ा।

इसलिए हमने खुद से पूछा, टेराफॉर्म में संपूर्ण AWS लैंडिंग ज़ोन समाधान क्यों नहीं बनाया गया? क्या हम ऐसा कर सकते हैं और क्या इससे हमारे ग्राहकों की समस्याएं हल हो जाएंगी? स्पॉइलर: यह निर्णय लेगा और पहले से ही निर्णय ले रहा है! 🙂

आपको AWS लैंडिंग ज़ोन का उपयोग कब नहीं करना चाहिए?

यदि आप एक या दो AWS खातों के भीतर नियमित क्लाउड सेवाओं और क्लाउड संसाधनों के साथ काम कर रहे हैं, तो ये उपाय अत्यधिक हो सकते हैं। जो कोई भी इस बिंदु से संबंधित नहीं है वह पढ़ना जारी रख सकता है :)

काम शुरू करने से पहले आपको क्या विचार करना चाहिए?

जिन बड़े संगठनों के साथ हमने काम किया है उनमें से कई के पास पहले से ही किसी न किसी प्रकार की क्लाउड रणनीति मौजूद है। कंपनियां स्पष्ट दृष्टि और अपेक्षाओं के बिना क्लाउड सेवाओं को सफलतापूर्वक लागू करने के लिए संघर्ष करती हैं। कृपया अपनी रणनीति को परिभाषित करने और यह समझने के लिए समय लें कि AWS इसमें कैसे फिट बैठता है।

रणनीति निर्धारित करते समय, सफल AWS लैंडिंग ज़ोन ग्राहक सक्रिय रूप से निम्नलिखित पर ध्यान केंद्रित करते हैं:

  • स्वचालन कोई विकल्प ही नहीं है. क्लाउड नेटिव ऑटोमेशन को प्राथमिकता दी जाती है।
  • क्लाउड संसाधनों का प्रावधान करने के लिए टीमें लगातार उपकरणों के समान सेट के साथ समान यांत्रिकी का उपयोग करती हैं। टेराफ़ॉर्म का उपयोग करना बेहतर है.
  • सबसे अधिक उत्पादक क्लाउड उपयोगकर्ताओं के पास पुन: प्रयोज्य प्रक्रियाएं बनाने और उन्हें पुन: प्रयोज्य कोड के बजाय पुन: प्रयोज्य सेवाओं के रूप में वितरित करने की क्षमता होती है। सर्वर रहित आर्किटेक्चर को प्राथमिकता दी जाती है.

AWS लैंडिंग ज़ोन के लिए टेराफ़ॉर्म मॉड्यूल का परिचय

कई महीनों की कड़ी मेहनत के बाद, मुझे आपके सामने प्रस्तुत करते हुए खुशी हो रही है AWS लैंडिंग ज़ोन के लिए टेराफ़ॉर्म मॉड्यूल. स्रोत कोड GitHub पर संग्रहीत है, और स्थिर रिलीज़ संस्करण टेराफॉर्म मॉड्यूल रजिस्ट्री पर प्रकाशित।

आरंभ करने के लिए, बस चालू करें main.tf आपके कोड के लिए:

module "landing_zone" {
  source     = "TerraHubCorp/landing-zone/aws"
  version    = "0.0.6"
  root_path  = "${path.module}"
  account_id = "${var.account_id}"
  region     = "${var.region}"
  landing_zone_components = "${var.landing_zone_components}"
}

नोट: सक्षम करना सुनिश्चित करें variables.tf और वह सब कुछ जिसकी आपको आवश्यकता हो सकती है outputs.tf.

इसे समझना आसान बनाने के लिए, हमने इसमें डिफ़ॉल्ट मान जोड़े हैं terraform.tfvars:

account_id = "123456789012"
region = "us-east-1"
landing_zone_components = {
  landing_zone_pipeline_s3_bucket = "s3://terraform-aws-landing-zone/mycompany/landing_zone_pipeline_s3_bucket/default.tfvars"
  [...]
}

इसका मतलब यह है कि इस मॉड्यूल का उपयोग करते समय terraform आपको इसकी आवश्यकता होगी:

  1. मूल्यों में बदलाव करें account_id и region आपके अपने, जो AWS संगठन के डेटा से मेल खाता है;
  2. मूल्यों में बदलाव करें landing_zone_components वे जो आपके AWS लैंडिंग ज़ोन उपयोग के मामले से मेल खाते हैं;
  3. संशोधन करना s3://terraform-aws-landing-zone/mycompany आपके ब्लॉक के लिए S3 और कुंजी उपसर्ग S3जहां आप फ़ाइलें संग्रहीत करेंगे .tfvars (या फ़ाइलों के लिए पूर्ण पथ .tfvars आपके स्थानीय भंडारण में)।

इस मॉड्यूल में दसियों, सैकड़ों या हजारों तैनाती योग्य घटक हो सकते हैं, लेकिन उनमें से सभी को तैनात नहीं किया जाना चाहिए या नहीं किया जाएगा। रनटाइम पर, वे घटक जो वेरिएबल मैप का हिस्सा नहीं हैं landing_zone_components नजरअंदाज कर दिया जाएगा.

निष्कर्ष

हम ग्राहकों को क्लाउड नेटिव ऑटोमेशन बनाने में मदद करने के अपने प्रयासों का फल साझा करते हुए रोमांचित और गौरवान्वित महसूस कर रहे हैं। एडब्ल्यूएस लैंडिंग जोन के लिए टेराफॉर्म मॉड्यूल एक और समाधान है जो संगठनों को एडब्ल्यूएस सर्वोत्तम प्रथाओं के आधार पर कई खातों के साथ एक सुरक्षित एडब्ल्यूएस वातावरण स्थापित करने में मदद करता है। हम अच्छी तरह से जानते हैं कि AWS बेहद तेज गति से बढ़ रहा है, और हम तेजी से एक टेराफॉर्म समाधान विकसित करने के लिए प्रतिबद्ध हैं जो सभी आधारों को कवर करता है और अन्य AWS उत्पादन समाधानों के साथ भी एकीकृत होता है।

बस इतना ही। हम आपकी टिप्पणियों की प्रतीक्षा कर रहे हैं और आपको आमंत्रित करते हैं मुफ्त वेबिनार जिसके भीतर हम आइए क्लाउड लैंडिंग ज़ोन डोमेन आर्किटेक्चर के डिज़ाइन का अध्ययन करें और मुख्य डोमेन के आर्किटेक्चरल पैटर्न पर विचार करें.

स्रोत: www.habr.com

एक टिप्पणी जोड़ें