उन्नत लोड संतुलन और अमेज़न वेब सेवाओं में क्लस्टरिंग

द्वारा प्रकाशित किया गया था Zevenet | 24 जुलाई, 2020

परिचय

निम्न लेख बताता है कि कैसे उच्च उपलब्धता के लिए ZEVENET लोड बैलेंसर के साथ उन्नत लोड संतुलन सेवाओं को स्थापित करना है अमेज़ॅन वेब सर्विसेज EC2 इन्फ्रास्ट्रक्चर। हम कॉन्फ़िगर करने के लिए प्रक्रिया का वर्णन करेंगे ZEVENET क्लस्टर और 3 वेब बैकएंड सर्वर के साथ लोड संतुलन HTTP सेवाओं के लिए एक टीसीपी लोड बैलेंस प्रोफाइल कॉन्फ़िगर करें।

AWS और ZEVENET इन्फ्रास्ट्रक्चर

निम्नलिखित आरेख उस वास्तुकला का वर्णन करता है जिसे हम AWS में ZEVENET एप्लिकेशन डिलीवरी नियंत्रक के साथ वेब लोड संतुलन को लागू करना चाहते हैं।

यह दो ZEVENET एप्लीकेशन डिलीवरी कंट्रोलर को तैनात करने के लिए आवश्यक है, यह टेम्पलेट Amazon Web Services मार्केटप्लेस में उपलब्ध है, और प्रत्येक ZEVENET एप्लीकेशन डिलीवरी कंट्रोलर को उसी VPC में वेब बैकएंड सर्वरों से कॉन्फ़िगर किया गया है, जैसा कि सबनेट के साथ ऊपर चित्र में दिखाया गया है। 17.32.16.0./20.

प्रत्येक ZEVENET ADC उदाहरण एक इंटरफ़ेस के साथ कॉन्फ़िगर किया गया है eth0, और प्रत्येक उदाहरण एक को सौंपा गया है लोचदार आईपी, यह भी एक अतिरिक्त लोचदार आईपी के माध्यम से एक अतिरिक्त आईपी को सौंपा गया है eth0 में ZLB1- ठेस उदाहरण जो लोड संतुलन के प्रयोजनों के लिए इस्तेमाल किया जाएगा, जैसा कि नीचे वर्णित है:

ZLB1- ठेस को सौंपा गया है 172.31.20.89 eth0 में, यह उदाहरण सीधे एक के बाद एक एक्सेस किया जाएगा इलास्टिक आईपी 34.225.30.206
ZLB2- ठेस को सौंपा गया है 172.31.26.237 eth0 में, यह उदाहरण सीधे एक के बाद एक एक्सेस किया जाएगा इलास्टिक आईपी 54.161.240.226

एक अतिरिक्त आईपी को सौंपा गया है ZLB1- ठेस और नाम के साथ लोड बैलेंसर में कॉन्फ़िगर किया गया है eth0: vip1 और आईपी 172.31.26.47, इस IP का उपयोग यहां एक लोड बैलेंसिंग सेवा को कॉन्फ़िगर करने और इसका हिस्सा बनने के लिए किया जाता है क्लस्टर सेवा, इसलिए यह आईपी एक समय में केवल ZEVENET उदाहरणों में से एक में काम करेगा, जो प्रबंधन करता है सक्रिय क्लस्टर में भूमिका। यह आंतरिक आईपी एक इलास्टिक आईपी को सौंपा गया है, जो ग्राहकों द्वारा प्रकाशित वास्तविक वेब सेवा से जुड़ने के लिए उपलब्ध है।

अंत में बैकएंड01, बैकएंड02 और बैकएंड03 लिनक्स आधारित वेब सर्वरों के साथ EC2 इंस्टेंसेस हैं, वे इंस्टेंस लोड-संतुलित सेवा का हिस्सा हैं जहां ग्राहक अपने अनुरोध के दौरान जुड़ता है http://54.144.190.17/ .

AWS मार्केटप्लेस में दो ZEVENET इंस्टेंसेस की तैनाती

दो ZEVENET लोड Balancers तैनात करें और उन्हें पहले बताए अनुसार कॉन्फ़िगर करें।

EC2 इंस्टेंसेस अनुभाग पर जाएं और अंदर दबाएं लॉन्च का उदाहरण.

