配置zookeeper进入zookerper-3.4.7目录,执行cp conf/zoo_sample.cfg conf/zoo.cfgvim conf/zoo.cfg配置文件如下:tickTime=2000initLimit=10syncLimit=5dataDir=/home/hadoopadmin/temp/zookeeper/clientPort=2181server.1=spark01:2888:3888 server.2=spark02:2888:3888 server.3=spark03:2888:3888修改完成后拷贝配置内容,依次复制到其他Server下相关配置介绍* tickTime:CS通信心跳数;以毫秒为单位,可以使用默认配置。* initLimit:LF初始通信时限;* syncLimit:LF同步通信时限;数值不宜过高。* dataDir:数据文件目录;* dataLogDir:日志文件目录;* clientPort:客户端连接端口;* server.N:服务器名称与地址(服务编号,服务地址,LF通信端口,选举端口)ZooKeeper高级配置* gloabalOutstandingLimit:最大请求堆积属,默认1000;* preAllocSize:预分配的Transaction log空间大小;* snapCount:每进行snapCount次事务日志输出后,触发一次快照;* maxClientCnxns:最大并发客户端数;* forceSync:是否提交事务的同时同步到磁盘;* leaderServes:是否禁止leader读功能;* traceFile:是否记录所有请求的log;不建议使用创建目录mkdir /home/hadoopadmin/temp/zookeeper建立Zookeeper节点标识文件myid创建myid编号,依次在每台Server上执行,注意每台Server的myid要对应正确的编号host1下输入echo “1” > /home/hadoopadmin/temp/zookeeper/myidhost2下输入echo “2” > /home/hadoopadmin/temp/zookeeper/myidhost3下输入echo “3” > /home/hadoopadmin/temp/zookeeper/myid配置环境变量并使环境变量立即生效vim /etc/profile在末尾加入以下命令(只有root用户才可以改哦)export ZOOKEEPER_HOME=/home/saprk01/bigdata/zookeeper-3.4.10export PATH=$ZOOKEEPER_HOME/bin:$PATH完成后保存退出,并使环境变量立即生效source /etc/profile同样,在其它Server也要做同样的操作。启动并监控状态启动ZooKeeperzkServer.sh start检查ZooKeeper的状态zkServer.sh status这里需要注意下,各台Server的防火墙要关闭,要不可能会报错。关闭防火墙方法:service iptables stop执行后查询是否关闭service iptables status集群启动脚本这里我写了一个集群启动脚本,基础环境(host、ssh、jdk等)都配置正确时,可以简单修改考虑使用./start-all.sh start #启动每一台机器上的kafka./start-all.sh status #查看启动状态#!/bin/bash –login#需要改成集群的机器名称ZOOKEEPERS=“spark01 spark02 spark03”# 执行前需要在/etc/environment 配置jdk环境command=$1start $command $ZOOKEEPERSstart(){ for zookeeper in $2 do echo “$1 zookeeper on $zookeeper” #需要修改一下目录 ssh -l hadoopadmin $zookeeper “/home/hadoopadmin/zookeeper-3.4.10/bin/zkServer.sh $1” #ssh -l hadoopadmin $zookeeper “java -version” done}