2014-05-19 16 views
5

Hadoop OpenJDK सर्वर वी एम की चेतावनी: आपने पुस्तकालय लोड /usr/lib/hadoop/lib/native/libhadoop.so.1.0.0 जो विकलांग ढेर गार्ड हो सकता है। वीएम अब स्टैक गार्ड को ठीक करने का प्रयास करेगा। यह अत्यधिक अनुशंसा करता है कि आप 'execstack -c ' के साथ लाइब्रेरी को ठीक करें, या इसे '-z noexecstack' से लिंक करें।Hadoop स्थापना त्रुटि संदेश

मैं जब मैं hadoop-yarn-resourcemanger जिसकी वजह से hadoop संकुल के अन्य सभी प्रतिष्ठानों दिखा रहे हैं कि संकुल आपके सिस्टम पर टूट रहे हैं स्थापित करने के लिए कोशिश कर रहा था इस संदेश को हो रही है। इसे कैसे ठीक करें? धन्यवाद

+0

हैडूप का कौन सा संस्करण मदद करता है? – chrisinmtown

उत्तर

1

मैंने जावा 1.7.0_75 के साथ उबंटू 14.04 64 बिट चलाने वाले क्लस्टर पर हडोप 2.2 स्थापित करते समय एक ही त्रुटि को मारा। (कोई रास्ता नहीं है कि मैं 32 बिट तक डाउनग्रेड कर रहा हूं।) यहां मैंने देशी पुस्तकालय को संकलित कैसे किया है।

यह Hadoop 2.5 देशी पुस्तकालयों के लिए पेज उपयोगी है, यह आवश्यक mvn आदेश प्रदान करता है: http://hadoop.apache.org/docs/r2.5.0/hadoop-project-dist/hadoop-common/NativeLibraries.html#Build

  1. सुनिश्चित करें prereqs लिनक्स पर मिले हैं। आपको मेवेन संस्करण 3 का उपयोग करना होगा!

    apt-get install cmake autoconf automake libtool gcc zlib1g-dev pkg-config libssl-dev openssl maven 
    
  2. डाउनलोड https://archive.apache.org/dist/hadoop/core

  3. अनपैक से एक Hadoop स्रोत टारबॉल और सर्वेक्षण:

    tar xzpf hadoop-2.2.0-src.tar.gz 
    cd hadoop-2.2.0-src 
    
  4. देशी पुस्तकालय का निर्माण (नहीं सब कुछ):

    cd hadoop-common-project/hadoop-common 
    mvn package -Pdist,native -DskipTests=true -Dtar 
    
  5. कॉपी परिणामी .so फ़ाइल करने के लिए बाइनरी क्षेत्र

    cp target/hadoop-common-2.2.0/lib/native/libhadoop.so.1.0.0 /home/hadoop/hadoop-2.2.0/lib/native/ 
    
  6. टेस्ट एक डेमॉन शुरू करने से देखने के लिए अगर यह चेतावनी 'विकलांग ढेर गार्ड' (ऊपर देखें) अभी भी प्रकट होता है:

    /home/hadoop/hadoop-2.2.0/sbin/hadoop-daemon.sh start namenode n 
    

मैं Hadoop स्रोत संस्करण 2.2.0 पर इस परीक्षण किया और 2.5.2।

@ user2345523 @DivyangShah उम्मीद है कि यह

1

मुझे एक ही त्रुटि मिली और यह दर्दनाक नहीं है। आपको यह त्रुटि क्यों मिल रही है यह है कि लाइब्रेरी फ़ाइल /usr/lib/hadoop/lib/native/libhadoop.so.1.0.0 64 बिट अंतर्निहित आर्किटेक्चर के लिए नहीं है। इसलिए मुझे यकीन है कि आप अपनी स्थापना के लिए 64 बिट लिनक्स का उपयोग कर रहे हैं। ;)

दो चीजें हैं जो आप कर सकते हैं। सबसे पहले, अधिक सही दृष्टिकोण यह है कि आप पुस्तकालय का पुनर्निर्माण कर सकते हैं, लेकिन फिर यह लंबी प्रक्रिया है।

मैंने जो किया वह दूसरा और आसान तरीका था। मैंने 32-बिट उबंटू पर इसे फिर से स्थापित किया और यह मेरे लिए ठीक काम किया।

+0

मेरी लाइब्रेरी का पुनर्निर्माण कैसे करें? क्या आप चरणों के लिए मदद कर सकते हैं। –

संबंधित मुद्दे