配置kafka

配置kafka_3.0.0

链接: 下载kafka安装包

选Scala 2.12 - kafka_2.12-3.0.0.tgz (asc, sha512)

1.配置kafka

javascript 复制代码
#解压安装包
[gpb@hadoop102 software]$ tar -zxvf kafka_2.12-3.0.0.tgz -C 
/opt/module/

#修改解压后的文件名称
[gpb@hadoop102 module]$ mv kafka_2.12-3.0.0/ kafka

#进入到/opt/module/kafka 目录,修改配置文件
[gpb@hadoop102 kafka]$ cd config/
[gpb@hadoop102 config]$ vim server.properties
javascript 复制代码
#broker 的全局唯一编号,不能重复,只能是数字。
broker.id=0
#处理网络请求的线程数量
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 运行日志(数据)存放的路径,路径不需要提前创建,kafka 自动帮你创建,可以
配置多个磁盘路径,路径与路径之间可以用","分隔
log.dirs=/opt/module/kafka/datas
#topic 在当前 broker 上的分区个数
num.partitions=1
#用来恢复和清理 data 下数据的线程数量
num.recovery.threads.per.data.dir=1
# 每个 topic 创建时的副本数,默认时 1 个副本
offsets.topic.replication.factor=1
#segment 文件保留的最长时间,超时将被删除
log.retention.hours=168
#每个 segment 文件的大小,默认最大 1G
log.segment.bytes=1073741824
# 检查过期数据的时间,默认 5 分钟检查一次是否数据过期
log.retention.check.interval.ms=300000
#配置连接 Zookeeper 集群地址(在 zk 根目录下创建/kafka,方便管理)
zookeeper.connect=hadoop102:2181,hadoop103:2181,hadoop104:2181/kafka



#分发安装包
[gpb@hadoop102 module]$ xsync kafka/
#分别在 hadoop103 和 hadoop104 上修改配置文件/opt/module/kafka/config/server.properties
中的 broker.id=1、broker.id=2


#配置环境变量
(1)在/etc/profile.d/my_env.sh 文件中增加 kafka 环境变量配置
[gpb@hadoop102 module]$ sudo vim /etc/profile.d/my_env.sh
增加如下内容:
#KAFKA_HOME
export KAFKA_HOME=/opt/module/kafka
export PATH=$PATH:$KAFKA_HOME/bin


#刷新一下环境变量。
[gpb@hadoop102 module]$ source /etc/profile
#分发环境变量文件到其他节点,并 source。
[gpb@hadoop102 module]$ sudo /home/atguigu/bin/xsync /etc/profile.d/my_env.sh
[gpb@hadoop103 module]$ source /etc/profile
[gpb@hadoop104 module]$ source /etc/profile

#启动集群
(1)先启动 Zookeeper 集群,然后启动 Kafka。
[gpb@hadoop102 kafka]$ zk.sh start 
(2)依次在 hadoop102、hadoop103、hadoop104 节点上启动 Kafka。
[gpb@hadoop102 kafka]$ bin/kafka-server-start.sh -daemon
config/server.properties
[gpb@hadoop103 kafka]$ bin/kafka-server-start.sh -daemon
config/server.properties
[gpb@hadoop104 kafka]$ bin/kafka-server-start.sh -daemon
config/server.properties


#8)关闭集群
[gpb@hadoop102 kafka]$ bin/kafka-server-stop.sh 
[gpb@hadoop103 kafka]$ bin/kafka-server-stop.sh 
[gpb@hadoop104 kafka]$ bin/kafka-server-stop.sh

在/home/gpb/bin 目录下创建文件 kf.sh 脚本文件

[gpb@hadoop102 bin]$ vim kf.sh

javascript 复制代码
#! /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



#添加执行权限
[gpb@hadoop102 bin]$ chmod +x kf.sh
#启动集群命令
[gpb@hadoop102 ~]$ kf.sh start
#停止集群命令
[gpb@hadoop102 ~]$ kf.sh stop

注意:停止 Kafka 集群时,一定要等 Kafka 所有节点进程全部停止后再停止 Zookeeper

集群。因为 Zookeeper 集群当中记录着 Kafka 集群相关信息,Zookeeper 集群一旦先停止,

Kafka 集群就没有办法再获取停止进程的信息,只能手动杀死 Kafka 进程了。

2.kafka案例

相关推荐
材料苦逼不会梦到计算机白富美2 小时前
golang分布式缓存项目 Day 1
分布式·缓存·golang
想进大厂的小王3 小时前
项目架构介绍以及Spring cloud、redis、mq 等组件的基本认识
redis·分布式·后端·spring cloud·微服务·架构
Java 第一深情3 小时前
高性能分布式缓存Redis-数据管理与性能提升之道
redis·分布式·缓存
杨荧4 小时前
【JAVA毕业设计】基于Vue和SpringBoot的服装商城系统学科竞赛管理系统
java·开发语言·vue.js·spring boot·spring cloud·java-ee·kafka
ZHOU西口4 小时前
微服务实战系列之玩转Docker(十八)
分布式·docker·云原生·架构·数据安全·etcd·rbac
zmd-zk4 小时前
kafka+zookeeper的搭建
大数据·分布式·zookeeper·中间件·kafka
激流丶4 小时前
【Kafka 实战】如何解决Kafka Topic数量过多带来的性能问题?
java·大数据·kafka·topic
筱源源4 小时前
Kafka-linux环境部署
linux·kafka
Mephisto.java5 小时前
【大数据学习 | kafka高级部分】kafka中的选举机制
大数据·学习·kafka
Mephisto.java5 小时前
【大数据学习 | kafka高级部分】kafka的优化参数整理
大数据·sql·oracle·kafka·json·database