HAProxy को रिवर्स प्रॉक्सी के रूप में कैसे कॉन्फ़िगर करें

Haproxy Ko Rivarsa Proksi Ke Rupa Mem Kaise Konfigara Karem



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

रिवर्स प्रॉक्सी का उपयोग क्यों करें?

HAProxy को रिवर्स प्रॉक्सी के रूप में कॉन्फ़िगर करने के चरणों पर चर्चा करने से पहले, आइए जल्दी से इस बात पर प्रकाश डालें कि रिवर्स प्रॉक्सी आपके लाभ के लिए क्यों काम करती है। रिवर्स प्रॉक्सी के रूप में HAProxy का उपयोग करने पर आपको निम्नलिखित लाभ मिलते हैं:

  1. भार का संतुलन - आपके वेब सर्वर पर, एक बिंदु पर, कई क्लाइंट अनुरोधों का मामला हो सकता है, जिसे यदि अच्छी तरह से प्रबंधित नहीं किया जाता है, तो यह ओवरलोड हो सकता है जो अप्रत्याशित डाउनटाइम का कारण बनता है। हालाँकि, रिवर्स प्रॉक्सी को कॉन्फ़िगर करने से यह सुनिश्चित होता है कि ट्रैफ़िक बैकएंड सर्वर पर वितरित हो ताकि कोई भी सर्वर अनुरोधों से अतिभारित न हो जाए।
  2. फ़ायरवॉल और सुरक्षा - रिवर्स प्रॉक्सी क्लाइंट डिवाइस को वेब सर्वर से जोड़ता है। ऐसा करने से हमारे बैकएंड सर्वर को सीधे इंटरनेट के संपर्क में आने का जोखिम कम हो जाता है। इस तरह, सर्वर को नुकसान पहुंचाने से पहले दुर्भावनापूर्ण ट्रैफ़िक को आसानी से फ़िल्टर और ब्लॉक किया जा सकता है।
  3. बेहतर कैशिंग - रिवर्स प्रॉक्सी के साथ, आप समग्र प्रदर्शन में सुधार देखेंगे क्योंकि स्थिर सामग्री को कैश करने से लोड समय कम हो जाएगा। इसके अलावा, आप एक बेहतर उपयोगकर्ता अनुभव प्राप्त करेंगे।
  4. एसएसएल/टीएलएस समाप्ति - रिवर्स प्रॉक्सी के साथ, एसएसएल/टीएलएस कनेक्शन को एन्क्रिप्ट और डिक्रिप्ट करना निर्बाध हो जाता है, और आपके बैकएंड सर्वर को यह कार्य नहीं करना पड़ेगा, जिससे उनका लोड कम हो जाएगा।

HAProxy को रिवर्स प्रॉक्सी के रूप में कैसे कॉन्फ़िगर करें

यह समझाने के बाद कि HAProxy जैसी रिवर्स प्रॉक्सी क्यों आवश्यक है, आइए पालन करने के लिए कॉन्फ़िगरेशन चरण दें।







चरण 1: HAProxy स्थापित करें



संभवतः आपके सिस्टम पर पहले से ही HAProxy स्थापित है। यदि हां, तो इस चरण को छोड़ दें. हालाँकि, इसमें नए लोगों के लिए, HAProxy स्थापित करने के लिए निम्नलिखित कमांड चलाएँ:



$ sudo apt इंस्टॉल हैप्रोक्सी

हमने इसे अपने मामले में पहले ही स्थापित कर लिया है।





चरण 2: HAProxy कॉन्फ़िगरेशन फ़ाइल संपादित करें



HAProxy में एक कॉन्फ़िगरेशन फ़ाइल है जिसे आपको अपने रिवर्स प्रॉक्सी के रूप में कॉन्फ़िगर करने के लिए एक्सेस और संपादित करना होगा। टेक्स्ट एडिटर का उपयोग करके कॉन्फ़िग फ़ाइल खोलकर प्रारंभ करें।

$ सुडो नैनो /etc/haproxy/haproxy.cfg

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

इस उदाहरण के लिए, हम पोर्ट 80 और 81 से क्लाइंट अनुरोधों को स्वीकार करने के लिए फ्रंटएंड को कॉन्फ़िगर करते हैं। फिर हम ट्रैफ़िक को वितरित करने के लिए एक नियम बनाते हैं जैसे कि पोर्ट 80 से कनेक्शन एक विशिष्ट सर्वर पर रूट किए जाते हैं जबकि पोर्ट 81 से कनेक्शन एक अलग सर्वर पर जाते हैं। सर्वर. हमारा फ्रंटएंड अनुभाग निम्नलिखित में दिखाया गया है:

चूंकि हमने दो बैकएंड सर्वर, बैकएंड2 और लिनक्स_बैकएंड बनाए हैं, इसलिए हमें दोनों सर्वरों के लिए बैकएंड सेक्शन बनाना होगा। हम निर्दिष्ट करते हैं कि हमारे 'सर्वर1' और 'सर्वर2' में से प्रत्येक के लिए ट्रैफ़िक को किस आईपी से वितरित किया जाए।

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

चरण 3: वैधता सत्यापित करें

HAProxy के साथ, एक कमांड है जो आपको यह सत्यापित करने देती है कि आपकी कॉन्फ़िगरेशन फ़ाइल वैध है या नहीं। निम्नलिखित कमांड चलाएँ और देखें कि आपको क्या आउटपुट मिलता है:

$ sudo haproxy -c -f /etc/haproxy/haproxy.cfg

यदि आपको समान आउटपुट मिलता है, तो यह पुष्टि करता है कि आपकी कॉन्फ़िगरेशन फ़ाइल वैध है। अन्यथा, यह त्रुटियाँ उत्पन्न करेगा.

चरण 4: रिवर्स प्रॉक्सी का परीक्षण करें

'कर्ल' जैसे कमांड का उपयोग करके, आप अपने वेब सर्वर पर ट्रैफ़िक भेज सकते हैं और देख सकते हैं कि यह कैसे प्रतिक्रिया देता है। हमारे मामले में, हम वेब सर्वर बनाने के लिए Python3 का उपयोग करते हैं।

'कर्ल' कमांड चलाने से पुष्टि होती है कि हमारा वेब सर्वर निर्दिष्ट पोर्ट को सुन रहा है और HAProxy ने हमारी कॉन्फ़िगरेशन फ़ाइल के आधार पर निर्दिष्ट सर्वर पर ट्रैफ़िक वितरित किया है।

आप अपने वेब सर्वर को ब्राउज़र पर भी एक्सेस कर सकते हैं और पुष्टि कर सकते हैं कि रिवर्स प्रॉक्सी काम करता है।

चूँकि हमारे पास दो वेब सर्वर हैं जिनका उपयोग क्लाइंट डिवाइस द्वारा उपयोग किए जाने वाले पोर्ट के आधार पर किया जा सकता है, आइए एक अलग वेब सर्वर को एक अलग पोर्ट से बांधें और देखें कि क्या होता है।

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

HAProxy को रिवर्स प्रॉक्सी के रूप में कॉन्फ़िगर करने का तरीका इस प्रकार है।

निष्कर्ष

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