मैं इस चमक की मात्रा क्यों नहीं बना सकता?


9

मैं अपना पहला ग्लोस 3.4 स्थापित कर रहा हूं और जब तक मैं एक वितरित प्रतिकृति मात्रा बनाना नहीं चाहता, तब तक सब अच्छा है।

मेरे पास 4 सर्वर 192.168.0.11, 192.168.0.12, 192.168.0.13 और 192.168.0.14 हैं।

192.168.0.11 से मैं भागा:

gluster peer probe 192.168.0.12
gluster peer probe 192.168.0.13
gluster peer probe 192.168.0.14

प्रत्येक सर्वर पर मेरे पास / निर्यात / ब्रिक 1 पर एक स्टोरेज स्टोरेज वॉल्यूम है

मैं फिर 192.168.0.11 को भागा

ग्लस्टर वॉल्यूम बनाएँ gv0 प्रतिकृति 2 192.168.0.11:/export/brick1 192.168.0.12:/export/brick1 192.168.0.13:/export/brick1 192.168.0.14:/export/brick1

लेकिन मुझे त्रुटि मिलती है:

volume create: gv0: failed: Host 192.168.0.11 is not in 'Peer in Cluster' state

यकीन है कि अगर आप चमक सहकर्मी की स्थिति को चलाते हैं तो यह अन्य जुड़े हुए मेजबानों के साथ 3 साथियों को दिखाता है। अर्थात साथियों की संख्या: 3

होस्टनाम: 192.168.0.12 पोर्ट: 24007 यूआईडी: bcea6044-f841-4465-88e4-f76a0c8d5198 स्टेट: पीयर इन कलस्टर (कनेक्टेड)

होस्टनाम: 192.168.0.13 पोर्ट: 24007 Uuid: 3b5c188e-9be8-4d0f-a7bd-b738a88f2199 स्टेट: पीयर इन कलस्टर (कनेक्टेड)

होस्टनाम: 192.168.0.14 पोर्ट: 24007 यूआईडी: f6f326eb-0181-4f99-8072-f27652dab064 स्टेट: पीयर इन कलस्टर (कनेक्टेड)

लेकिन, 192.168.0.12 से, वही कमांड 3 मेजबानों को भी दिखाता है और 192.168.0.11 इसका हिस्सा है। अर्थात

Number of Peers: 3

Hostname: 192.168.0.11
Port: 24007
Uuid: 09a3bacb-558d-4257-8a85-ca8b56e219f2
State: Peer in Cluster (Connected)

Hostname: 192.168.0.13
Uuid: 3b5c188e-9be8-4d0f-a7bd-b738a88f2199
State: Peer in Cluster (Connected)

Hostname: 192.168.0.14
Uuid: f6f326eb-0181-4f99-8072-f27652dab064
State: Peer in Cluster (Connected)

तो 192.168.0.11 निश्चित रूप से क्लस्टर का हिस्सा है।

सवाल यह है कि, मैं ग्लस्टर कमांड चलाते समय पहले ग्लस्टर सर्वर पर वॉल्यूम क्यों नहीं बना पा रहा हूं। क्या यह सामान्य व्यवहार या किसी प्रकार की बग है?

जवाबों:


15

मैं सहकर्मी 127.0.0.1 के साथ एक असंबद्ध सॉकेट के बारे में एक अस्पष्ट त्रुटि संदेश देख रहा था।

[२०१३-०5-१६ ००: ३६: ५६.75६५-08५५] डब्ल्यू [सॉकेट। ः १४ ९ ४: __ सॉकेट_प्रोटो_स्टैटे_मैचाइन] ० -सोकेट।मान: सॉकेट से पढ़ना विफल। त्रुटि (परिवहन समापन बिंदु जुड़ा नहीं है), सहकर्मी (127.0.0.1:1022)

यह उस समस्या का पता लगाता है जो मैं NAT के कारण कर रहा था। मैं एक नेट डिवाइस के पीछे चमकने वाले सर्वर बनाने की कोशिश कर रहा था और नामों को हल करने के लिए सार्वजनिक आईपी का उपयोग कर रहा था। यह सिर्फ स्थानीय मशीन के लिए ठीक से काम नहीं करने वाला है।

मेरे पास प्रत्येक नोड पर निम्नलिखित जैसा कुछ था।

एक मेजबान फ़ाइल युक्त

192.168.0.11  gluster1
192.168.0.12  gluster2
192.168.0.13  gluster3
192.168.0.14  gluster4

पहले विश्वसनीय साथियों को हटाने के लिए फिक्स था

sudo gluster peer detach gluster2
sudo gluster peer detach gluster3
sudo gluster peer detach gluster4

