2012-02-03 16 views
8

हमारे पास क्लौडेरा प्रबंधक का उपयोग करके कॉन्फ़िगर किया गया CDH3u2 का उपयोग करके 8 नोड क्लस्टर है। हमारे पास एक समर्पित मास्टर नोड है जो ज़ूकीपर का हमारा एकमात्र उदाहरण चला रहा है। जब मैं मास्टर नोड से निष्पादित स्थानीय हैडूप चलाने के लिए हाइव कॉन्फ़िगर करता हूं, तो मुझे एचबीज़ से डेटा को पुनः प्राप्त करने में कोई समस्या नहीं है। जब मैं वितरित नक्शा चलाता/हाइव के माध्यम से कम करता हूं, तो दास नोड्स ज़ूकीपर से कनेक्ट होने पर मुझे निम्न त्रुटि मिल रही है।हाइव/एचबेस इंटीग्रेशन - जुकीपर सत्र तुरंत बंद हो जाता है

एचबीज़ चिड़ियाघर से कनेक्ट करने में सक्षम है लेकिन कनेक्शन तुरंत बंद हो जाता है। यह एक संकेत हो सकता है कि सर्वर में बहुत से कनेक्शन हैं (30 डिफ़ॉल्ट है)।

हमने अधिकतम कनेक्शन को उच्च करने की कोशिश की है (हमने सीमा को हटाने का भी प्रयास किया है)। यह एक विकास क्लस्टर है जिसमें बहुत कम उपयोगकर्ता हैं, मुझे पता है कि समस्या यह नहीं है कि बहुत सारे कनेक्शन हैं (मैं zukeeper से दास नोड्स से ./zkCli का उपयोग कर कनेक्ट करने में सक्षम हूं)।

सर्वर साइड लॉग इंगित करते हैं कि सत्र ग्राहक द्वारा समाप्त कर दिया गया था।

क्लाइंट साइड Hadoop लॉग कहते हैं: org.apache.zookeeper.KeeperException $ ConnectionLossException: 'की वजह से KeeperErrorCode = ConnectionLoss के लिए/HBase

किसी भी विचार क्यों मैं एक कनेक्शन maintian करने के लिए के माध्यम से हाइव मानचित्र चिड़ियाघर संचालक करने में असमर्थ हूँ/कम? HBase और चिड़ियाघर संचालक के लिए

कॉन्फिग हैं:

# Autogenerated by Cloudera SCM on Wed Dec 28 08:42:23 CST 2011 
tickTime=2000 
initLimit=10 
syncLimit=5 
dataDir=/var/zookeeper 
clientPort=2181 
maxClientCnxns=1000 
minSessionTimeout=4000 
maxSessionTimeout=40000 

HBase साइट-एक्सएमएल है:

<property> 
    <name>hbase.rootdir</name> 
    <value>hdfs://alnnimb01:8020/hbase</value> 
    <description>The directory shared by region servers. Should be fully-qualified to include the filesystem to use. E.g: hdfs://NAMENODE_SERVER:PORT/HBASE_ROOTDIR</description> 
</property> 

<property> 
    <name>hbase.master.port</name> 
    <value>60000</value> 
    <description>The port master should bind to.</description> 
</property> 

<property> 
    <name>hbase.cluster.distributed</name> 
    <value>true</value> 
    <description>The mode the cluster will be in. Possible values are false: standalone and pseudo-distributed setups with managed Zookeeper true: fully-distributed with unmanaged Zookeeper Quorum (see hbase-env.sh)</description> 
</property> 


<property> 
    <name>hbase.master.info.port</name> 
    <value>60010</value> 
    <description>The port for the hbase master web UI Set to -1 if you do not want the info server to run.</description> 
</property> 
















<property> 
    <name>zookeeper.znode.parent</name> 
    <value>/hbase</value> 
    <description>Root ZNode for HBase in ZooKeeper. All of HBase's ZooKeeper files that are configured with a relative path will go under this node. By default, all of HBase's ZooKeeper file path are configured with a relative path, so they will all go under this directory unless changed.</description> 
</property> 

<property> 
    <name>zookeeper.znode.rootserver</name> 
    <value>root-region-server</value> 
    <description>Path to ZNode holding root region location. This is written by the master and read by clients and region servers. If a relative path is given, the parent folder will be ${zookeeper.znode.parent}. By default, this means the root location is stored at /hbase/root-region-server.</description> 
</property> 


    <property> 
    <name>hbase.zookeeper.property.clientPort</name> 
    <value>2181</value> 
    <description>The ZooKeeper client port to which HBase clients will  connect</description> 
    </property> 

    <property> 
<name>hbase.zookeeper.quorum</name> 
<value>alnnimb01.aln.experian.com</value> 
<description>Comma separated list of servers in the ZooKeeper Quorum. For example, "host1.mydomain.com,host2.mydomain.com,host3.mydomain.com".</description> 

उत्तर

5

बाहर कर देता है कि नक्शा/हाइव द्वारा प्रस्तुत में कमी कनेक्ट करने के लिए कोशिश कर रहा है zookeeper को 'localhost' पर, भले ही zookeeper.quorom कॉन्फ़िगरेशन फ़ाइल में कैसे सेट किया गया हो। मैंने अपने मास्टर नोड के आईपी को उपनाम 'लोकलहोस्ट' बिंदु के लिए/etc/hosts को बदल दिया और ज़ूकीपर से कनेक्शन बनाए रखा गया। अभी भी एक बेहतर संकल्प की तलाश है, लेकिन यह अभी के लिए काम करेगा।

1

मुझे एक नया उत्तर पोस्ट करने के लिए खेद है। मैं पिछले जवाब पर टिप्पणी करना चाहता था लेकिन टिप्पणी यूआई गायब हो गया लगता है>। < ...

वैसे भी, मैं कहना है कि मैं एक ही समस्या का सामना कर रहा था, और यह कर/etc/hosts हैक द्वारा हल किया जाता है, लेकिन यह एक बहुत गंदे समाधान की तरह लगता है ...

क्या किसी ने इसे साफ करने का तरीका निकाला है ... ??

धन्यवाद :)!

3

मैंने इसे समझ लिया। यह एक विन्यास मुद्दा था (जैसा कि मैंने सभी के साथ संदेह किया था)। समाधान था करने के लिए:

सेट 'छत्ता-site.xml' और 'Hadoop-conf' में रख निर्देशिका के भीतर 'hbase.zookeeper.quorum'

मुझे फेंक दिया है कि वहाँ था बंद क्या नहीं 'hbase .zookeeper.quorum' hive-default.xml में। मैं 'हाइव .zookeeper.quorum' के साथ खेल रहा था जो बदलने के लिए सही कॉन्फ़िगरेशन नहीं था।

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