我能够在我的windows机器上运行一个动物园管理员实例。但是成功地在单窗口机器上设置了多个动物园管理员实例。
根据准则,我采取了以下步骤:
tickTime=2000 initLimit=10 syncLimit=5 dataDir=c:/opt/zoo牧民/data clientPort=2181 server.1=localhost:2888:3888 server.2=localhost:2889:3889 server.3=localhost:2890:3890
tickTime=2000 initLimit=10 syncLimit=5 dataDir=c:/opt/zoo情人/data2 2 clientPort=2182 server.1=localhost:2888:3888 server.2=localhost:2889:3889 server.3=localhost:2890:3890
tickTime=2000 initLimit=10 syncLimit=5 dataDir=c:/opt/zoo情人/data3 3 clientPort=2183 server.1=localhost:2888:3888 server.2=localhost:2889:3889 server.3=localhost:2890:3890
C:/opt/动物园管理员/数据 C:/opt/动物园管理员/数据2 C:/opt/动物园管理员/数据3
还在上面的每个文件夹中分别创建了编号为1、2、3的myid文件。现在,每当我试图以c:\opt\zookeeper\bin>zkServer.cmd的形式启动服务器时,它就会抛出一个错误
无法打开选址localhost/127.0.0.1:3889到2的通道 无法打开选址localhost/127.0.0.1:3890到3的通道 java.net.ConnectException:连接被拒绝:连接
看起来服务器没有启动,但是我如何能够并行地启动这些服务器呢?或者我必须使用任何其他方法。
发布于 2015-05-13 12:32:25
因为默认情况下,zkEnv.cmd将使用zoo.cfg作为默认配置文件。如果执行命令c:\opt\zookeeper\bin>zkServer.cmd,那么只有一个实例使用配置zoo.cfg启动。
因此,如果您想启动三个实例:
c:\opt\zookeeper1\bin>zkServer.cmd、c:\opt\zookeeper2\bin>zkServer.cmd、c:\opt\zookeeper3\bin>zkServer.cmd执行以下命令zkServer.cmd ../conf/zoo.cfg、zkServer.cmd ../conf/zoo2.cfg、zkServer.cmd ../conf/zoo3.cfg。对于备选方案2,还需要更新log4j配置,以便每个实例都有不同的日志文件,因此,只需复制3个文件夹,并修改每个zoo.cfg
检查代码:
zkEnv.cmd
设置ZOOCFG=%ZOOCFGDIR%\zoo.cfg
发布于 2016-10-10 18:42:59
发布于 2016-04-24 11:31:46
可能,您还没有在dataDir中创建所有动物园管理员实例的myid文件。
为所有动物园管理员实例创建此文件,并编写相应的服务器id,如第一实例为1、第二实例为2、第三实例为3。
保存所有文件,首先重新启动所有三个实例,然后检查它们的状态。
https://stackoverflow.com/questions/29189436
复制相似问题