विफलता के साथ सेटअप HAProxy कैसे करें?


14

मैं समझता हूं कि, एक HAProxy लोड बैलेंसिंग सेटअप पर फेलओवर प्राप्त करने के लिए, आपको HAproxy चलाने वाली दो मशीनों की आवश्यकता है (और इसे कई वेबसर्वर इंस्टेंस पर रूट करें)। लेकिन इस मामले में, abcd.com कहते हैं, हम इस ट्रैफ़िक को एक के बजाय 2 आईपी पते पर कैसे विभाजित / रूट करते हैं? DNS आमतौर पर एक आईपी के लिए डोमेन नाम का समाधान करता है। हम यह कैसे नि: शुल्क / सस्ते उपकरण / सेवाओं का उपयोग कर रहे हैं?


यह भी देखें serverfault.com/questions/238605/…
mixdev

जवाबों:


20

यदि आपके पास इतना लोड है कि आपको दो हाइप्रोक्स इंस्टेंस में बैलेंस लोड करने की आवश्यकता है तो DNS राउंड रॉबिन एक बुरा विचार नहीं है (मुझे आश्चर्य होगा कि यदि आपके पास यह लोड है)। DNS राउंड रॉबिन हालांकि अच्छी विफलता प्रदान नहीं करेगा।

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

HAProxy हमारे ट्रैफ़िक को संतुलित करने के लिए हमारे भौतिक सर्वर पर लगभग 1-5% CPU का उपयोग कर रहा है जिसमें एक सिंगल है Intel(R) Xeon(R) CPU E5504 @ 2.00GHz। तो HAProxy आम तौर पर यातायात का एक बहुत आसानी से संभाल कर सकते हैं।


1
नहीं, मेरे पास निश्चित रूप से एसओ तरह का ट्रैफ़िक नहीं है। यह केवल SPOF से बचने का एक प्रयास है।
मिश्रणदेव

2
@ मिक्सदेव: उस स्थिति में, गर्मी के लिए उपलब्ध कराए गए सिंगल वर्चुअल आईपी के लिए बस डीएनएस पॉइंट होना चाहिए और आपका जाना अच्छा होना चाहिए। आप बस दोनों मशीनों पर चलने वाली हाइप्रोक्सी को छोड़ दें। पाठ्यक्रम के लाइव होने से पहले दिल की धड़कन की विफलता का परीक्षण करना सुनिश्चित करें।
काइल ब्रान्ड

@KyleBrandt: क्या होगा अगर हाइपोक्सी प्रक्रिया मरने के लिए थी? क्या आपके पास कुछ भी कॉन्फ़िगर किया गया है जो वर्चुअल आईपी को उसके आधार पर स्थानांतरित करने की अनुमति देगा?
कार्पेक्टम

@CarpeNoctem: हमारे पास इस समय कवर नहीं है। मुझे लगता है कि दोनों के दिल की धड़कन और रखने की प्रक्रिया को देखने के लिए सेटअप किया जा सकता है, हालांकि। यदि आप इस मार्ग पर जाते हैं, तो मैं यह निर्धारित करने के लिए इसे निर्धारित करने की सिफारिश करूंगा कि यह प्रक्रिया अच्छी मात्रा में समय के लिए नीचे हो (यानी 1 मिनट)। आप शायद नहीं चाहते कि दिल की धड़कन एक विन्यास त्रुटि पर फ्लैपओवर करे। HAProxy इनमें से अधिकांश की जांच करता है -c, लेकिन यह बाध्यकारी कॉन्फ़िगरेशन की गलती जैसी चीजों को पकड़ नहीं सकता है।
काइल ब्रांड्ट

5
जो कोई भी परवाह करता है, स्टैक में, हम एक साल पहले अच्छी तरह से रखने के लिए चले गए
काइल ब्रांट

24

जैसा कि काइल कहते हैं, दिल की धड़कन का उपयोग दो हाइप्रोक्सी सर्वरों को विफल-जोड़ी के रूप में कार्य करने के लिए किया जा सकता है। हालाँकि, कई लोग नौकरी के लिए दिल की धड़कन का उपयोग करते हैं , रखने के लिए haproxy के लेखक द्वारा सुझाव दिया गया है।

वह हैप्रोक्सी मेलिंग सूची के विवरणों की रूपरेखा तैयार करता है: http://www.formilux.org/archives/haproxy/1003//3255.html

संक्षेप में यह इस प्रकार है:

  • दिल की धड़कन क्लस्टर उन्मुख है। यह सुनिश्चित करता है कि केवल एक सर्वर के पास संसाधन तक पहुंच हो (अर्थात सैन स्टोरेज)

  • Keepalived नेटवर्क उन्मुख है। यह सुनिश्चित करता है कि कम से कम एक सर्वर में आईपी प्रश्न है।


-1

आप पा सकते हैं कि आप यहाँ क्या देख रहे हैं: http://blog.haproxy.com/2014/01/17/emulating-activepassing-application-clustering-with-haproxy/


1
कृपया अपनी पोस्ट में रेसिपी की पूरी सामग्री शामिल करें। हम बिल्कुल ब्लॉग-लिंकिंग सेवा नहीं हैं।
हिरण हंटर

1
इसके अतिरिक्त ब्लॉग अक्सर नीचे जाते हैं या URL बदलते हैं और फिर जानकारी खो जाती है।
डेनिस नोल्टे

वोट डाउन करें क्योंकि यह प्रश्न से पूरी तरह असंबंधित है।
danieljimenez 16

@danieljimenez, पूरी तरह से असंबंधित मुझे नहीं लगता, बस एक गलतफहमी है। ओपी HAProxy के लिए सक्रिय / निष्क्रिय करने के लिए कहा ही और user3595100 एक HAProxy बैकएंड के लिए के रूप में सक्रिय / निष्क्रिय प्रश्न की व्याख्या की। बहरहाल, लिंक पोस्ट करना अपने आप में एक स्वीकार्य जवाब नहीं है।
duct_tape_coder 15
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.