1. आवश्यक ZEVENET लोड बैलेंसर एंटरप्राइज संस्करण AMI के लिए खोजें। यह AMI एक BYOL लाइसेंस में आधारित है नमूना। मूल्यांकन चरण नि: शुल्क है और एक महीने के दौरान सहायता शामिल है, इस अवधि के बाद काम करने के लिए एक निश्चित लाइसेंस की आवश्यकता होती है।

2. A चुनें उदाहरण प्रकार। बैलेंस लोड करने के लिए आवश्यक संसाधनों के आधार पर यहां दिए गए उदाहरण का चयन करें। अकेला t2.छोटा उदाहरण के साथ काम शुरू करने के लिए अच्छा है L4 प्रोफाइल, लेकिन अगर आप उपयोग करना चाहते हैं HTTP प्रोफाइल तो हम कम से कम एक की सिफारिश करेंगे t2.मध्यम उदाहरण। लेकिन, ए t2.micro उदाहरण परीक्षण उद्देश्यों के लिए पर्याप्त है।

3. कॉन्फ़िगर उदाहरण विवरण। यहां VPC का चयन करें जहां नए ZEVENET इंस्टेंस चलते हैं, इस कॉन्फ़िगरेशन उदाहरण में हम उसी VPC में ZEVENET EC2 इंस्टेंस को पहले से कॉन्फ़िगर किए गए वास्तविक वेब बैकएंड सर्वरों की तुलना में पेश करेंगे।

4. भंडारण जोड़ें। डिफ़ॉल्ट रूप से ZEVENET EC2 उदाहरण के लिए कम से कम 12 GB संग्रहण की आवश्यकता होती है, यदि आप डिफ़ॉल्ट रूप से लॉग सक्रिय करना चाहते हैं तो हम इस आकार को कम से कम 20Gb तक बढ़ाने की सलाह देंगे। ZEVENET को केवल लॉग बचाने के लिए डिस्क तक पहुंच की आवश्यकता नहीं है, इसलिए वॉल्यूम प्रकार सामान्य उद्देश्यों के लिए एक अच्छा विकल्प है।

5. टैग लगा दो। यदि वांछित है तो यहां कुछ विवरण टैग कॉन्फ़िगर करें।

6. कॉन्फ़िगर सुरक्षा समूह। ZEVENET डिफ़ॉल्ट रूप से HTTPS वेब GUI प्रबंधन उद्देश्यों के लिए TCP पोर्ट 444 और SSH में TCP पोर्ट 22 को कमांड-लाइन प्रबंधन और क्लस्टरिंग उद्देश्यों के लिए उपयोग करता है। इसके अलावा, प्रत्येक वर्चुअल पोर्ट लोड बैलेंसर में उपयोग की जाने वाली आभासी सेवाओं को आपके सुरक्षा समूह में शामिल करने की आवश्यकता होगी। हमने एक सुरक्षा समूह को कॉन्फ़िगर किया है जो निम्न के रूप में कम प्रतिबंधात्मक मोड में उन ZEVENET EC2 उदाहरणों के लिए उपयोग किया जाता है:

TYPE = All traffic
Protocol = ALL 
Port Range = All
Source = 0.0.0.0/0
Description = Allow all from all to all

यह सुरक्षा समूह परीक्षण उद्देश्यों के लिए बनाया गया है, आप सभी बंदरगाहों को अवरुद्ध करने और लोड संतुलन और प्रबंधन के लिए केवल उपयोग करने की अनुमति दे सकते हैं।

एक बार जब कॉन्फ़िगरेशन सहायक EC2 इंस्टेंस सूची में वापस आ जाता है, तो नया उपकरण तैनात किया जाना शुरू हो जाएगा और शुरुआत राज्य दिखाया जाएगा। फिर, फ़ील्ड में अब एक वर्णनात्मक नाम कॉन्फ़िगर करें नाम, हमारे मामले में, EC2 में हमारे तैनात लोड बैलेंसरों का नाम दिया गया है ZLB1- ठेस और ZLB2- ठेस.

ZEVENET EC2 उदाहरणों के लिए नेटवर्क को कॉन्फ़िगर करना

एक बार ZEVENET आभासी उपकरणों को तैनात किया गया है और उदाहरण राज्यों दिखा रहे हैं रनिंग मोड हम नेटवर्क को कॉन्फ़िगर करने के लिए आगे बढ़ सकते हैं।

