安装和配置

依赖

需要Java 1.8+

#1.选择版本下载tar.gz文件
#https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

#2.解压压缩文件
tar zxvf jdk-8u281-linux-x64.tar.gz

#3.将解压的文件放在user/local/java/下,没有文件夹创建
mv jdk1.8.0_281 /usr/local/java/

#4.编辑profile文件
vim /etc/profile
##########################################
export JAVA_HOME=/usr/local/java/jdk1.8.0_281
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
##########################################

#5.生效环境变量
source /etc/profile

下载和安装

安装包 指定安装包 kafka 2.11-2.3.0.tgz

tar -zxvf kafka_2.11-2.3.0.tgz #解压

配置kafka

#修改 config/server.properties配置文件的
vim /usr/local/kafka/kafka_2.11-2.3.0/config/server.properties
##########################################
#如果要更换端口号,当前文件中没有包含端口号的设置,可自行设置
#port=2026

#监听端口
#如果ip设置为0.0.0.0,需要设置advertised.listeners为外网/内网地址(非localhost/127.0.0.1),否则kafka将无法启动,producer和consumer找不到该broker
listeners = PLAINTEXT://0.0.0.0:9092

#广播地址,将该配置通告给producer和consumer,如果不设置,使用listeners的配置
#PLAINTEXT://{内网/外网地址}:9092
advertised.listeners=PLAINTEXT://106.14.76.175:9092

#如果要修改zookeeper端口,需要同步修改kafka配置文件
zookeeper.connect=localhost:2181
##########################################

配置zookeeper

#设置zookeeper端口号,需要同步修改kafka配置文件
clientPort=2181

启动kafka和zookeeper

#赋予/bin 下的sh 文件可执行权限 
chmod +x  *.sh

#创建软连接(可不做) 
cd /usr/local/kafka
ln -s kafka_2.11-2.3.0/ kafka

#启动zookeeper   
./bin/zookeeper-server-start.sh -daemon config/zookeeper.properties

#启动kafka   
./bin/kafka-server-start.sh config/server.properties


# [[服务管理]]
#/usr/lib/systemd/system 下创建 kafka.service 和 zookeeper.service 文件
#服务文件配置详情可见 基础工具与设置-建立服务启动文件

#应用配置
systemctl daemon-reload

#设置开机自启
 systemctl enable kafka.service
 systemctl enable zookeeper.service

#启动进程
 systemctl start kafka.service
 systemctl start zookeeper.service

kafka部署测试

进入kafka根目录下的bin/目录中,需要bin/目录下的.sh脚本

#查看topic列表
kafka-topics.sh --list --zookeeper 127.0.0.1:2181

#查看特定topic
kafka-topics.sh --list --zookeeper 127.0.0.1:2181

#创建topic,主题名为test
kafka-topics.sh --create --zookeeper 127.0.0.1:2181 --replication-factor 1 --partitions 1 --topic test

#发送和接收消息需要两个终端连接
#发送消息
kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic test

#接收消息
kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic test --from-beginning

#删除topic
kafka-topics.sh --zookeeper 127.0.0.1:2181 --delete  --topic test

kafka运行日志

kafka运行时间越长,自身运行所产生的与消息无关的日志会越来越多,需要配置log4j.properties文件

vim /usr/local/kafka/kafka_2.11-2.3.0/config/log4j.properties
##########################################
#将以下参数进行修改,将kafkaAppender去除
#log4j.rootLogger=INFO, stdout, kafkaAppender
log4j.rootLogger=INFO, stdout
##########################################
文章作者: Willxup
本文链接:
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Willxup
Linux Kafka Java Linux
喜欢就支持一下吧