GlusterFS बिना किसी पथ के मस्तिष्क को विभाजित करता है, इसका क्या मतलब है?


11

मैं सिर्फ अपने चमकता हुआ संस्करणों की स्थिति की जाँच कर रहा था और मेरे पास विभाजित मस्तिष्क प्रविष्टियाँ हैं जिनका कोई रास्ता नहीं है:

# gluster volume heal private_uploads info
Brick server01:/var/lib/glusterfs/brick01/uploads/
<gfid:4c0edafb-0c28-427c-a162-e530280b3396> - Is in split-brain
<gfid:42d62418-1be9-4f96-96c4-268230316869> - Is in split-brain
Number of entries: 2

Brick server02:/var/lib/glusterfs/brick01/uploads/
<gfid:42d62418-1be9-4f96-96c4-268230316869> - Is in split-brain
<gfid:4c0edafb-0c28-427c-a162-e530280b3396> - Is in split-brain
Number of entries: 2

इसका क्या मतलब है? मैं इसे कैसे ठीक करूं?

मैं GlusterFS 3.5.9 चला रहा हूं:

# gluster --version
glusterfs 3.5.9 built on Mar 28 2016 07:10:17
Repository revision: git://git.gluster.com/glusterfs.git

क्या आप अपने क्लस्टर में केवल 2 सर्वर का उपयोग करते हैं?
अनाथ बच्चे

जवाबों:


8

स्प्लिट-ब्रेन क्या है?

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

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

विभाजित-मस्तिष्क प्रकार:

हमारे पास तीन अलग-अलग प्रकार के विभाजन-मस्तिष्क हैं, और जहाँ तक मैं देख सकता हूँ आपका प्रवेश विभाजित-मस्तिष्क है। विभाजित मस्तिष्क के तीन प्रकार समझाने के लिए:

  • डेटा स्प्लिट-ब्रेन: स्प्लिट-ब्रेन के तहत फाइल की सामग्री अलग-अलग प्रतिकृति जोड़े में भिन्न होती है और स्वचालित उपचार संभव नहीं है।

  • मेटाडेटा स्प्लिट-ब्रेन:, फ़ाइलों की मेटाडेटा (उदाहरण, उपयोगकर्ता परिभाषित विशेषता) अलग हैं और स्वचालित उपचार संभव नहीं है।

  • एंट्री स्प्लिट-ब्रेन: ऐसा तब होता है जब किसी फाइल में प्रत्येक प्रतिकृति जोड़ी पर अलग-अलग gfids होते हैं।


जीएफआईडी क्या है?

GlusterFS आंतरिक फ़ाइल पहचानकर्ता (GFID) एक यूआईडी है जो पूरे क्लस्टर में प्रत्येक फ़ाइल के लिए अद्वितीय है। यह एक सामान्य फाइलसिस्टम में इनोड संख्या के अनुरूप है। किसी फ़ाइल के GFID को उसके नाम के xattr में संग्रहीत किया जाता है trusted.gfid। GFID से रास्ता खोजने के लिए, मैं आपको अत्यधिक सलाह देता हूं कि आप GlusterFS द्वारा उपलब्ध कराए गए इस आधिकारिक लेख को पढ़ें ।


एंट्री स्प्लिट-ब्रेन को कैसे हल करें?

स्प्लिट-ब्रेन को होने से रोकने के लिए कई तरीके हैं लेकिन इसे हल करने के लिए, संबंधित gfid- लिंक फ़ाइलों को हटाया जाना चाहिए। Gfid- लिंक फाइलें ईंट के शीर्ष-स्तरीय निर्देशिका में .glusterfs निर्देशिका में मौजूद हैं। वैसे, सावधान रहें कि gfid-links को हटाने से पहले, आपको यह सुनिश्चित करना होगा कि उस ईंट में मौजूद फ़ाइलों के लिए कोई हार्ड लिंक नहीं हैं। यदि हार्ड-लिंक मौजूद हैं, तो आपको उन्हें हटाना होगा। फिर आप निम्न आदेशों को चलाकर स्व-उपचार प्रक्रिया का उपयोग कर सकते हैं।

इस बीच, एक विभाजित-मस्तिष्क स्थिति में मौजूद मात्रा पर फ़ाइलों की सूची देखने के लिए आप इसका उपयोग कर सकते हैं:

# gluster volume heal VOLNAME info split-brain

आपको यह भी ध्यान रखना चाहिए कि प्रतिरूपित वॉल्यूम के लिए, जब एक ईंट ऑफ़लाइन हो जाती है और ऑनलाइन वापस आती है, तो सभी प्रतिकृतियों को फिर से सिंक करने के लिए स्व-उपचार की आवश्यकता होती है।

आपके द्वारा उपयोग की जाने वाली वॉल्यूम और फ़ाइलों की उपचार स्थिति की जांच करने के लिए:

