这是我第一次尝试zookeeper,虽然我可以很容易地将它设置为在一台机器上运行,但让它在两台机器的集群中运行根本不起作用。我想这可能是我的配置有问题,但看起来我找不到。
以下是服务器1的日志
以下是服务器2的日志
两台服务器的配置如下:
# The number of milliseconds of each tick
tickTime=2000
# 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
# the port at which the clients will connect
clientPort=2181
server.1=redis1:2888:3888
server.2=redis2:2888:3888
关于这个问题有什么想法吗?
我在运行openjdk7的ubuntulinux中运行zookeeper 3.4.5。尝试在openjdk6上运行,但仍然遇到相同的问题。
2条答案
按热度按时间2mbi3lxu1#
问题是我有偶数个节点,你需要奇数个节点才能运行选举(显然)。文档应该更新以涵盖这一点,因为基本示例正好显示了配置的2台服务器。
ui7jx7zq2#
你的配置无效,特别是
如果在同一台主机上运行两个示例,则需要为每个示例提供不同的端口号,最好是
请注意,您应该有相同的服务器。#为两个服务器的配置文件配置。
另一种选择是使用zkconf之类的工具为您生成所有这些:http://bit.ly/aqp9yi