दायें बटन पर क्लिक करें ZLB1- ठेस उपकरण और चुनें नेटवर्किंग> IP पते प्रबंधित करें, में IP पते प्रबंधित करें पॉप-अप विंडो प्रेस नया आईपी असाइन करें और बटन दबाएं हां, अपडेट करें, सिस्टम एक नया आईपी असाइन करेगा eth0 उसी VPC में। इस नए आईपी को याद रखें, हमारे उदाहरण में, यह नया आईपी होगा 172.31.26.47। सिस्टम ने एक नया आईपी सौंपा, जिसका उपयोग भविष्य की क्लस्टरिंग सेवा में लोड संतुलन के प्रयोजनों के लिए किया जाएगा।

सेक्शन में जाएं लोचदार आईपी और प्रत्येक ZEVENET उदाहरण के लिए एक नया असाइन करें लोचदार आईपी। उन का उपयोग प्रबंधन उद्देश्यों के लिए किया जाएगा, न कि लोड संतुलन के लिए।

उसी में लोचदार आईपी अनुभाग, एक नया IP असाइन करें ZLB1- ठेस, लेकिन इस मामले में, चुनें निजी आईपी पता 172.31.26.47। इस विन्यास के बाद ZLB1- ठेस आईपी ​​के साथ वेब और ssh के माध्यम से सुलभ होगा 34.225.30.206, परंतु ZLB2- ठेस आईपी ​​के साथ समान सेवाओं के माध्यम से सुलभ है 54.161.240.226 और इलास्टिक आईपी 54.144.190.17 आईपी ​​को सौंपा 172.31.26.47.

अस्थायी लाइसेंस के साथ ZEVENET EC2 उदाहरण सक्षम करना

एक बार जब लोचदार आईपी को कॉन्फ़िगर कर दिया गया है तो वर्चुअल लोड बैलेंसर निम्नानुसार सुलभ होंगे:

ZLB1- ठेस https://34.225.30.206:444 उपयोगकर्ता रूट और पासवर्ड के माध्यम से सुलभ होगी।
उपयोगकर्ता प्रशासन और निजी प्रमाण पत्र फ़ाइल के साथ ZLB1- ठेस आईपी 34.225.30.226 में ssh के माध्यम से सुलभ होगा, यह EC2 परिनियोजन समय पर कॉन्फ़िगर किया गया है।
ZLB2- ठेस https://54.161.240.226:444 उपयोगकर्ता रूट और पासवर्ड के माध्यम से सुलभ होगी।
उपयोगकर्ता प्रशासन और निजी प्रमाण पत्र फ़ाइल के साथ ZLB2- ठेस आईपी 54.161.240.226 में ssh के माध्यम से सुलभ होगा, यह EC2 परिनियोजन समय पर कॉन्फ़िगर किया गया है।

यदि आप जारी रखने से पहले होस्टनाम बदलने पर विचार करते हैं, यदि हां, तो परिवर्तनों को लागू करने के लिए कृपया EC2 उदाहरण को रीबूट करें।

वेब GUI की पहुँच सफलतापूर्वक हो जाने के बाद, आपको दो महत्वपूर्ण मान दिखाई देंगे, होस्टनाम और प्रमाणपत्र कुंजी, दोनों जानकारी लोड बैलेंसर के अनुसार विशिष्ट हैं और सक्रियण लाइसेंस से संबंधित हैं, इस जानकारी का उपयोग निम्न URL में वर्णित करें: https://www.zevenet.com/activate-enterprise-edition-cloud-evaluation/

एक बार फॉर्म भर जाने के बाद सिस्टम स्वचालित रूप से संकेतित ईमेल को लाइसेंस भेजता है। कृपया प्रत्येक लोड बैलेंसर में वेब GUI के माध्यम से प्राप्त PEM सक्रियण लाइसेंस अपलोड करें, ऐसा करने पर वेब GUI अनलॉक हो जाता है और सभी सुविधाएँ पूरी तरह से सक्षम और चालू हो जाती हैं।

ZLB1- ठेस और ZLB2- ठेस दोनों नोड्स में एक ही सक्रियण प्रक्रिया करें।

लोड संतुलन के लिए वर्चुअल आईपी कॉन्फ़िगर करना

पिछले बिंदु में, हमने पहले से ही eth0 को एक अतिरिक्त IP दिया है 172.31.26.47 उदाहरण में ZLB1-pro, और इस IP को एक लोचदार IP को सौंपा गया है 54.144.190.17, अब यह ZBL1- प्रो लोड बैलेंसर में इस कॉन्फ़िगरेशन को करने के लिए लंबित है।