# gluster volume heal VOLNAME info

जब से आप संस्करण 3.5 का उपयोग कर रहे हैं, आपके पास ऑटो हीलिंग नहीं है। इसलिए पहले बताए गए चरणों को करने के बाद, आपको सेल्फ-हीलिंग को ट्रिगर करना होगा। ऐसा करने के लिए:

  • केवल उन फाइलों पर जिन्हें उपचार की आवश्यकता होती है:

    # gluster volume heal VOLNAME

  • सभी फाइलों पर:

    # gluster volume heal VOLNAME full

मुझे उम्मीद है कि यह आपकी समस्या को ठीक करने में आपकी सहायता करेगा। अधिक जानकारी के लिए कृपया आधिकारिक डॉक्स पढ़ें। चीयर्स।


2

मुझे लगता है कि दस्तावेज़ काफी स्पष्ट है, इसने आपको एक समान उदाहरण भी दिया।

और Gluesterfs के उपचार के लिए कमांड जैसे

चमक मात्रा चंगा ** VOLNAME ** विभाजित मस्तिष्क नवीनतम-माइम ** फ़ाइल **

फ़ाइल या तो पूर्ण फ़ाइल नाम हो सकता है जैसा कि वॉल्यूम के मूल (या) फ़ाइल के gfid- स्ट्रिंग प्रतिनिधित्व से देखा जाता है

तो आपको उस बारे में चिंता करने की ज़रूरत नहीं है।

और GFID को पथ में बदलने के लिए कहते हैं:

GlusterFS आंतरिक फ़ाइल पहचानकर्ता (GFID) एक यूआईडी है जो पूरे क्लस्टर में प्रत्येक फ़ाइल के लिए अद्वितीय है।

यह स्क्रिप्ट आपको बता सकती है कि किस फ़ाइलनाम का संबंध किस gfid से है, लेकिन मस्तिष्क का विभाजन हुआ, इसका कोई फ़ाइल नाम नहीं हो सकता है।

आप 3.5 रन कर रहे हैं और सेमी-ऑटो हील सीएमडी नहीं है, इसलिए आपको मैन्युअल रूप से अपने आप को भ्रम को ठीक करने की आवश्यकता हो सकती है जो सामान्य रूप से तय करती है कि कौन सी gfid फ़ाइल को हटाने की आवश्यकता है।


ग्लस्टर के मेरे संस्करण में वह कमांड नहीं है, अन्यथा, हां, यह सीधा है। इसके अलावा, मेरे पास फ़ाइल नाम नहीं है, मेरे पास uuids हैं।
पुतीनो

2

मैं इसे कैसे ठीक करूं?

स्प्लिट-ब्रेन रेजोल्यूशन या तो यहां पाया जा सकता है । मामले में ज्यादा मदद नहीं करेगा, मैनुअल को यहां कैसे काम करना चाहिए। मामले के लिए, मैं लेख भी उपयोगी देखता हूं ।

स्प्लिट-ब्रेन से कैसे बचें।

नेटवर्क विभाजन के खिलाफ संरक्षण एक कोरम वोटिंग एल्गोरिथ्म के माध्यम से किया जाता है। यदि कोई होस्ट विफल हो जाता है, या एक स्प्लिट-ब्रेन परिदृश्य होता है, जहां नोड्स चलते रहते हैं, लेकिन अब एक दूसरे से संवाद नहीं कर सकते हैं, शेष नोड या नोड्स साक्षी ड्राइव पर SCSI आरक्षण रखने के लिए क्लस्टर रेस में हैं। एक विभाजित-मस्तिष्क के मामले में, गवाह यह तय करने में मदद करेगा कि डेटा की एक प्रति रखने वाले मेजबान को कौन से नियंत्रण में रखना चाहिए।

कुछ उदाहरण।

VMware VSAN 3-होस्ट या क्लाउड में चल रहे साक्षी ड्राइव के साथ 2-नोड क्लस्टर चलाने की अनुमति देता है। स्रोत

StarWind Virtual SAN माइक्रोसॉफ्ट फेलओवर क्लस्टर सेवा का उपयोग करके सिर्फ 2-नोड सेटअप में चलता है, जिसमें विभाजन-मस्तिष्क मुद्दे से बचने के लिए कोरम वोटिंग तंत्र भी शामिल है। स्रोत

दोनों के लिए, हार्टबीट नेटवर्क का उपयोग नोड्स और कोरम के बीच संचार की सेवा / निगरानी के लिए किया जाता है। विभाजित-मस्तिष्क से बचने के लिए, मुझे लगता है कि निरर्थक हार्टबीट चैनलों के साथ जाना अनिवार्य है।


1

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

भ्रमित मन

इसे ठीक करने के लिए, आपको यह समझना होगा कि आपके दोनों नोड्स अब एक-दूसरे से बात क्यों नहीं कर रहे हैं।

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