जब डेटास्टैश डेटा लिखने का प्रयास करता है, तो एलीटेसर्च की मृत्यु हो जाती है


9

मुझे एक रास्पबेरी पाई 2 (अप्रैल 2015 के रूप में नवीनतम रास्पबियन) सेटअप मिला है, जो पिछले सप्ताह एक टेस्ट नेटवर्क पर ElasticSearch और Logstash दोनों चला रहा था (एक सीधा सेटअप नहीं, लेकिन यह एक सप्ताह से अधिक के लिए स्थिर था!)। मैंने आज अपनी मशीन को रिबूट किया और चीजों को फिर से चलाने में बहुत मुश्किल समय हो रहा है; ईएस और एलएस दोनों स्वतंत्र रूप से चलेंगे, लेकिन जब मैं ईएस में ईएस उदाहरण में एलएस आउटपुट को पुश करने की कोशिश करता हूं तो स्पष्टीकरण के बिना मर जाता है। मेरा लक्ष्य मानक आउटपुट प्लगइन के माध्यम से ES में चल रहे और LS पम्पिंग डेटा दोनों को प्राप्त करना है।

इलास्टिक खोज [v1.5.0]

मेरा मानना ​​है कि यह वह जगह है जहां मूल समस्या है। ES के माध्यम से शुरू हो सकता है service elasticsearch startऔर चल रहा है, 9200 पोर्ट करने के लिए HTTP अनुरोधों के माध्यम से सुलभ है, और जीवन के सभी लक्षण स्वस्थ लगते हैं। जैसे ही कुछ (कुछ भी, जहां तक ​​मैं बता सकता हूं) एक इंडेक्स को डेटा लिखने की कोशिश करता है , प्रक्रिया मर जाती है और डिबग लॉग @ / var / log / elasticsearch / * सेवा विफलता से संबंधित कुछ भी शामिल नहीं करता है। मैंने लॉगस्टैश (नीचे देखें) के साथ-साथ कर्ल के साथ डालने की कोशिश की है, जो दोनों ईएस प्रक्रिया को समाप्त करते हैं। जो कर्ल कमांड मैं चला रहा हूं वह है curl -XPOST "http://localhost:9200/logstash-2015.04.05/records/" -d "{ \"type\" : \"specialRecord\" }"

लॉगस्टैश [v1.4.2]

मैं वर्तमान में इस सरल कॉन्फ़िगरेशन के साथ चल रहा हूं:

input {
    stdin { }
}

output {
        stdout { codec => rubydebug }
        elasticsearch {
                host => '127.0.0.1'
                cluster => 'elasticsearch'
        }
}

अन्य नोट

कुछ चीजें जो मैंने कोशिश की हैं:

  • मैंने DEBUG / TRACE के लिए ElasticSearch के लिए लॉगिंग स्तरों को क्रैक करने की कोशिश की है और आउटपुट उल्लेखनीय रूप से निर्बाध है। यह उपयोगी होगा अगर लॉग प्रदान करने के लिए खुश।

  • मैंने ES 256MB और 512MB ढेर स्थान देने की कोशिश की है, जो कुछ भी प्रभावित नहीं करता है। मैंने इस सब के दौरान मेमोरी उपयोग को भी देखा है और मेमोरी से बाहर चलने से समस्या नहीं होती है।

  • मैंने मल्टीकास्ट को अक्षम करने की कोशिश की है ताकि नेटवर्किंग चर का एक गुच्छा तैयार किया जा सके लेकिन इससे कोई फर्क नहीं पड़ता।

  • मैंने यह सुनिश्चित किया है कि ES के लिए डेटा निर्देशिका में बहुत जगह है, अनुमतियाँ लिखें, आदि ES path.dataलोड होने पर निर्देशिका में उपनिर्देशिका बनाता है, लेकिन मुझे विश्वास नहीं है कि जब से ES आँकड़े अनुक्रमणिका का सुझाव देते हैं, तब से मैं कुछ भी नहीं जोड़ता हूं। दस्तावेजों का कुल # शून्य है।

मैं अब बहुत निराश हूं और निराश हूं कि मुझे कुछ भी नहीं चाहिए (या कम से कम मुझे खोजने में सक्षम है) लॉग इन किया जा रहा है। यहाँ क्या हो रहा है पर कोई विचार?


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

बिना किसी लॉग के दुर्घटनाग्रस्त होना मुझे जेएनआई की समस्याओं की याद दिलाता है, क्या जेवीएम प्रक्रिया डंप ( hs_err_PID.log) नहीं है? ES 1.5 निगरानी के लिए सिगार नामक एक देशी पुस्तकालय का उपयोग करता है, इसे रास्पबेरी के एआरएम के साथ समस्या हो सकती है। क्या आप सिगर को खुद से चलाने की कोशिश कर सकते हैं? मैं ES 1.5.2 या ES 2.0 में अपग्रेड करने की कोशिश करूंगा जो अब सिगार का उपयोग नहीं करता है।
जी क्विंटाना

क्या आपने अदला-बदली बंद कर दी है?
Rumbles

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

जवाबों:


1

आपको अधिक हार्डवेयर चाहिए

आपकी रास्पि आपके कार्यभार के लिए संचालित के तहत (काफी) हो सकती है।

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

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.