-
首先启动Hadoop平台
[root@master ~]# start-all.sh
Starting namenodes on [master]
Last login: Thu Mar 19 10:06:13 EDT 2020 from 192.168.200.1 on pts/2
Starting datanodes
Last login: Thu Mar 19 10:13:28 EDT 2020 on pts/2
Starting secondary namenodes [node1]
Last login: Thu Mar 19 10:13:31 EDT 2020 on pts/2
Starting resourcemanager
Last login: Thu Mar 19 10:13:46 EDT 2020 on pts/2
Starting nodemanagers
Last login: Thu Mar 19 10:13:56 EDT 2020 on pts/2
[root@master ~]# ls
anaconda-ks.cfg zookeeper-3.4.14.tar.gz
将安装包解压在当前的文件夹
[root@master ~]# tar -zxvf zookeeper-3.4.14.tar.gz
进入zookeeper-3.4.14/目录下,查看zookeeper的文件部署
[root@master ~]# cd zookeeper-3.4.14
[root@master zookeeper-3.4.14]# ll
total 1716
drwxr-xr-x 2 2002 2002 4096 Mar 6 2019 bin
-rw-rw-r-- 1 2002 2002 97426 Mar 6 2019 build.xml
drwxr-xr-x 2 2002 2002 88 Apr 25 08:41 conf
drwxr-xr-x 3 root root 60 Apr 25 08:46 datadir
drwxr-xr-x 2 2002 2002 4096 Mar 6 2019 dist-maven
-rw-rw-r-- 1 2002 2002 1709 Mar 6 2019 ivysettings.xml
-rw-rw-r-- 1 2002 2002 10742 Mar 6 2019 ivy.xml
drwxr-xr-x 4 2002 2002 4096 Mar 6 2019 lib
-rw-rw-r-- 1 2002 2002 11970 Mar 6 2019 LICENSE.txt
-rw-rw-r-- 1 2002 2002 3132 Mar 6 2019 NOTICE.txt
-rw-rw-r-- 1 2002 2002 31622 Mar 6 2019 pom.xml
-rw-rw-r-- 1 2002 2002 1765 Mar 6 2019 README.md
-rw-rw-r-- 1 2002 2002 1770 Mar 6 2019 README_packaging.txt
drwxr-xr-x 3 2002 2002 21 Mar 6 2019 src
-rw-rw-r-- 1 2002 2002 1515359 Mar 6 2019 zookeeper-3.4.14.jar
-rw-rw-r-- 1 2002 2002 836 Mar 6 2019 zookeeper-3.4.14.jar.asc
-rw-rw-r-- 1 2002 2002 33 Mar 6 2019 zookeeper-3.4.14.jar.md5
-rw-rw-r-- 1 2002 2002 41 Mar 6 2019 zookeeper-3.4.14.jar.sha1
drwxr-xr-x 3 2002 2002 45 Mar 6 2019 zookeeper-client
drwxr-xr-x 12 2002 2002 4096 Mar 6 2019 zookeeper-contrib
drwxr-xr-x 7 2002 2002 4096 Mar 6 2019 zookeeper-docs
drwxr-xr-x 3 2002 2002 33 Mar 6 2019 zookeeper-it
drwxr-xr-x 4 2002 2002 43 Mar 6 2019 zookeeper-jute
-rw-r–r-- 1 root root 32612 Apr 25 08:57 zookeeper.out
drwxr-xr-x 5 2002 2002 4096 Mar 6 2019 zookeeper-recipes
drwxr-xr-x 3 2002 2002 30 Mar 6 2019 zookeeper-server
使用复制命令生成配置文件zoo.cfg,代码如下:
[root@master zookeeper-3.4.14]# cd conf/
[root@master conf]$ ls
configuration.xsl log4j.properties zoo_sample.cfg
[root@master conf]$ cp zoo_sample.cfg zoo.cfg
[root@master conf]$ ls
configuration.xsl log4j.properties zoo.cfg zoo_sample.cfg
配置zoo.cfg文件
如上图第一处修改的是 dataDir的属性,就是存储数据的位置,后面我们会根据这个来创建相关的目录文件。
在文档结尾添加第二处的代码,然后保存退出;其中:server.1 中的“1”可以是其他的数字, 用来标识服务器,这个标识后面会写到下文中的myid文件里; 2888为Leader服务端口,3888为选举时所用的端口
创建datadir
[root@master ~]# mkdir /root/zookeeper-3.4.14/datadir
编辑myid内容,在里面添加1.
[root@master ~]# vi /root/zookeeper-3.4.14/datadir/myid
然后将zookeeper文件夹远程复制到其他两个节点。
[root@master ~]# scp -r zookeeper-3.4.10 node1:~/
[root@master ~]# scp -r zookeeper-3.4.10 node2:~/
分别在node1和node2上配置myid
[root@node1 ~]# vi /root/zookeeper-3.4.14/datadir/myid
[root@node2 ~]# vi /root/zookeeper-3.4.14/datadir/myid
在node1上将myid中的1改成2,在node2上将1该成3.
在master节点配置zookeeper的环境变量
添加上图圈出的内容。
然后将配置好的内容发送到另外两台节点上。
[root@master ~]# scp ~/.bash_profile node1:~/
[root@master ~]# scp ~/.bash_profile node2:~/
在三台机子上分别使环境变量生效
source ~/.bash_profile
启动Zookeeper集群。分别登录master和node1、node2节点,进入zookeeper安装目录,启动服务
1.master节点
[root@master ~]# cd zookeeper-3.4.14
[root@master zookeeper-3.4.14]# bin/zkServer.sh start
2.node1节点
[root@node1 ~]# cd zookeeper-3.4.14/
[root@node1 zookeeper-3.4.14]# bin/zkServer.sh start
3.node2节点
[root@node2 ~]# cd zookeeper-3.4.14/
[root@node2 zookeeper-3.4.14]# bin/zkServer.sh start
在三个节点上分别运行bin/zkServer.sh status 命令查看状态,出现follower或leader表示ZK启动成功
bin/zkServer.sh status
[root@master ~]# cd zookeeper-3.4.14
[root@master zookeeper-3.4.14]# bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /root/zookeeper-3.4.14/bin/…/conf/zoo.cfg
Mode: follower[root@node1 ~]# cd zookeeper-3.4.14/
[root@node1 zookeeper-3.4.14]# bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /root/zookeeper-3.4.14/bin/…/conf/zoo.cfg
Mode: leader[root@node2 zookeeper-3.4.14]# bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /root/zookeeper-3.4.14/bin/…/conf/zoo.cfg
Mode: follower
测试ZooKeeper客户端命令是否可用
1.启动zookeeper客户端
[root@node2 ~]# cd zookeeper-3.4.14/
[root@node2 zookeeper-3.4.14]# bin/zkCli.sh -server master:2181[zk: master:2181(CONNECTED) 0] help
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BjIBI9E7-1587868990690)(C:Users-_-AppDataRoamingTypora ypora-user-imagesimage-20200426103650659.png)]
per-3.4.14/
[root@node2 zookeeper-3.4.14]# bin/zkCli.sh -server master:2181
[zk: master:2181(CONNECTED) 0] help
至此zookeeper就搭建完毕了,不过要注意zookeeper的版本问题,欢迎大家留言讨论。