zookeeper伪分布环境搭建
Posted Hadoop_Liang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zookeeper伪分布环境搭建相关的知识,希望对你有一定的参考价值。
前提条件
1. 1台Linux环境机器
2. Linux环境下安装好jdk
目标
用1台Linux环境机器,安装zookeeper伪分布式环境。
操作步骤
下载:
点击如下链接下载zookeeper安装包,这里使用的版本为3.4.13
解压:
tar -zxvf zookeeper-3.4.13.tar.gz
重命名:
mv zookeeper-3.4.13 zookeeper-3.4.13-pseudo
进入zookeeper解压目录下的配置目录conf:
hadoop@node1:~/soft$ cd zookeeper-3.4.13-pseudo/conf/
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo/conf$ ls
configuration.xsl log4j.properties zoo_sample.cfg
复制模板文件,得到zoo1.cfg:
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo/conf$ cp zoo_sample.cfg zoo1.cfg
编辑zoo1.cfg,最终内容如下:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/hadoop/soft/zookeeper-3.4.13-pseudo/data_1
dataLogDir=/home/hadoop/soft/zookeeper-3.4.13-pseudo/logs_1
clientPort=2181
server.1=node1:2888:3888
server.2=node1:2889:3889
server.3=node1:2890:3890
注意:
1. dataDir为zookeeper的数据目录,建议放在zookeeper解压后的目录下,目录注意按实际修改;
2.dataLogDir为zookeeper的数据目录,建议放在zookeeper解压后的目录下,目录注意按实际修改。
3.server.x表示第几台zookeeper机器,x与后面的myid里的数字一致
4.node1表示Linux机器的主机名,也可以写Linux机器的ip地址。
5.伪分布只有1台机器,通过配置不同端口来区别不同的zookeeper服务
同样的,在与zoo1.cfg相同目录下,创建zoo2.cfg和zoo3.cfg。
创建zoo2.cfg,内容如下:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/hadoop/soft/zookeeper-3.4.13-pseudo/data_2
dataLogDir=/home/hadoop/soft/zookeeper-3.4.13-pseudo/logs_2
clientPort=2182
server.1=node1:2888:3888
server.2=node1:2889:3889
server.3=node1:2890:3890
创建zoo3.cfg,内容如下:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/hadoop/soft/zookeeper-3.4.13-pseudo/data_3
dataLogDir=/home/hadoop/soft/zookeeper-3.4.13-pseudo/logs_3
clientPort=2183
server.1=node1:2888:3888
server.2=node1:2889:3889
server.3=node1:2890:3890
创建3个myid文件:
进入zookeeper解压目录后,因为dataDir不存在,需要先执行创建数据文件夹,并在每个数据目录下创建一个myid文件,写入对应的id,命令如下:
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ mkdir data_1
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ mkdir data_2
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ mkdir data_3
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ echo 1 > data_1/myid
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ echo 2 > data_2/myid
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ echo 3 > data_3/myid
启动zookeeper:
分别按3个配置启动zookeeper
$ bin/zkServer.sh start conf/zoo1.cfg
$ bin/zkServer.sh start conf/zoo2.cfg
$ bin/zkServer.sh start conf/zoo3.cfg
具体执行过程如下:
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ bin/zkServer.sh start conf/zoo1.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo1.cfg
Starting zookeeper ... STARTED
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ bin/zkServer.sh start conf/zoo2.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo2.cfg
Starting zookeeper ... STARTED
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ bin/zkServer.sh start conf/zoo3.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo3.cfg
Starting zookeeper ... STARTED
查看zookeeper状态:
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ bin/zkServer.sh status conf/zoo1.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo1.cfg
Mode: follower
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ bin/zkServer.sh status conf/zoo2.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo2.cfg
Mode: leader
hadoop@node1:~/soft/zookeeper-3.4.13-pseudo$ bin/zkServer.sh status conf/zoo3.cfg
ZooKeeper JMX enabled by default
Using config: conf/zoo3.cfg
Mode: follower
可看到zoo2.cfg配置的zk为leader,另外两个配置的zk为follower。
至此,zookeeper伪分布式配置成功。
完成!enjoy it!
以上是关于zookeeper伪分布环境搭建的主要内容,如果未能解决你的问题,请参考以下文章