文章目录
1. 解压安装包
tar -zxvf kafka_2.11-2.4.1.tgz -C /opt/module
mv kafka_2.11-2.4.1/ kafka
2. 创建logs文件夹
mkdir logs
3. 配置环境变量
vim /etc/profile.d/my_env.sh //编辑环境变量
source /etc/profile //使环境变量生效
xsync ./bin/xsync /etc/profile.d/my_env.sh //分发环境变量
到对应的节点source /etc/profile
4. 修改配置文件
cd /opt/module/kafka/config/
vim server.properties
#broker 的全局唯一编号,不能重复
broker.id=0
#删除 topic 功能使能
delete.topic.enable=true
#处理网络请求的线程数量
num.network.threads=3
#用来处理磁盘 IO 的现成数量
num.io.threads=8
#发送套接字的缓冲区大小
socket.send.buffer.bytes=102400
#接收套接字的缓冲区大小
socket.receive.buffer.bytes=102400
#请求套接字的缓冲区大小
socket.request.max.bytes=104857600
#kafka 运行日志存放的路径
log.dirs=/opt/module/kafka/logs
#topic 在当前 broker 上的分区个数
num.partitions=1
#用来恢复和清理 data 下数据的线程数量
num.recovery.threads.per.data.dir=1
#segment 文件保留的最长时间,超时将被删除
log.retention.hours=168
#配置连接 Zookeeper 集群地址
zookeeper.connect=hadoop102:2181,hadoop103:2181,hadoop104:2181
5.分发配置文件
xsync server.properties
到个节点修改配置文件中的broker.id
6. 启动kafka
每个节点执行
bin/kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties
7. kafka启动/停止脚本
vim kafka.sh
chmod u+x kafka.sh
xsync kafka.sh
#! /bin/bash
case $1 in
"start"){
for i in hadoop102 hadoop103 hadoop104
do
echo "------启动 $ i kafka ----------"
ssh $i " /opt/module/kafka/bin/kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties"
done
};;
"stop"){
for i in hadoop102 hadoop103 hadoop104
do
echo "------停止 $ i kafka ----------"
ssh $i " /opt/module/kafka/bin/kafka-server-stop.sh"
done
};;
esac
kafka.sh start
jpsall //查看所有节点进程
8. kafka常用命令
8.1 创建kafka topic
bin/kafka-topics.sh --zookeeper hadoop102:2181/kafka --create --replication-factor 1 --partitions 1 --topic topic_log
8.2 查看kafka topic
bin/kafka-topics.sh --zookeeper hadoop102:2181/kafka --list
8.3 删除kafka topic
bin/kafka-topics.sh --delete --zookeeper hadoop102:2181/kafka --topic topic_log
8.4 kafka生产消息
bin/kafka-console-producer.sh --broker-list hadoop102:9092 --to pic topic_log
8.5 kafka消费消息
bin/kafka-console-consumer.sh --bootstrap-server hadoop102:9092 --from-beginning --topic topic_log
8.6 查看topic详情
bin/kafka-topics.sh --zookeeper hadoop102:2181/kafka --describe --topic topic_log