फिर प्रत्येक मशीन पर होस्ट फ़ाइल को बदलें

# Gluster1
127.0.0.1     gluster1
192.168.0.12  gluster2
192.168.0.13  gluster3
192.168.0.14  gluster4


# Gluster2
192.168.0.11  gluster1
127.0.0.1     gluster2
192.168.0.13  gluster3
192.168.0.14  gluster4

आदि

फिर सहकर्मी जांच करें, और अंत में वॉल्यूम बनाएं जो तब सफल था।

मुझे संदेह है कि आईपी पते (सार्वजनिक वाले) का उपयोग इस मामले में काम करेगा। यदि आप अपने NAT के पीछे निजी पतों का उपयोग करते हैं तो यह काम करना चाहिए। मेरे मामले में, प्रत्येक सर्वर AWS क्लाउड में NAT के पीछे था।


1
मेरे मामले में मैं 127.0.0.1 को छूने के लिए, आंतरिक IP पता के साथ काम कर रहा था पर्याप्त नहीं था
अरोद

1

इस प्रारूप का उपयोग करते हुए प्रतिकृति संख्या को चार नोड्स के रूप में स्पष्ट रूप से परिभाषित करने का प्रयास करें: -

gluster volume create NEW-VOLNAME [stripe COUNT] [replica COUNT] [transport <tcp | rdma>] NEW-BRICK ...

मैं इस शुद्ध प्रतिकृति और कोई धारी नहीं?

192.168.0.11 से यह कोशिश करें: -

पहले सब कुछ अलग करें:

sudo gluster peer detach 192.168.0.12
sudo gluster peer detach 192.168.0.13
sudo gluster peer detach 192.168.0.14

अगले इस प्रारूप में फिर से जोड़ें

gluster volume create gv0 replica 4 transport tcp 192.168.0.11:/export/brick1 192.168.0.12:/export/brick1 192.168.0.13:/export/brick1 192.168.0.14:/export/brick1

नोट मैंने स्पष्ट रूप से इसे चार नोड प्रतिकृति सेट के रूप में परिभाषित किया है। मैं भी स्पष्ट रूप से tcp पर परिवहन को परिभाषित करता हूं ।

आप एक प्रतिकृति सेट में दो उपकरणों के पार करना चाहते हैं तो आप इस तरह से कुछ का उपयोग करेगा: -

gluster volume create gv0 stripe 2 replica 2 transport tcp 192.168.0.11:/export/brick1 192.168.0.12:/export/brick1 192.168.0.13:/export/brick1 192.168.0.14:/export/brick1

इसके साथ रखें, मुझे हाल ही में चमक का पता चला है और मैं वितरित फाइल सिस्टम के लिए इस विचारधारा के साथ प्यार करता हूं .. कला का एक वास्तविक टुकड़ा।

मैं केवीएम आभासी डेटास्टोर्स को HA अतिरेक प्रदान करने के लिए चमक का उपयोग करता हूं। जादू का सामान


दुर्भाग्य से मुझे ठीक वैसी ही त्रुटि मिलती है। इसके अलावा, जब एक प्रतिकृति गणना को निर्दिष्ट नहीं किया जाता है और सभी संस्करणों के साथ वर्तमान में अलग हो जाता है तो मुझे वही त्रुटि मिलती है। 192.168.0.11 ईंट को हटा दें तो यह दावा करता है कि 192.168.0.12 होस्ट क्लस्टर स्थिति में सहकर्मी में नहीं है, इसलिए आपको पहले उनकी जांच करने की आवश्यकता है। कम से कम यह 3.4 संस्करण में मामला है
मैट

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

वास्तव में मैं एक ईंट पर सामान्य वितरित मात्रा भी नहीं बना सकता। मुझे बस एक त्रुटि मिलती है जो कहती है कि यह नहीं बनाया जा सकता है। लॉग में फल रहित जानकारी होती है। यह मुझे पूरी तरह से बाहर फेंकने जैसा महसूस कराता है।
मैट

मेरे पास 5 सप्ताह पहले एक समान मुद्दा था, v3.3 में जाने से मेरी समस्या हल हो गई। इस स्तर पर एकमात्र अन्य सुझाव 3.3 पर एक भूमिका पर विचार करना और पुन: परीक्षण करना होगा।
एंग्रीबोम्बैट

भी शायद सिर्फ दो नोड्स के साथ शुरू और वहाँ से काम ... क्या distro उपयोग कर रहे हैं? मैं इस रेपो के साथ 12.04 पर मेरा दौड़ रहा था: - sudo add-apt-repository ppa: semiosis / ubuntu-glusterfs-3.3
AngryWombat
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.