2011-10-15 63 views
1

我想在3個服務器的複製節點中設置zookeeper。無法在複製模式下設置動物園管理員

我的配置文件是這樣的

tickTime=2000 
dataDir=/var/lib/zookeeper/ 
clientPort=2181 
initLimit=5 
syncLimit=2 
server.1=zoo1:2888:3888 
server.2=zoo2:2888:3888 
server.3=zoo3:2888:3888 

我得到以下異常

QuorumPeer:/0:0:0:0:0:0:0:0:2181:[email protected]] - Adding vote 

2009-09-23 15:30:28,099 - WARN [WorkerSender Thread:[email protected]] - 
Cannot open channel to 3 at election address zoo1/172.21.31.159:3888 
java.net.ConnectException: Connection refused at sun.nio.ch.Net.connect(Native Method)> at 
sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:507) 
at java.nio.channels.SocketChannel.open(SocketChannel.java:146) 
at org.apache.zookeeper.server.quorum.QuorumCnxManager.connectOne(QuorumCnxManager.java: 

所有端口是開放的,SSH,telnet等也正在努力。

感謝

+0

你是否在所有三臺機器上開始動物園管理員?這三個錯誤都是一樣的嗎? – Slartibartfast

回答

5

這裏是一個快速清單:

  • 你有一個/var/lib/zookeeper/myid文件?
  • 在該文件中定義的ids是否與配置中定義的機器名/ IP(具有id 1的zoo1等)同步?
+0

HI Slartibartfast:我面臨類似的問題。但是我將myid文件放在zookeeper-data目錄下。這些數字與給定的內部zoo.cfg文件同步。我在這裏發佈了一個單獨的問題:http://stackoverflow.com/questions/26732514/zookeeper-ensemble-not-coming-up –