我们这里所介绍的是对应 ZooKeeper系列之三:ZooKeeper的安装 模式的运行。

 

1)单机模式

用户可以通过下面的命令来启动 ZooKeeper 服务:

zkServer.sh start

这个命令默认情况下执行 ZooKeeper conf 文件夹下的 zoo.cfg 配置文件。当运行成功用户会看到类似如下的提示界面:

root@ubuntu:~# zkServer.sh start

JMX enabled by default

Using config: /root/hadoop-0.20.2/zookeeper-3.3.1/bin/../conf/zoo.cfg

Starting zookeeper ...

STARTED

    ... ...

2011-01-19 10:04:42,300 - WARN  [main:QuorumPeerMain@105] - Either no config or no quorum defined in config, running  in standalone mode

... ...

2011-01-19 10:04:42,419 - INFO  [main:ZooKeeperServer@660] - tickTime set to 2000

2011-01-19 10:04:42,419 - INFO  [main:ZooKeeperServer@669] - minSessionTimeout set to -1

2011-01-19 10:04:42,419 - INFO  [main:ZooKeeperServer@678] - maxSessionTimeout set to -1

2011-01-19 10:04:42,560 - INFO  [main:NIOServerCnxn$Factory@143] - binding to port 0.0.0.0/0.0.0.0:2181

2011-01-19 10:04:42,806 - INFO  [main:FileSnap@82] - Reading snapshot /root/hadoop-0.20.2/zookeeper-3.3.1/data/version-2/snapshot.200000036

2011-01-19 10:04:42,927 - INFO  [main:FileSnap@82] - Reading snapshot /root/hadoop-0.20.2/zookeeper-3.3.1/data/version-2/snapshot.200000036

2011-01-19 10:04:42,950 - INFO  [main:FileTxnSnapLog@208] - Snapshotting: 400000058

从上面可以看出,运行成功后,系统会列出 ZooKeeper 运行的相关环境配置信息。

 

2)集群模式

集群模式下需要用户在每台 ZooKeeper 机器上运行第一部分的命令,这里不再赘述。

 

3)集群伪分布模式

在集群伪分布模式下,我们只有一台机器,但是要运行三个 ZooKeeper 服务实例。此时,如果再使用上述命令式肯定行不通的。这里,我们通过下面三条命能够令来运行 ZooKeeper系列之三:ZooKeeper的安装 我们配置的 ZooKeeper 服务。如下所示:

zkServer.sh start zoo1.cfg

 

zkServer.sh start zoo2.cfg

 

zkServer.sh start zoo3.cfg

在运行完第一条命令之后,读者将会发现一些系统错误提示,如下图 1 所示:


1 :集群伪分布异常提示

产生如上图所示的异常信息是由于 ZooKeeper 服务的每个实例都拥有全局的配置信息,它们在启动的时候需要随时地进行 Leader 选举操作(此部分内容下面将会详细讲述)。此时第一个启动的 Zookeeper 需要和另外两个 ZooKeeper 实例进行通信。但是,另外两个 ZooKeeper 实例还没有启动起来,因此将会产生上述所示的异常信息。

我们直接将其忽略即可,因为当把图示中的“ 2 号”和“ 3 号” ZooKeeper 实例启动起来之后,相应的异常信息就回自然而然地消失。

 

-----

如有疑问请发Email至shenlan211314@gmail.com,谢谢!

.

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