1、配置虚拟机zookeeper集群
见上一篇博客
2、下载安装Kafka
0 )官方下载地址:http://kafka.apache.org/downloads.html 1 )下载解压安装包
wget https://dlcdn.apache.org/kafka/3.1.0/kafka_2.12-3.1.0.tgz --no-check-certificate
tar -zxvf kafka_2.12-3.0.0.tgz
2 )修改配置文件
vim kafka_2.12-3.1.0/config/server.properties
输入以下内容:
broker.id=0
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
配置多个磁盘路径,路径与路径之间可以用","分隔
log.dirs=/opt/kafka/data
num.partitions=1
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=1
log.retention.hours=168
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=host001:2181,host002:2181,host003:2181/kafka
3 )分发安装包到集群其他节点
xsync kafka/
4 )分别在 hadoop103 和 hadoop104 上修改配置文件kafka_2.12-3.1.0/config/server.properties 中的 broker.id=1、broker.id=2, id不能重复 5 )配置环境变量 在/etc/profile.d/my_env.sh 文件中增加 kafka环境变量配置
vim /etc/profile.d/my_env.sh
export KAFKA_HOME=/opt/kafka/kafka_2.12-3.1.0/
export PATH=$PATH:$KAFKA_HOME/bin
分发环境变量文件到其他节点,并分别 source刷新一下环境变量。
xsync /etc/profile.d/my_env.sh
source /etc/profile
6)集群 启停脚本
vim kf.sh
内容如下:
case $1 in
"start"){
for i in host001 host002 host003
do
echo " --------启动 $i Kafka-------"
ssh $i "/opt/kafka/kafka_2.12-3.1.0/bin/kafka-server-start.sh -daemon /opt/kafka/kafka_2.12-3.1.0/config/server.properties"
done
};;
"stop"){
for i in host001 host002 host003
do
echo " --------停止 $i Kafka-------"
ssh $i "/opt/kafka/kafka_2.12-3.1.0/bin/kafka-server-stop.sh "
done
};;
esac
同步一下:xsync kf.sh 启动集群,默认zk集群已经启动: 需要先启动zk集群,才能启动kafka, kafka2.8后可以不用zk集群
./kf.sh start
停止集群: 需要先关kafka再关zk集群,否则kafka关不了
./kf.sh stop
运行时可能会报错,出现 java not found,使用以下命令解决
ln -s $JAVA_HOME/bin/java /usr/bin/java
|