वेब इंटरफेस के माध्यम से अपने इलास्टिक आईपी का उपयोग करके ZLB1- प्रो लोड बैलेंसर पर जाएं https://34.225.30.206:444एक बार लॉग इन करने के बाद कृपया नेविगेशन मेनू पर जाएं नेटवर्क> वर्चुअल इंटरफेस> वर्चुअल इंटरफ़ेस बनाएँ, और निम्न कॉन्फ़िगरेशन करें:

Parent Interface = eth0 172.31.26.47

* चूंकि EC2 के उदाहरणों में Elastic IP के बारे में कुछ भी नहीं पता है, इसलिए हमें यहाँ लोड संतुलन उद्देश्य के लिए उपयोग किए जाने वाले सार्वजनिक लोचदार IP से जुड़े EC2 उदाहरण के भौतिक IP को कॉन्फ़िगर करने की आवश्यकता है 54.144.190.17

Virtual Interface name = vip1
IP Address = 172.31.26.47

दबाएँ बनाएं विन्यास लागू करने के लिए बटन।

अब एक नया आई.पी. 172.31.26.47 नाम के साथ eth0: vip1 ZLB1- समर्थक EC2 ZEVENET लोड बैलेंसर में कॉन्फ़िगर किया गया है और इस VPC में किसी भी EC2 उदाहरण से पिंग किया जा सकता है।

अमेज़न वेब सेवाओं में ZEVENET क्लस्टर सेवा को कॉन्फ़िगर करना

ZEVENET लोड Balancer क्लस्टर में काम करता है स्टेटफुल एक्टिव-पैसिव मोड, इसका मतलब है कि क्लस्टर संसाधन दोनों नोड्स में कॉन्फ़िगर किए गए हैं लेकिन केवल में उपलब्ध हैं सक्रिय नोड। जब ऐसा नोड विफल हो जाता है और यह भूमिका अन्य सदस्य में शुरू होती है, तो क्लस्टर संसाधनों को फिर से एक्सेस करने की आवश्यकता होती है। चूंकि वर्चुअल आईपी क्लस्टर संसाधन भी हैं, इसलिए अमेज़ॅन वेब सर्विस को इस तरह से घोषित करने की आवश्यकता है कि वर्चुअल आईपी लोड संतुलन के लिए कॉन्फ़िगर किया गया है 172.31.26.47 अब ZLB2- ठेस के माध्यम से काम किया जाएगा।

इसके लिए, ZEVENET क्लस्टर सेवा AWS क्लाइंट का उपयोग करती है जिसे Interfaces के प्रबंधन के लिए EC2 मॉड्यूल में अनुमतियों के साथ कॉन्फ़िगर करने की आवश्यकता होती है, इसलिए ZEVENET क्लस्टर सेवा शुरू करने से पहले हमें इसे तैयार करने की आवश्यकता होती है। तो एक को कॉन्फ़िगर करने देता है AWS कुंजी आपके खाते में AWS कमांड-लाइन इंटरफ़ेस में उपयोग किए जाने के लिए EC2 में IP का प्रबंधन करने की अनुमति के साथ।

अमेज़न कंसोल पर जाएं https://console.aws.amazon.com/iam/ , फिर नेविगेशन मेनू पर चुनें उपयोगकर्ता। बटन पर क्लिक करें उपयोगकर्ता जोड़ें.

Configure a descriptive User name = aws-for-zlb

In AWS पहुंच प्रकार चुनें चुनें प्रोग्रामेटिक एक्सेस और बटन दबाएं अगला: अनुमतियाँ। अब में अनुमतियाँ सेट करें सेक्शन प्रेस में समूह बनाएँ और फिर क्षेत्र में नई विंडो भरें समूह का नाम उदाहरण के लिए, एक वर्णनात्मक नाम के साथ, AmazonEC2, और अंत में, क्षेत्र में फ़िल्टर नीतियों खोज और नामित नीति का चयन करें AmazonEC2फुल एक्सेस जो EC2 उदाहरणों के बीच दूसरों को निर्दिष्ट IP को बदलने की अनुमति देता है।

अन्दर की ओर दाबें अगला: टैग और अगला: समीक्षा करें। अंत में दबाएं उपयोगकर्ता बनाइयेअंतिम विंडो आपको दिखाएगी एक्सेस कुंजी आईडी और गुप्त पहुँच कुंजी इस उपयोगकर्ता के लिए, कृपया उन्हें भविष्य में उपयोग के लिए सहेजें।

