搭建前提
1.需要安装好jdk
2.检测集群时间是否同步
3.检测防火墙是否关闭
4.检测主机 ip映射有没有配置
步骤:
第一步:
将安装包解压
tar -zxvf zookeeper-3.4.5.tar.gz
mv zookeeper-3.4.5 zookeeper(更名可有可无,我这里更名是为了后面路径写起来方便)
第二步:
修改环境变量(注意:有几台服务器修改几台)
vi /etc/profile.d/zookeeper.sh(在profile.d里创建zookeeper.sh并编辑)
编辑内容如下:
export ZOOKEEPER_HOME=/export/servers/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin
编辑完成后保存并退出(上面第一行等于号后面填写的是zookeeper的解压后的位置)
最后就是source /etc/profile
第三步:
修改zookeeper配置文件
首先进入zookeeper目录下的conf里
cd zookeeper/conf
然后拷贝一份zoo_sample.cfg并更名为zoo.cfg
cp zoo_sample.cfg zoo.cfg
进入vi编辑模式编辑zoo.cfg
在dataDir的位置后面填写zookeeper目录下的zkdata
接着在最后添加
server.1=hadoop01:2888:3888 ## (hadoop01为节点名、2888心跳端口、3888选举端口)
server.2=hadoop02:2888:3888
server.3=hadoop03:2888:3888
修改完毕保存并退出(注意最后添加的内容后面的注释一定要去掉)
接下来就是在zookeeper目录下创建zkdata
mkdir zkdata
在zkdata文件夹下新建myid文件
cd zkdata
echo 1>myid
注:第几个节点就写数字几
第四步:
分发zookeeper目录到其他机器
scp -r /export/servers/zookeeper hadoop02:/export/servers/
scp -r /export/servers/zookeeper hadoop03:/export/servers/
第五步:
修改其他机器的配置文件
修改myid文件
到hadoop02上修改myid内容为:2
到hadoop03上修改myid内容为:3
第六步:
启动(每台机器)
zkServer.sh start
或者编写一个脚本来批量启动所有机器:
for host in hadoop01 hadoop02 hadoop03
do
ssh $host "source/etc/ profile;/export/servers/zookeeper/bin/zkServer.sh start"
done
第七步:
查看集群状态
jps(查看进程)
zkServer.sh status (查看集群状态,主从信息)
如果启动不成功,可以观察zookeeper.out日志,查看错误信息进行排查