2013-02-22 48 views
12

मास्टर नोड गेटवे और लोचदार खोज में अन्य नोड गेटवे के बीच क्या अलग है? उनमें से दोनों मेटा डेटा स्टोर करते हैं, है ना? मेटा डेटा, लोचदार खोज कहा जाता है, हम इससे क्या जानकारी प्राप्त कर सकते हैं?लोचदार खोज में मास्टर नोड गेटवे और अन्य नोड गेटवे के बीच क्या अंतर है? उनमें से दोनों मेटा डेटा स्टोर करते हैं, है ना?

उत्तर

37

मास्टर नोड क्लस्टर में किसी अन्य नोड के समान है, सिवाय इसके कि इसे मास्टर बनने के लिए चुना गया है।

यह किसी भी क्लस्टर-व्यापी परिवर्तनों को समन्वयित करने के लिए ज़िम्मेदार है, जैसे इंडेक्स के नोड, सृजन, हटाने या राज्य के परिवर्तन (यानी खुले/बंद) को बदलने, और नोड्स के लिए शार का आवंटन। जब इनमें से कोई भी परिवर्तन होता है, तो "क्लस्टर स्टेट" मास्टर द्वारा अपडेट किया जाता है और क्लस्टर में अन्य सभी नोड्स पर प्रकाशित होता है। यह एकमात्र नोड है जो एक नया क्लस्टर राज्य प्रकाशित कर सकता है।

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

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

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

उदाहरण के लिए, यदि आपके पास 3 नोड्स हैं, जिनमें से सभी मास्टर योग्य हैं, और minimum_master_nodes से 1 सेट करें, तो यदि तीसरा नोड दूसरे दो से अलग हो जाता है, तो यह अभी भी एक मास्टर-योग्य नोड (स्वयं) और सोचता है कि यह स्वयं ही क्लस्टर बना सकता है।

इसके बजाय, इस मामले में minimum_master_nodes से 2 सेट करें (नोड्स/2 + 1 की संख्या), फिर यदि तीसरा नोड अलग हो जाता है, तो उसे पर्याप्त मास्टर नोड्स नहीं दिखाई देंगे, और इस प्रकार स्वयं क्लस्टर नहीं बनेंगे। यह मूल क्लस्टर में शामिल होने की कोशिश कर रहा है।

जबकि Elasticsearch सही डिफ़ॉल्ट चुनने के लिए बहुत मेहनत करता है, minimum_master_nodes अनुमान लगाना असंभव है, क्योंकि इसका कोई तरीका नहीं है कि आप कितने नोड्स को चलाने का इरादा रखते हैं। यह कुछ है जो आपको स्वयं को कॉन्फ़िगर करना होगा।

+0

ग्रेट स्पष्टीकरण क्लिंटन! – javanna

+0

आपके अद्भुत जवाब के लिए धन्यवाद। क्लस्टर मेटाडाटा में क्लस्टर सैट जैसे कुछ मैपिंग प्रकार, शोर्ट आवंटन, सही है? नोड मेटाडाटा में क्या है? क्या इसमें सूचकांक की कुछ जानकारी है? – Hoony

+0

हां यह करता है। आप अपने क्लस्टर में किसी नोड के खिलाफ यह अनुरोध चलाकर, वास्तव में क्या देख सकते हैं: curl -XGET 'http://127.0.0.1:9200/_cluster/state?pretty=1' – DrTech