अब हम ZEVENET क्लस्टर सेवा को कॉन्फ़िगर करने के लिए तैयार हैं, इसलिए असाइन किए गए सार्वजनिक IP https://1:34.225.30.206, अनुभाग के माध्यम से ZLB444-pro में वेब पैनल पर जाएं प्रणाली> क्लस्टर और उदाहरण के बाद फॉर्म भरें:

AWS क्रेडेंशियल: एक्सेस कुंजी और गुप्त कुंजी पिछली लाइनों में पहले से ही उत्पन्न मान हैं। क्षेत्र, यहां उस क्षेत्र का चयन करें जहां आपका ZEVENET एप्लिकेशन डिलीवरी नियंत्रक तैनात है।

क्लस्टर कॉन्फ़िगर करें:

स्थानीय आईपी: eth0 के आईपी और एनआईसी का चयन करें।
दूरदराज़ के आई. पी: नोड ZLB0-pro में eth2 का IP यहाँ दर्ज करें।
रिमोट नोड पासवर्ड और पासवर्ड की पुष्टि: ZLB2-pro की उदाहरण ID को डिफ़ॉल्ट रूप से, दूसरे नोड में ssh के लिए रूट पासवर्ड यहाँ दर्ज करें।

पर क्लिक करें उत्पन्न करें बटन और प्रतीक्षा करें कुछ सेकंड इस बीच नोड जहां आप कॉन्फ़िगरेशन चलाते हैं वह लेने जा रहा है सक्रिय भूमिका (ZLB1-pro) और दूसरी (ZLB2-pro) लेने जा रही है निष्क्रिय भूमिका.

इस बिंदु में, ZEVENET क्लस्टर AWS में कॉन्फ़िगर किया गया है और यह काम करने के लिए तैयार है, आइए हमारी पहली संकुलित-संतुलित सेवा को कॉन्फ़िगर करें।

वेब सेवाओं के लिए एक सरल L4 लोड संतुलन को कॉन्फ़िगर करना

LSLB> फार्म> फार्म बनाएँ निम्नलिखित मापदंडों के साथ।

इस बात का ध्यान रखें कि प्रयुक्त वर्चुअल आई.पी. 172.31.26.47 वर्चुअल IP पहले से कॉन्फ़िगर किया गया है और क्लस्टर का एक संसाधन है जो हमेशा से उपलब्ध होगा सक्रिय नोड। दबाएँ बनाएं और जारी रखने के लिए।

अब नई विंडो में कॉन्फ़िगर करें वैश्विक खंड के रूप में नीचे दिखाया गया है:

और अंत में, अनुभाग को कॉन्फ़िगर करें सेवाएँ के रूप में वर्णित:

उपयोग एक टाइमआउट के साथ आईपी दृढ़ता केवल 60 सेकंड में आपको यह गारंटी देने की आवश्यकता होती है कि एक ही क्लाइंट आईपी एक निश्चित बैकेंड के साथ एक निश्चित अवधि में जुड़ा होगा। के साथ उन्नत स्वास्थ्य जांच कॉन्फ़िगर करें FarmGuardian. उपयोग check_tcp एक साधारण स्वास्थ्य जांच के रूप में सत्यापित करें कि टीसीपी बैकेंड पोर्ट 80 प्रत्येक बैकएंड में खोला गया है। और फिर, बैकएंड सर्वर को आंतरिक आईपी और पोर्ट जोड़ें जहां वास्तविक वेब सेवाएं चल रही हैं।

अब कनेक्शन का परीक्षण करें लोचदार आईपी http://54.144.190.17/ assigned to the internal IP 172.31.26.47, the connection will pass through the load balancer using the eth0: vip1 और उपलब्ध बैकेंड में से एक को अग्रेषित किया गया।

अब एक बल बदलने के लिए सक्रिय क्लस्टर में भूमिका, उदाहरण के लिए, इस भूमिका के साथ नोड को रिबूट करें और कुछ सेकंड के बाद, दूसरा वर्चुअल सेवा लेगा और फिर से सार्वजनिक आईपी से कनेक्ट होगा। वर्तमान और नए क्लाइंट कनेक्शन एक ही बैकएंड के खिलाफ स्थापित किए जाएंगे लेकिन इस बार नए के माध्यम से सक्रिय बिना किसी क्लाइंट के व्यवधान के नोड।

ZEVENET के साथ एडब्ल्यूएस में उन्नत भार संतुलन और क्लस्टरिंग का आनंद लें!

पर साझा करें:

GNU फ्री डॉक्यूमेंटेशन लाइसेंस की शर्तों के तहत प्रलेखन।

क्या यह लेख सहायक था?

संबंधित आलेख