erlang大数据系统搭建 2.kafka集群搭建

1.选择路径
本教程选择路径为/usr/local/src
zookpeer ,kafka集群均搭建在同一机器上
 
2.下载安装包
 
tar -zxvf apache-zookeeper-3.6.1-bin.tar.gz
tar -zxvf kafka_2.12-2.5.0.tgz
 
3.安装zookeeper
kafka自带有zookeeper,但是推荐使用独立的zookeeper
 
首先进入conf目录
 
cp zoo_sample.cfg zoo.cfg
复制一份样例配置文件作为正式配置,打开zoo.cfg修改配置,正式配置如下
需要修改的配置有:
dataDir : data目录,多个zookeeper在同一机器上需要注意,最好放在当前zookeeper的目录中,不能多个zookeeper共用一个路径
clientPort : 客户端端口,每个zookeeper保持不同
 
其他配置:
initLimit:follower 和 leader 建立连接进行同步的最长时间
syncLimit:follower 和 leader 之间发送消息,请求和应答的最大时间长度
tickLimit:上述两个值的基本单位,单位ms
 
最后要加上所有zookeeper的Ip端口,注意,下面的端口都不能相同
server.1=ip:2888:3888
server.2=ip:2889:3889
server.3=ip:2890:3890
第一个端口2888:表示follower 和 leader 交换信息使用的端口
第二个端口3888:表示选举leader所使用的端口
.1:表示myid为1,单个zookeeper的身份标识,存放在data中,后面会讲到
 
此时退出到zookeeper的根目录,复制三份zookeeper文件,命名为zookeeper1,zookeeper2,zookeeper3
 
进入每个目录修改 conf 的 dataDir 和 clientPort,三个节点不能相同
 
然后在data目录下生成myid文件
echo "1" > /usr/local/src/zookeeper1/data/myid
echo "2" > /usr/local/src/zookeeper2/data/myid
echo "3" > /usr/local/src/zookeeper3/data/myid
 
之后就可以,在三个zookeeper的bin目录下
./zkServer.sh start
三个节点都启动完成后
./zkServer.sh status
表示启动成功(注意,在三个节点没有完全启动时,使用status会报错显示节点尚未启动,是正常现象,等所有节点都启动成功就好了)
 
4.安装kafka
kafka不同于zookeeper,不需要复制多个文件,三份配置文件就可以了,配置文件位置如下
需要修改的配置有:
broker.id=1  : 每个kafka节点不能一样
listeners=PLAINTEXT://ip:9091  : kafka的socket监听端口,每个节点保持不同9091 9092 9093
zookeeper.connect=ip:2181,ip:2182,ip:2183 : 之前zookeeper的客户端端口,三个节点都要写上
log.dirs = /usr/local/src/kafka/kafka_logs/kafka1-logs  : 三个节点可放在同个文件夹中,但是文件名要不同,可取kafka1-logs kafka2-logs  kafka3-logs 
 
新建存放kafka数据的文件夹
mkdir /usr/local/src/kafka/kafka_logs
 
下面是一些启动 以及 调试命令:
守护进程模式启动:
bin/kafka-server-start.sh -daemon config/server1.properties
bin/kafka-server-start.sh -daemon config/server2.properties
bin/kafka-server-start.sh -daemon config/server3.properties
 
启动打印log:
bin/kafka-server-start.sh config/server.properties &
 
关闭:
bin/kafka-server-stop.sh  config/server.properties
 
查看进程信息:
ps -ef | grep zook
ps -ef | grep kafka
 
tcp测试是否开启成功:
gen_tcp:connect("127.0.0.1", 9092,[{packet,0}, binary, {reuseaddr,true}], 10000).
 
 
 
 
 
 
 
posted @ 2020-06-23 14:03  feapoi  阅读(295)  评论(0)    收藏  举报