2011-12-02 6 views
6

मैं दो अनावश्यक टॉमकैट 6 सर्वर, में अपाचे सोलर वेब ऐप को अनावश्यकता और बेहतर उपलब्धता प्रदान करने के लिए तैनात कर रहा हूं। इस बिंदु पर, स्केलेबिलिटी कोई मुद्दा नहीं है।रिडंडेंसी के लिए दो सर्वरों के साथ सरल सोलर परिनियोजन

मेरे पास एक लोड बैलेंसर है जो गतिशील रूप से एक सर्वर या दूसरे या दोनों को यातायात को रूट कर सकता है।

मुझे पता है कि सोलर मास्टर/गुलाम कॉन्फ़िगरेशन का समर्थन करता है, लेकिन अगर दास मास्टर आउटेज (जो मेरे उपयोग मामले में होगा) के दौरान अपडेट प्राप्त करता है तो उसे मैन्युअल रिकवरी की आवश्यकता होती है।

मैं एक कोर को फिर से लोड करने की क्षमता का उपयोग कर एक सरल तरीका पर विचार कर रहा हूँ: - दो सर्वर का केवल एक ही किसी भी समय ("सक्रिय" उदाहरण) पर यातायात प्राप्त है, लेकिन दोनों चल रहे हैं, - दोनों मामलों एक ही इंडेक्स डेटा और साझा करें - आउटेज के कारण यातायात को फिर से रूट करने से पहले, अब सक्रिय उदाहरण को इंडेक्स कोर (0)

दोनों इंडेक्स पढ़ने और लिखने के साथ विफलता के सीमित परीक्षण को सफल करने के लिए कहा गया है। मुझे क्या प्रभाव/मुद्दे याद आ रही हैं?

आपके विचार और राय का स्वागत है।

+0

बस स्पष्ट करने के लिए, क्या एक ही हार्डवेयर सर्वर पर चल रहे टॉमकैट दोनों हैं? यदि नहीं, तो वे इंडेक्स डेटा कैसे साझा करते हैं? – nikhil500

+0

अच्छा सवाल: वे इंडेक्स डेटा के लिए NAS या अन्य डिवाइस साझा करते हैं। – kingolego

उत्तर

1

सरल दृष्टिकोण अपने विचार अतिरेक के लिए उचित लगता है, लेकिन आप/एक अलग भौतिक स्थान अपने NAS/सैन का उपयोग करने से आपदा वसूली के लिए इसका इस्तेमाल करने के लिए जब तक आप डेटा/सूचकांक साझा कर सकते हैं नहीं कर सकेंगे।

यहाँ कुछ सुझाव हैं: -

  1. आपदा वसूली के लिए बैकअप बनाने और परीक्षण उन बैकअप के रूप में काम एक सूचकांक क़यास के रूप में वहाँ कोई SOLR/Lucene में आंतरिक रूप से हो रहा चेकसम हैं दूषित हो गया है हो सकता है। एक सूचकांक मिटा दिया जा सकता है या कुछ रिकॉर्ड हटा दिए जा सकते हैं और इसे बिना जानते हुए विलय कर सकते हैं और बाद में उन रिकॉर्ड्स/डॉक्स को पुनर्प्राप्त करने के लिए बैकअप उपयोगी हो सकते हैं यदि आपको कोई जांच करने की आवश्यकता है।

  2. इससे पहले कि आप फिर से मार्ग यातायात दूसरे उदाहरण के लिए मैं कैश लोड करने के लिए कुछ प्रश्नों के चलाने के लिए और भी परीक्षण करने और इस बात की पुष्टि वर्तमान सूचकांक काम करता है करने के लिए इससे पहले कि यह ऑनलाइन हो जाता है।

  3. कटओवर की स्थिति में लेन-देन संबंधी अखंडता को सुनिश्चित करने के रूप में यह निरंतरता प्रबंधन करने के लिए के रूप में SOLR कुछ डेटाबेस की तरह अद्यतन सिंक्रनाइज़ करने के लिए एक वेक्टर घड़ी का उपयोग नहीं करता कठिन हो सकता है एक स्थान है और इस प्रक्रिया और धागे के लिए अद्यतन को अलग। अगर मैं एक छोटी सी विंडो को दोहराया जाना चाहिए तो मैं व्यक्तिगत रूप से किसी अन्य स्टोर में एसओएलआर से अलग-अलग क्रम में सभी अपडेट की प्रतिलिपि रखूंगा।

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

0

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

दोनों उदाहरण एक ही फाइल का उपयोग कर रहे हैं। अगर फाइल किसी कारण (हार्डवेयर गलती, सॉफ़्टवेयर बग) के लिए दूषित या अनुपलब्ध हो जाती है, तो दूसरा उदाहरण पहले जैसा ही असफल हो रहा है।

इसी तरह की नोट पर, फ़ाइलों को संग्रहीत और एक्सेस किया जाता है कि जब वे निष्क्रिय उदाहरण उन्हें पढ़ते हैं तो वे हमेशा वैध होते हैं? निष्क्रिय उदाहरण उन फ़ाइलों को पढ़ने का प्रयास करेगा जब सक्रिय उदाहरण उन्हें लिख रहा है? अगर ऐसा होता तो क्या होगा? यदि इंडेक्स फाइलों (पावर विफलता, नेटवर्क आउटेज, डिस्क पूर्ण) लिखते समय सक्रिय उदाहरण बाधित होता है, तो क्या होगा जब निष्क्रिय उदाहरण उन्हें लोड करने का प्रयास करता है? वही प्रश्न रिवर्स में लागू होते हैं यदि 'निष्क्रिय' उदाहरण फाइलों को लिखने जा रहा है (जो विशेष रूप से असंभव नहीं है अगर इसे इस उपयोग के साथ डिज़ाइन नहीं किया गया था; उदाहरण के लिए यह कुछ प्रकार के निष्क्रिय आंकड़े अपडेट कर सकता है) ।

इसके अलावा, इंडेक्स को फिर से लोड करना लगता है जैसे यह समय लेने वाला ऑपरेशन हो सकता है, और यह होने पर सेवा उपलब्ध नहीं होगी।

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

संबंधित मुद्दे