इस लेख में, मैं चर्चा करने जा रहा हूं कि क्लाउड फॉर्मेशन टेम्प्लेट का उपयोग करके AWS RDS पर MySQL इंस्टेंस कैसे सेट किया जाए। अपने पिछले लेख में, MySQL के लिए Amazon RDS वातावरण को कैसे कॉन्फ़िगर करें, मैंने Amazon पर MySQL इंस्टेंस कैसे सेट करें, इसका एक विस्तृत वॉकथ्रू प्रदान किया है। आप इंस्टेंस सेट करने के लिए आवश्यक सभी जानकारी प्रदान करने के लिए AWS कंसोल का उपयोग कर सकते हैं और फिर उसका उपयोग कर सकते हैं। हालांकि, इस लेख में, हम क्लाउड फॉर्मेशन टेम्प्लेट का उपयोग करके समान कार्यक्षमताओं को प्राप्त करने के एक स्वचालित तरीके पर चर्चा करेंगे।
CloudFormation टेम्प्लेट क्या है?
टेम्प्लेट लिखना शुरू करने के लिए, हमें सबसे पहले यह समझने की जरूरत है कि क्लाउड फॉर्मेशन क्या है। एडब्ल्यूएस क्लाउड फॉर्मेशन को क्लाउड सेवा के रूप में पेश करता है जो एडब्ल्यूएस ग्राहकों को कोड के रूप में किसी भी बुनियादी ढांचे की वांछित स्थिति लिखने में सक्षम बनाता है और फिर एडब्ल्यूएस में संसाधनों को तैनात करने के लिए इसका इस्तेमाल करता है। यह हमें सरल कॉन्फ़िगरेशन टेम्प्लेट का पालन करके संसाधन या संसाधनों का समूह बनाने की अनुमति देता है। उदाहरण के लिए, यदि आप ईसी2 इंस्टेंस पर एक वेब एप्लिकेशन को तैनात करना चाहते हैं जो आरडीएस डेटाबेस का भी उपयोग करेगा, तो आप बस दोनों संसाधनों को एक स्टैक में जोड़ सकते हैं और इंस्टेंस सेट करने के लिए कोड लिख सकते हैं। एक बार चलाने के बाद, यह EC2 और RDS इंस्टेंस दोनों बनाएगा और आपका वेब एप्लिकेशन भी परिनियोजित करेगा।
चित्र 1 - AWS कंसोल पर CloudFormation टेम्प्लेट
क्लाउड फॉर्मेशन टेम्प्लेट के घटक इस प्रकार हैं:
- एक JSON या YAML फ़ाइल जिसमें संसाधनों को एक टेम्पलेट के रूप में परिभाषित किया जाएगा
- एक स्टैक कई संसाधनों का एक संयोजन हो सकता है जिसे एप्लिकेशन के एक भाग के रूप में स्थापित करने की आवश्यकता होती है। उदाहरण के लिए, ईसी2 और आरडीएस
- स्टैक द्वारा किए जाने वाले कार्यों की सूची देखने के लिए एक चेंजसेट का उपयोग किया जा सकता है
- एक स्टैक सेट को स्टैक के एक प्रबंधित समूह के रूप में भी माना जा सकता है जिसे पुन:प्रस्तुत या दोहराया जा सकता है
उपरोक्त में से, हम मुख्य रूप से इस लेख में JSON/YAML टेम्प्लेट और स्टैक पर ध्यान केंद्रित करेंगे। टेम्प्लेट AWS पर संसाधनों की एक विस्तृत श्रृंखला का समर्थन करते हैं। विस्तृत सूची प्राप्त करने के लिए कृपया इस लिंक का अनुसरण करें।
JSON या YAML टेम्प्लेट फ़ाइल लिखना
पहली बार टेम्प्लेट लिखते समय हमारे सामने आने वाली मुख्य चुनौतियों में से एक यह है कि इसमें क्या सामग्री शामिल की जानी चाहिए। यह आसान बनाने के लिए कि AWS बहुत सारे टेम्पलेट नमूने प्रदान करता है जो आधिकारिक दस्तावेज़ीकरण पर आसानी से मिल सकते हैं। एक बार जब आपको एक आवश्यक संसाधन बनाने के लिए आवश्यक टेम्पलेट मिल जाए, तो आप इसका उपयोग अपना स्वयं का टेम्पलेट बनाने के लिए कर सकते हैं। टेम्प्लेट या तो JSON या YAML का उपयोग करके बनाया जा सकता है और एक से दूसरे में भी परिवर्तित किया जा सकता है। व्यक्तिगत रूप से, मैं YAML का उपयोग करके टेम्प्लेट लिखना पसंद करता हूं क्योंकि यह मुझे घुंघराले ब्रेसिज़ और कॉमा से दूर रखने में मदद करता है और दस्तावेज़ को साफ रखता है। हालांकि, आप JSON और YAML के बीच कोई भी विकल्प चुनने के लिए स्वतंत्र हैं।
इस अभ्यास के लिए, आइए आरडीएस पर एक MySQL इंस्टेंस को स्पिन करने का प्रयास करें और हम वाईएएमएल में कोड लिखेंगे। क्लाउड फॉर्मेशन का उपयोग करके एक MySQL डेटाबेस स्थापित करने के लिए, हमें निम्नलिखित मदों की आवश्यकता होगी।
- संसाधन का नाम - उस संसाधन का नाम जिसे आप सेट अप करने जा रहे हैं।
- संसाधन प्रकार - संसाधन का प्रकार।
- संसाधन गुण - डेटाबेस का नाम, उपयोगकर्ता नाम और पासवर्ड जिससे कनेक्ट किया जाना है।
- डेटाबेस इंजन - MySQL, SQL सर्वर, PostgreSQL, आदि।
- भंडारण प्रकार - उपयोग किया जाने वाला भंडारण प्रकार।
- सार्वजनिक पहुंच - मौसम डेटाबेस की सार्वजनिक पहुंच होनी चाहिए या नहीं।
- आवंटित मेमोरी - वह मेमोरी जिसे डेटाबेस इंस्टेंस को आवंटित किया जाना चाहिए।
- एडब्ल्यूएस क्षेत्र - वह क्षेत्र जिसमें इंस्टेंस बनाया जाना है।
अब जब हमारे पास कुछ बिंदु हैं, तो चलिए आगे बढ़ते हैं और टेम्प्लेट फ़ाइल लिखकर शुरू करते हैं।
https://gist.github.com/aveek22/a188b02abde65479bbba2deba5ec90d6
चित्र 2 - RDS पर MySQL इंस्टेंस बनाने के लिए टेम्प्लेट फ़ाइल
जैसा कि आप ऊपर की आकृति में देख सकते हैं, फ़ाइल की संरचना दो भागों में विभाजित है। पहले भाग में, हमने कुछ मापदंडों को परिभाषित किया है जिनका उपयोग संसाधन परिभाषाओं द्वारा दूसरे भाग में AWS पर संसाधन बनाते समय किया जाएगा। आप अपने AWS खाते पर एक उदाहरण बनाने के लिए अपनी मशीन पर उसी स्क्रिप्ट का उपयोग कर सकते हैं।
कंसोल पर स्टैक सेट करना
अब जब हमने MySQL के लिए अपना टेम्प्लेट बना लिया है, तो यह देखने का समय है कि क्या सब कुछ ठीक चलता है। एडब्ल्यूएस कंसोल पर जाएं और सर्च बार पर क्लाउड फॉर्मेशन खोजें। स्टैक बनाएं पर क्लिक करें और अपने स्थानीय से टेम्पलेट फ़ाइल अपलोड करें। क्लिक करें अगला एक बार किया।
चित्र 3 - टेम्पलेट से स्टैक बनाना
अगले पेज पर, आपको वे पैरामीटर प्रदान करने के लिए कहा जाएगा जो क्लाउड फॉर्मेशन टेम्प्लेट में परिभाषित किए गए थे। आगे बढ़ें और आवश्यक विवरण प्रदान करें और अगला . क्लिक करें ।
चित्र 4 - प्रदान किए गए स्टैक पैरामीटर
स्टैक परिवर्तन और पैरामीटर की समीक्षा करें और स्टैक बनाएं पर क्लिक करें अंतिम पृष्ठ पर। स्टैक निर्माण शुरू हो जाएगा। उपयोग के लिए उपलब्ध होने से पहले सभी संसाधनों को बनाने में कुछ समय लग सकता है। इस बीच, आप यह देखने के लिए पुनः लोड करें बटन पर क्लिक कर सकते हैं कि क्या सभी ईवेंट सफलतापूर्वक बनाए गए हैं।
चित्र 5 - स्टैक निर्माण प्रगति पर है
जैसा कि आप टाइमस्टैम्प पर देख सकते हैं, मुझे लगभग 6 मिनट लगे जिसके बाद संसाधन उपलब्ध थे और कंसोल पर भी दिखाई दे रहे थे। संसाधन . पर नेविगेट करें टैब पर क्लिक करें और भौतिक आईडी . पर क्लिक करें संसाधन का। यह आपको RDS कंसोल पर ले जाएगा।
चित्र 6 - स्टैक सफलतापूर्वक बनाया गया
MySQL डेटाबेस को कनेक्ट करना
एक बार जब आप आरडीएस कंसोल में होते हैं, तो आप डेटाबेस इंस्टेंस के लिए होस्टनाम प्राप्त कर सकते हैं और डेटाबेस से कनेक्ट करने के लिए इसका उपयोग कर सकते हैं। समापन बिंदु को पकड़ें कंसोल से और कनेक्ट करने के लिए इसका इस्तेमाल करें।
चित्र 7 - आरडीएस पर MySQL उदाहरण विवरण
आइए अब MySQL वर्कबेंच पर जाएं और पहले प्रदान किए गए क्रेडेंशियल्स के साथ होस्टनाम से कनेक्ट करने का प्रयास करें। उदाहरण से कनेक्ट करने के लिए होस्टनाम, उपयोगकर्ता नाम और पासवर्ड का उपयोग करें।
चित्र 8 - MySQL कार्यक्षेत्र का उपयोग करके MySQL उदाहरण से कनेक्ट करना
जैसा कि आप ऊपर दिए गए चित्र में देख सकते हैं, हमने RDS पर डेटाबेस इंस्टेंस से सफलतापूर्वक कनेक्ट किया है। आइए अब कुछ प्रश्नों को चलाते हैं और देखते हैं कि यह काम करता है या नहीं।
चित्र 9 - MySQL कार्यक्षेत्र में स्क्रिप्ट निष्पादित करना
जैसा कि आप ऊपर की आकृति में देख सकते हैं, हम डेटाबेस इंस्टेंस से कनेक्ट करने और क्वेरी निष्पादित करने में सक्षम हैं। इसके साथ, आप अपना खुद का क्लाउड फॉर्मेशन टेम्प्लेट लिखने और SQL सर्वर या पोस्टग्रेएसक्यूएल डेटाबेस जैसे किसी अन्य संसाधन को स्पिन करने में सक्षम हैं।
संसाधनों को हटाना
यदि आप इसे एक अभ्यास के रूप में कर रहे हैं, तो मैं आपके द्वारा बनाए गए संसाधनों को हटाने का सुझाव दूंगा क्योंकि इसमें कुछ शुल्क लगेंगे। आप आरडीएस कंसोल पर नेविगेट कर सकते हैं और फिर इंस्टेंस का चयन कर सकते हैं और हटाएं . पर क्लिक कर सकते हैं संसाधनों को स्थायी रूप से हटाने के लिए।
चित्र 10 - बनाए गए संसाधनों को हटाना
एक बार संसाधन सफलतापूर्वक हटा दिए जाने के बाद, आप एक बार फिर कंसोल में जांच सकते हैं कि क्या कोई उदाहरण चल रहे हैं ताकि अनावश्यक बिलिंग लागतों को जोड़ने से बचा जा सके।
निष्कर्ष
इस लेख में, हमने विस्तार से चर्चा की है कि AWS RDS वातावरण में MySQL डेटाबेस इंस्टेंस कैसे सेट करें और क्लाउड फॉर्मेशन टेम्प्लेट का उपयोग करके इसे स्वचालित करें। इस तरह यदि क्लाउड पर संसाधन स्थापित करना इन्फ्रास्ट्रक्चर-ए-कोड सेवा के रूप में भी जाना जाता है, जहां आप पूरे इंफ्रास्ट्रक्चर को कोड के रूप में सेट कर सकते हैं और फिर इसे विभिन्न वातावरणों में उपयोग कर सकते हैं। इन टेम्प्लेट का उपयोग न केवल डेटाबेस इंस्टेंस को तैनात करने के लिए किया जा सकता है, बल्कि AWS के भीतर अन्य बुनियादी ढांचे जैसे EC2, लैम्ब्डा, रेडशिफ्ट आदि के लिए भी किया जा सकता है। क्लाउड फॉर्मेशन टेम्प्लेट के बारे में अधिक जानने के लिए, आप आधिकारिक वेबसाइट पर उपलब्ध नमूना टेम्प्लेट देख सकते हैं।पी>