के बिना एचडीएफएस क्लस्टर को कैसे चलाएं मैं स्पार्क नौकरियों के विकास को कम करने और स्थानीय एकीकृत परीक्षण की सुविधा के लिए स्थानीय एचडीएफएस देव पर्यावरण (वास्तव में हैडोप + मेसोस + जेके + कफका) का निर्माण कर रहा हूं। अन्य सभी घटक ठीक काम कर रहे हैं लेकिन मुझे एचडीएफएस के साथ समस्याएं हैं। डाटा नोड नाम नोड के लिए कनेक्ट करने के लिए कोशिश करता है, मैं एक DisallowedDataNodeException
मिलती है:डीएनएस
org.apache.hadoop.hdfs.server.protocol.DisallowedDatanodeException: Datanode denied communication with namenode
अधिकांश एक ही मुद्दे से संबंधित सवालों के नाम नोड पर डेटा नोड के नाम समाधान करने के लिए नीचे उबाल या तो etc/hosts
फ़ाइलों के माध्यम से स्थिर या डीएनएस का उपयोग कर। स्टेटिक रिज़ॉल्यूशन डॉकर के साथ एक विकल्प नहीं है, क्योंकि जब डेटा नोड कंटेनर बनाया जाता है तो मुझे डेटा नोड्स नहीं पता है। मैं एक अतिरिक्त DNS सेवा बनाने और बनाए रखने से बचना चाहता हूं। आदर्श रूप से, मैं डॉकर की --link
सुविधा का उपयोग करके सब कुछ तार करना चाहता हूं।
क्या एचडीएफएस को इस तरह से कॉन्फ़िगर करने का कोई तरीका है कि यह केवल काम करने के लिए आईपी पते का उपयोग करता है?
मैं इस संपत्ति मिल गया और गलत पर सेट है, लेकिन यह चाल नहीं किया:
dfs.namenode.datanode.registration.ip-hostname-check
(डिफ़ॉल्ट: सच)
वहाँ एक बहु नोड स्थानीय HDFS क्लस्टर काम करने के लिए एक रास्ता है केवल आईपी पते का उपयोग कर और DNS का उपयोग किए बिना?