Zookeeper集群搭建
1.下载Zookeeper
从Zookeeper官网(http://zookeeper.apache.org/)下载Zookeeper
apache-zookeeper-3.6.0-bin.tar.gz
准备3台虚机(这里名称为hadoop5,hadoop6,hadoop7),将安装包上传到一台虚机上
2.解压
tar解压到特定的文件夹中
[hadoop@hadoop5 install-pkg]$ tar zxvf apache-zookeeper-3.6.0-bin.tar.gz -C ../app
3.修改配置
[hadoop@hadoop5 conf]$ mv zoo_sample.cfg zoo.cfg //将zoo_sample.cfg修改为zoo.cfg将在里面进行配置
[hadoop@hadoop5 conf]$ vim zoo.cfg //修改配置信息
- tickTime=2000 心跳间隔
- initLimit=10 初始容忍的心跳数
- synclimit=5 等待最大容忍的心跳数
- dataDir=/tmp/zookeeper 本地保存数据的目录,tmp存放的临时数据,可以修改为自己的目录
- clientPort=2181 客户端默认端口号
其中主要修改 dataDir (这里我指定到了Zookeeper目录下的data文件夹,后面会创建)
server.1=hadoop5:2888:3888 (主机名, 心跳端口、数据端口) server.2=hadoop6:2888:3888 server.3=hadoop7:2888:3888
4.创建data目录
因为上一步 dataDir 指定了一个目录,如果没有那个data文件夹,所以需要创建对应目录。
echo 1 >> myid //这里的id对应上一步server.1
5.拷贝到其他两台机器上
[hadoop@hadoop5 app]$ scp -r apache-zookeeper-3.6.0-bin/ hadoop6:/home/hadoop/app [hadoop@hadoop5 app]$ scp -r apache-zookeeper-3.6.0-bin/ hadoop7:/home/hadoop/app
对应其他两台机器去修改data目录下的 myid 为 2 和 3
6.启动Zookeeper
进入bin目录,启动Zookeeper,jps查看进程是否启动(其他两台机器用同样的方式启动)
[hadoop@hadoop5 bin]$ ./zkServer.sh start
[hadoop@hadoop5 bin]$ jps
最后查看ZK的状态:
[hadoop@hadoop5 bin]$ ./zkServer.sh status
7.一键启动Zookeeper
由于去三台机器启动Zookeeper太麻烦,所以可以编写一个一键启动脚本。
①首先先将Zookeeper配置到环境变量
vi /etc/profile
添加如下: #---------------------zookeeper-------------------------- export ZOOKEEPER_HOME=/home/hadoop/app/apache-zookeeper-3.6.0-bin export PATH=$PATH:$ZOOKEEPER_HOME/bin #-------------------------------------------------------
保存
source /etc/profile
②编写脚本
编写启动脚本 zk-start.sh
#!/bin/bash echo "--------start zkServer------" echo "--hadoop5,hadoop6,hadoop7---" for host in 5 6 7 do ssh hadoop$host "source /etc/profile; /home/hadoop/app/apache-zookeeper-3.6.0-bin/bin/zkServer.sh start" if [$? -ne 0];then echo "$host zk failure" else echo "$host zk start successful" fi done
编写停止脚本 zk-stop.sh
#!/bin/bash echo "--------start zkServer------" echo "--hadoop5,hadoop6,hadoop7---" for host in 5 6 7 do ssh hadoop$host "source /etc/profile; /home/hadoop/app/apache-zookeeper-3.6.0-bin/bin/zkServer.sh stop" if [$? -ne 0];then echo "$host zk stop failure" else echo "$host zk stop successful" fi done
③将启动脚本加入到环境变量
vi /etc/profile
添加如下:
#---------------------my-scripts--------------------- export MY_SCRIPTS=/home/hadoop/my-scripts export PATH=$PATH:$MY_SCRIPTS #-----------------------------------------------------
8.测试启动
[hadoop@hadoop5 my-scripts]$ zk-start.sh
启动成功,再测试停止:
[hadoop@hadoop5 my-scripts]$ zk-stop.sh
到此,Zookeeper集群搭建就完成了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。