一、zookeeper(3.5.5)
(https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/)经尝试发现3.5..0及以上版本将zookeep.out文件变成了zookeeper-username-server-hostname.out,例如zookeeper-aaa-server-TP3.out。
zookeeper集群安装:
1) 解压重命名复制conf文件
cd /home/username/kafka
tar -xzvf apache-zookeeper-3.5.5-bin.tar.gz
mv apache-zookeeper-3.5.5-bin zookeeper
cp zookeeper/zoo_sample.cfg zookeeper/zoo.cfg
2) 在zoo.cfg中更改如下属性
dataDir=/home/username/data/zookeeper #数据存放目录
server.1= TP1:3888 #TP1,2,3是hostname,也可写成IP地址
server.2= TP2:3888
server.3= TP3:3888
3)创建myid文件
cd /home/username/data/zookeeper
touch myid
echo "1">>myid
4)拷贝安装好的zookeeper 至另外两台服务器
scp -r /home/username/kafka/zookeeper username@TP2:/home/username/kafka/
scp -r /home/username/kafka/zookeeper username@TP3:/home/username/kafka/
5)修改myid文件
TP2的myid内容改为2:
cd /home/username/data/zookeeper
echo "2">myid
TP3的myid内容改为3:
cd /home/username/data/zookeeper
echo "3">myid
6)启动zookeeper(每台机器都要启动)
/home/username/kafka/zookeeper/bin/zkServer.sh start
7)查看状态
7-1) /home/username/kafka/zookeeper/bin/zkServer.sh status
会出现如下字样:
ZooKeeper JMX enabled by default
Using config: /home/username/kafka/zookeeper/bin/../conf/zoo.cfg
Mode: follower
其中Mode会有一个leader。
7-2)也可直接jps查看:
26386 QuorumPeerMain
8)不想每台启动也可编写一个脚本启动
#!/bin/sh
echo "start zkServer..."
hosts="hostip1 hostip2 hostip3 "
for i in $hosts
do
ssh $i "source /etc/profile;/home/username/kafka/zookeeper/bin/zkServer.sh start"
done
编写完之后需要给这个脚本赋予权限,才可执行。chmod 755 zk-daemons-start.sh。
(需要用ssh-keygen生成账户对应的公钥和私钥,并ssh-copy-id TP2 和TP3)