2012-07-16 15 views
15

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

# The number of milliseconds of each tick 
tickTime=3000 
# The number of ticks that the initial 
# synchronization phase can take 
initLimit=10 
# The number of ticks that can pass between 
# sending a request and getting an acknowledgement 
syncLimit=5 
# the directory where the snapshot is stored. 
dataDir=/var/lib/zookeeper 
# Place the dataLogDir to a separate physical disc for better performance 
# dataLogDir=/disk2/zookeeper 

# the port at which the clients will connect 
clientPort=2181 

server.1=111.111.111:2888:3888 
server.2=111.111.112:2888:3888 
server.3=111.111.113:2888:3888 

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

2012-07-16 05:16:57,558 - INFO [main:[email protected]] - Reading configuration from: /etc/zookeeper/conf/zoo.cfg 
2012-07-16 05:16:57,567 - INFO [main:[email protected]] - Defaulting to majority quorums 
2012-07-16 05:16:57,572 - FATAL [main:[email protected]] - Invalid config, exiting abnormally 
org.apache.zookeeper.server.quorum.QuorumPeerConfig$ConfigException: Error processing /etc/zookeeper/conf/zoo.cfg 
    at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:110) 
    at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:99) 
    at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:76) 
Caused by: java.lang.IllegalArgumentException: serverid replace this text with the cluster-unique zookeeper's instance id (1-255) is not a number 
    at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parseProperties(QuorumPeerConfig.java:333) 
    at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:106) 
    ... 2 more 

उत्तर

34

आप MyID नाम की एक फ़ाइल बनाने की जरूरत है और यह चिड़ियाघर संचालक वर निर्देशिका, प्रत्येक सर्वर के लिए एक में डाल दिया, केवल कि मशीन की आईडी के टेक्स्ट वाली एक पंक्ति के होते हैं। तो सर्वर 1 के myid में टेक्स्ट "1" होगा और कुछ भी नहीं। आईडी कलाकारों की टुकड़ी के भीतर अद्वितीय होना चाहिए और एक मूल्य के 1 और 255 के बीच

देखना अधिक पर http://zookeeper.apache.org/doc/r3.3.3/zookeeperAdmin.html#sc_zkMulitServerSetup

+0

ओह बिना इसी सर्वर में 1,2,3 को महत्व देता है ... यह मिल गया। आप टैट फाइल कहां रखते हैं?/Etc/चिड़ियाघर संचालक/conf? – Tampa

+0

Yup..बहुत अच्छा काम किया ... धन्यवाद !!!!!!!!! – Tampa

+0

आप zookeeper.properties में "dataDir" प्रॉपर्टी द्वारा पहचाने गए स्थान पर फ़ाइल डालते हैं (जो बदले में, वह फ़ाइल है जिसे आप ZooKeeper प्रारंभ करते समय तर्क के रूप में पास करते हैं)। उपरोक्त आपकी कॉन्फ़िगरेशन फ़ाइल में, आपका डेटा डीआईआर/var/lib/zookeeper है, इसलिए फ़ाइल/var/lib/zookeeper/myid होना चाहिए। – JakeRobb

4
server.1=111.111.111:2888:3888 
server.2=111.111.112:2888:3888 
server.3=111.111.113:2888:3888 

अपने सर्वर हैं होना चाहिए और आईपी के

तब से प्रत्येक पर MyID फ़ाइल बनाने 111.111.111 में मूल्य 1 के साथ नोड्स और 111.111.111.112 में 2 और 111.111.111.113 में 3 निर्देशिकाओं के तहत सर्वर (डेटाडिर =/var/lib/zookeeper)

यदि आप मान "1" myid फ़ाइल डालते हैं तो आपको नंबर मिलेगा प्रारूप अपवाद और "अमान्य विन्यास, exiti ng असामान्य रूप से "अगर myid फ़ाइल किसी भी एक्सटेंशन के साथ बनाई गई है।

इसलिए बस किसी भी विस्तार और जगह पूर्णांक के बिना MyID फ़ाइल बनाने के दोहरे उद्धरण चिह्नों

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